@paraswap/dex-lib 4.7.24-inactive-dexs-cleanup.0 → 4.7.25-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.
Files changed (189) hide show
  1. package/build/dex/algebra/config.js +30 -0
  2. package/build/dex/algebra/config.js.map +1 -1
  3. package/build/dex/algebra-integral/config.js +7 -0
  4. package/build/dex/algebra-integral/config.js.map +1 -1
  5. package/build/dex/erc4626/config.js +4 -0
  6. package/build/dex/erc4626/config.js.map +1 -1
  7. package/build/dex/idle-dao/idle-dao.d.ts +1 -0
  8. package/build/dex/idle-dao/idle-dao.js +23 -11
  9. package/build/dex/idle-dao/idle-dao.js.map +1 -1
  10. package/build/dex/index.js +6 -14
  11. package/build/dex/index.js.map +1 -1
  12. package/build/dex/infusion/infusion-stable-pool.d.ts +1 -1
  13. package/build/dex/infusion/infusion-stable-pool.js +1 -1
  14. package/build/dex/infusion/infusion-stable-pool.js.map +1 -1
  15. package/build/dex/infusion/infusion.d.ts +4 -3
  16. package/build/dex/infusion/infusion.js +114 -72
  17. package/build/dex/infusion/infusion.js.map +1 -1
  18. package/build/dex/maker-psm/maker-psm.d.ts +4 -41
  19. package/build/dex/maker-psm/maker-psm.js +40 -143
  20. package/build/dex/maker-psm/maker-psm.js.map +1 -1
  21. package/build/dex/solidly/config.js +10 -64
  22. package/build/dex/solidly/config.js.map +1 -1
  23. package/build/dex/solidly/forks-override/velodromeV2.js +1 -1
  24. package/build/dex/solidly/forks-override/velodromeV2.js.map +1 -1
  25. package/build/dex/solidly/solidly-stable-pool.d.ts +1 -1
  26. package/build/dex/solidly/solidly-stable-pool.js +1 -1
  27. package/build/dex/solidly/solidly-stable-pool.js.map +1 -1
  28. package/build/dex/solidly/solidly.d.ts +6 -4
  29. package/build/dex/solidly/solidly.js +119 -76
  30. package/build/dex/solidly/solidly.js.map +1 -1
  31. package/build/dex/solidly/types.d.ts +3 -0
  32. package/build/dex/trader-joe-v2.1/config.js +2 -0
  33. package/build/dex/trader-joe-v2.1/config.js.map +1 -1
  34. package/build/dex/uniswap-v2/config.js +0 -154
  35. package/build/dex/uniswap-v2/config.js.map +1 -1
  36. package/build/dex/uniswap-v2/constants.js +1 -12
  37. package/build/dex/uniswap-v2/constants.js.map +1 -1
  38. package/build/dex/uniswap-v2/uniswap-v2.d.ts +6 -4
  39. package/build/dex/uniswap-v2/uniswap-v2.js +32 -10
  40. package/build/dex/uniswap-v2/uniswap-v2.js.map +1 -1
  41. package/build/dex/uniswap-v3/forks/pharaoh-v3/pharaoh-v3.d.ts +5 -0
  42. package/build/dex/uniswap-v3/forks/pharaoh-v3/pharaoh-v3.js +11 -0
  43. package/build/dex/uniswap-v3/forks/pharaoh-v3/pharaoh-v3.js.map +1 -1
  44. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-pool.d.ts +1 -4
  45. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-pool.js +0 -30
  46. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-pool.js.map +1 -1
  47. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream.d.ts +7 -0
  48. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream.js +58 -0
  49. package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream.js.map +1 -1
  50. package/build/dex/wombat/config.js +9 -0
  51. package/build/dex/wombat/config.js.map +1 -1
  52. package/build/executor/Executor02BytecodeBuilderMultiRoute.d.ts +101 -0
  53. package/build/executor/Executor02BytecodeBuilderMultiRoute.js +877 -0
  54. package/build/executor/Executor02BytecodeBuilderMultiRoute.js.map +1 -0
  55. package/package.json +1 -1
  56. package/build/abi/PendleRouterStatic.json +0 -19
  57. package/build/abi/apex-defi/ApexDefiFactory.abi.json +0 -1749
  58. package/build/abi/apex-defi/ApexDefiRouter.abi.json +0 -1120
  59. package/build/abi/apex-defi/ApexDefiToken.abi.json +0 -229
  60. package/build/abi/apex-defi/ApexDefiWrapper.abi.json +0 -92
  61. package/build/abi/apex-defi/ApexDefiWrapperFactory.abi.json +0 -1107
  62. package/build/abi/pangolin-v3/PangolinV3StateMulticall.abi.json +0 -796
  63. package/build/abi/pendle/pendle-deployer.abi.json +0 -520
  64. package/build/abi/pendle/pendle-oracle.abi.json +0 -413
  65. package/build/abi/ring-v2/few-wrapped-token.json +0 -587
  66. package/build/abi/ring-v2/ring-v2-factory.json +0 -125
  67. package/build/abi/ring-v2/ring-v2-pool.json +0 -461
  68. package/build/abi/ring-v2/ring-v2-router.json +0 -332
  69. package/build/abi/stabull/stabull-curve.json +0 -738
  70. package/build/abi/stabull/stabull-router.json +0 -76
  71. package/build/abi/uniswap-v4/hooks/SpotDynamicFeeManager.json +0 -26
  72. package/build/abi/uniswap-v4/hooks/SpotHook.json +0 -54
  73. package/build/abi/uniswap-v4/hooks/SpotPolicyManager.json +0 -45
  74. package/build/abi/uniswap-v4/hooks/cabalcoin-hook.abi.json +0 -682
  75. package/build/abi/uniswap-v4/hooks/fee-hook.abi.json +0 -1335
  76. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.d.ts +0 -29
  77. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.js +0 -153
  78. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.js.map +0 -1
  79. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.d.ts +0 -40
  80. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.js +0 -323
  81. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.js.map +0 -1
  82. package/build/dex/aave-pt-to-underlying/config.d.ts +0 -3
  83. package/build/dex/aave-pt-to-underlying/config.js +0 -24
  84. package/build/dex/aave-pt-to-underlying/config.js.map +0 -1
  85. package/build/dex/aave-pt-to-underlying/constants.d.ts +0 -2
  86. package/build/dex/aave-pt-to-underlying/constants.js +0 -6
  87. package/build/dex/aave-pt-to-underlying/constants.js.map +0 -1
  88. package/build/dex/aave-pt-to-underlying/types.d.ts +0 -24
  89. package/build/dex/aave-pt-to-underlying/types.js +0 -3
  90. package/build/dex/aave-pt-to-underlying/types.js.map +0 -1
  91. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.d.ts +0 -39
  92. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.js +0 -244
  93. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.js.map +0 -1
  94. package/build/dex/aave-pt-to-usdc/config.d.ts +0 -3
  95. package/build/dex/aave-pt-to-usdc/config.js +0 -47
  96. package/build/dex/aave-pt-to-usdc/config.js.map +0 -1
  97. package/build/dex/aave-pt-to-usdc/constants.d.ts +0 -2
  98. package/build/dex/aave-pt-to-usdc/constants.js +0 -6
  99. package/build/dex/aave-pt-to-usdc/constants.js.map +0 -1
  100. package/build/dex/aave-pt-to-usdc/types.d.ts +0 -22
  101. package/build/dex/aave-pt-to-usdc/types.js +0 -3
  102. package/build/dex/aave-pt-to-usdc/types.js.map +0 -1
  103. package/build/dex/apex-defi/apex-defi-factory.d.ts +0 -26
  104. package/build/dex/apex-defi/apex-defi-factory.js +0 -53
  105. package/build/dex/apex-defi/apex-defi-factory.js.map +0 -1
  106. package/build/dex/apex-defi/apex-defi-pool.d.ts +0 -55
  107. package/build/dex/apex-defi/apex-defi-pool.js +0 -247
  108. package/build/dex/apex-defi/apex-defi-pool.js.map +0 -1
  109. package/build/dex/apex-defi/apex-defi-wrapper-factory.d.ts +0 -57
  110. package/build/dex/apex-defi/apex-defi-wrapper-factory.js +0 -250
  111. package/build/dex/apex-defi/apex-defi-wrapper-factory.js.map +0 -1
  112. package/build/dex/apex-defi/apex-defi.d.ts +0 -97
  113. package/build/dex/apex-defi/apex-defi.js +0 -1021
  114. package/build/dex/apex-defi/apex-defi.js.map +0 -1
  115. package/build/dex/apex-defi/config.d.ts +0 -4
  116. package/build/dex/apex-defi/config.js +0 -138
  117. package/build/dex/apex-defi/config.js.map +0 -1
  118. package/build/dex/apex-defi/types.d.ts +0 -32
  119. package/build/dex/apex-defi/types.js +0 -3
  120. package/build/dex/apex-defi/types.js.map +0 -1
  121. package/build/dex/apex-defi/utils.d.ts +0 -46
  122. package/build/dex/apex-defi/utils.js +0 -133
  123. package/build/dex/apex-defi/utils.js.map +0 -1
  124. package/build/dex/miro-migrator/miro-migrator-state.d.ts +0 -27
  125. package/build/dex/miro-migrator/miro-migrator-state.js +0 -89
  126. package/build/dex/miro-migrator/miro-migrator-state.js.map +0 -1
  127. package/build/dex/stabull/config.d.ts +0 -3
  128. package/build/dex/stabull/config.js +0 -177
  129. package/build/dex/stabull/config.js.map +0 -1
  130. package/build/dex/stabull/stabull-pool.d.ts +0 -46
  131. package/build/dex/stabull/stabull-pool.js +0 -113
  132. package/build/dex/stabull/stabull-pool.js.map +0 -1
  133. package/build/dex/stabull/stabull.d.ts +0 -55
  134. package/build/dex/stabull/stabull.js +0 -286
  135. package/build/dex/stabull/stabull.js.map +0 -1
  136. package/build/dex/stabull/types.d.ts +0 -21
  137. package/build/dex/stabull/types.js +0 -3
  138. package/build/dex/stabull/types.js.map +0 -1
  139. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.d.ts +0 -4
  140. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.js +0 -56
  141. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.js.map +0 -1
  142. package/build/dex/uniswap-v4/hooks/arena.d.ts +0 -6
  143. package/build/dex/uniswap-v4/hooks/arena.js +0 -10
  144. package/build/dex/uniswap-v4/hooks/arena.js.map +0 -1
  145. package/build/dex/uniswap-v4/hooks/base-fee/base-fee-hook.d.ts +0 -0
  146. package/build/dex/uniswap-v4/hooks/base-fee/base-fee-hook.js +0 -2
  147. package/build/dex/uniswap-v4/hooks/base-fee/base-fee-hook.js.map +0 -1
  148. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.d.ts +0 -7
  149. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.js +0 -28
  150. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.js.map +0 -1
  151. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.d.ts +0 -0
  152. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.js +0 -2
  153. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.js.map +0 -1
  154. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.d.ts +0 -7
  155. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.js +0 -28
  156. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.js.map +0 -1
  157. package/build/dex/uniswap-v4/hooks/fee-hook/types.d.ts +0 -0
  158. package/build/dex/uniswap-v4/hooks/fee-hook/types.js +0 -2
  159. package/build/dex/uniswap-v4/hooks/fee-hook/types.js.map +0 -1
  160. package/build/dex/uniswap-v4/hooks/index.d.ts +0 -1
  161. package/build/dex/uniswap-v4/hooks/index.js +0 -18
  162. package/build/dex/uniswap-v4/hooks/index.js.map +0 -1
  163. package/build/dex/uniswap-v4/hooks/spot.d.ts +0 -15
  164. package/build/dex/uniswap-v4/hooks/spot.js +0 -109
  165. package/build/dex/uniswap-v4/hooks/spot.js.map +0 -1
  166. package/build/dex/uniswap-v4/hooks/template.d.ts +0 -150
  167. package/build/dex/uniswap-v4/hooks/template.js +0 -104
  168. package/build/dex/uniswap-v4/hooks/template.js.map +0 -1
  169. package/build/dex/usdc-transmuter/usdc-transmuter-pool.d.ts +0 -26
  170. package/build/dex/usdc-transmuter/usdc-transmuter-pool.js +0 -75
  171. package/build/dex/usdc-transmuter/usdc-transmuter-pool.js.map +0 -1
  172. package/build/dex/usual/usual-usdc-usdc.d.ts +0 -17
  173. package/build/dex/usual/usual-usdc-usdc.js +0 -59
  174. package/build/dex/usual/usual-usdc-usdc.js.map +0 -1
  175. package/build/dex/yo/config.d.ts +0 -3
  176. package/build/dex/yo/config.js +0 -21
  177. package/build/dex/yo/config.js.map +0 -1
  178. package/build/dex/yo/types.d.ts +0 -13
  179. package/build/dex/yo/types.js +0 -3
  180. package/build/dex/yo/types.js.map +0 -1
  181. package/build/dex/yo/yo-pool.d.ts +0 -13
  182. package/build/dex/yo/yo-pool.js +0 -26
  183. package/build/dex/yo/yo-pool.js.map +0 -1
  184. package/build/dex/yo/yo.d.ts +0 -39
  185. package/build/dex/yo/yo.js +0 -248
  186. package/build/dex/yo/yo.js.map +0 -1
  187. package/build/implementations/api-paraswap-sdk.d.ts +0 -25
  188. package/build/implementations/api-paraswap-sdk.js +0 -102
  189. package/build/implementations/api-paraswap-sdk.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"maker-psm.js","sourceRoot":"","sources":["../../../src/dex/maker-psm/maker-psm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"maker-psm.js","sourceRoot":"","sources":["../../../src/dex/maker-psm/maker-psm.ts"],"names":[],"mappings":"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"}
@@ -1,32 +1,12 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.Adapters = exports.SolidlyConfig = void 0;
4
7
  const constants_1 = require("../../constants");
8
+ const aerodrome_pool_factory_json_1 = __importDefault(require("../../abi/aerodrome/aerodrome-pool-factory.json"));
5
9
  exports.SolidlyConfig = {
6
- SolidlyV2: {
7
- [constants_1.Network.MAINNET]: {
8
- factoryAddress: '0x777de5Fe8117cAAA7B44f396E93a401Cf5c9D4d6',
9
- router: '0x5b39e7A1C706464F5B3956b21CD22a43F0dB0eAC',
10
- subgraphURL: '4GX8RE9TzEWormbkayeGj4NQmmhYE46izVVUvXv8WPDh',
11
- initCode: '0x413d36e4ab9e83cf39b8064a3b5c98253a9e46a6cf02c8efd185314c866d656b',
12
- stableFee: 200, // This is not fixed
13
- volatileFee: 2000,
14
- feeCode: 0,
15
- poolGasCost: 220 * 1000, // https://dashboard.tenderly.co/paraswap/paraswap/tx/mainnet/0x80f01d841ac01cfaedc93ceaadc88fc799ee1539841c2ac19cfccfdcfb605d70/gas-usage
16
- feeFactor: 1e6,
17
- },
18
- },
19
- Dystopia: {
20
- [constants_1.Network.POLYGON]: {
21
- subgraphURL: '89e9ZAHs7mJvpckEaSmpTtRXUsYcc1mesE7Czp1Hrqxa',
22
- factoryAddress: '0x1d21Db6cde1b18c7E47B0F7F42f4b3F68b9beeC9',
23
- router: '0xc8DB3501281c192fFE9697A1b905b161ca0cd64d',
24
- initCode: '0x009bce6d7eb00d3d075e5bd9851068137f44bba159f1cde806a268e20baaf2e8',
25
- // Fixed Fees, same for volatile and stable pools
26
- feeCode: 5,
27
- poolGasCost: 180 * 1000,
28
- },
29
- },
30
10
  Velodrome: {
31
11
  [constants_1.Network.OPTIMISM]: {
32
12
  subgraphURL: '2bam2XEb91cFqABFPSKj3RiSjpop9HvDt1MnYq5cDX5E',
@@ -59,6 +39,8 @@ exports.SolidlyConfig = {
59
39
  initCode: '0x1a8f01f7eab324003d9388f229ea17991eee9c9d14586f429799f3656790eba0',
60
40
  poolGasCost: 180 * 1000,
61
41
  feeCode: 0,
42
+ factoryAbi: aerodrome_pool_factory_json_1.default,
43
+ getPairMethodName: 'getPool',
62
44
  },
63
45
  },
64
46
  Thena: {
@@ -73,16 +55,6 @@ exports.SolidlyConfig = {
73
55
  feeCode: 1,
74
56
  },
75
57
  },
76
- Chronos: {
77
- [constants_1.Network.ARBITRUM]: {
78
- subgraphURL: 'BCCAQ3VvF4jLqCpr966QRRnAK8xpvv4MFJYHYCTv224r',
79
- factoryAddress: '0xce9240869391928253ed9cc9bcb8cb98cb5b0722',
80
- router: '0xb2634B3CBc1E401AB3C2743DB44d459C5c9aA662',
81
- initCode: '0x1840ae455256f509042de907fe0623f2e5e0ad44751ef974c4c37c1e516b7644',
82
- poolGasCost: 180 * 1000,
83
- feeCode: 0,
84
- },
85
- },
86
58
  Ramses: {
87
59
  [constants_1.Network.ARBITRUM]: {
88
60
  subgraphURL: 'GdqerXoyuwHLq4DfTHomHJURu193L83ZeiynB4wbDfbW',
@@ -116,26 +88,6 @@ exports.SolidlyConfig = {
116
88
  poolGasCost: 180 * 1000,
117
89
  },
118
90
  },
119
- Velocimeter: {
120
- [constants_1.Network.BASE]: {
121
- // RPC pool tracker is used
122
- factoryAddress: '0xe21Aac7F113Bd5DC2389e4d8a8db854a87fD6951',
123
- router: '0xDCf4EE5B700e2a5Fec458e06B763A4a3E3004494',
124
- initCode: '0xac4013aa7118234c1dd1f9cc4cdd3933d5a426224bc691c1bde3d8930a7e6151', // PairFactory.pairCodeHash
125
- feeCode: 0, // dynamic fees
126
- poolGasCost: 180 * 1000, // just same as other forks
127
- },
128
- },
129
- Usdfi: {
130
- [constants_1.Network.BSC]: {
131
- subgraphURL: 'EvFsjvtmZpMJ4Y5RdJCx9TD5AkQjXCKpWaTYUvZ2DpWM',
132
- factoryAddress: '0xB3863573d9f25e6a84895d4685a408db7a488416',
133
- router: '0xc2b5a8082D2E1867A9CBBF41b625E3ae9dF81f8b',
134
- initCode: '0x1d770cc32abcf060a45b0de3f0afbd8594effe9f6d836f93d19c05d76b4b4dfa',
135
- poolGasCost: 180 * 1000,
136
- feeCode: 0, // dynamic fees
137
- },
138
- },
139
91
  Blackhole: {
140
92
  [constants_1.Network.AVALANCHE]: {
141
93
  // RPC pool tracker is used
@@ -148,26 +100,20 @@ exports.SolidlyConfig = {
148
100
  },
149
101
  };
150
102
  exports.Adapters = {
151
- [constants_1.Network.POLYGON]: {
152
- [constants_1.SwapSide.SELL]: [{ name: 'PolygonAdapter02', index: 3 }], // dystopia
153
- },
154
103
  [constants_1.Network.OPTIMISM]: {
155
104
  [constants_1.SwapSide.SELL]: [{ name: 'OptimismAdapter01', index: 8 }], // velodrome
156
105
  },
157
106
  [constants_1.Network.BSC]: {
158
- [constants_1.SwapSide.SELL]: [{ name: 'BscAdapter02', index: 1 }], // thena + cone, usdFi
159
- },
160
- [constants_1.Network.MAINNET]: {
161
- [constants_1.SwapSide.SELL]: [{ name: 'Adapter04', index: 1 }], // solidly
107
+ [constants_1.SwapSide.SELL]: [{ name: 'BscAdapter02', index: 1 }], // thena
162
108
  },
163
109
  [constants_1.Network.AVALANCHE]: {
164
- [constants_1.SwapSide.SELL]: [{ name: 'AvalancheAdapter02', index: 3 }], // solisnek (deprecated) + blackhole
110
+ [constants_1.SwapSide.SELL]: [{ name: 'AvalancheAdapter02', index: 3 }], // blackhole
165
111
  },
166
112
  [constants_1.Network.ARBITRUM]: {
167
- [constants_1.SwapSide.SELL]: [{ name: 'ArbitrumAdapter02', index: 1 }], // chronos, ramses
113
+ [constants_1.SwapSide.SELL]: [{ name: 'ArbitrumAdapter02', index: 1 }], // ramses
168
114
  },
169
115
  [constants_1.Network.BASE]: {
170
- [constants_1.SwapSide.SELL]: [{ name: 'BaseAdapter01', index: 3 }], // aerodrome, equalizer, velocimeter
116
+ [constants_1.SwapSide.SELL]: [{ name: 'BaseAdapter01', index: 3 }], // aerodrome, equalizer
171
117
  },
172
118
  };
173
119
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/solidly/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/solidly/config.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@ class VelodromeV2 extends rpc_pool_tracker_1.SolidlyRpcPoolTracker {
41
41
  network;
42
42
  dexHelper;
43
43
  pools = [];
44
- static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(lodash_1.default.pick(config_1.SolidlyConfig, ['VelodromeV2']));
44
+ static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(lodash_1.default.pick(config_1.SolidlyConfig, ['VelodromeV2', 'Aerodrome']));
45
45
  constructor(network, dexKey, dexHelper) {
46
46
  super(network, dexKey, dexHelper, true);
47
47
  this.network = network;
@@ -1 +1 @@
1
- {"version":3,"file":"velodromeV2.js","sourceRoot":"","sources":["../../../../src/dex/solidly/forks-override/velodromeV2.ts"],"names":[],"mappings":";;;;;;AACA,0CAAuD;AACvD,sCAA0C;AAC1C,oDAAuB;AAGvB,4CAA+C;AAE/C,oDAA6E;AAE7E,0DAA4D;AAE5D,MAAM,qBAAqB,GAAG;IAC5B;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAChE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;YAC1D,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE;SACxD;QACD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACF,CAAC;AAEF,MAAM,uBAAuB,GAAG,IAAI,eAAS,CAAC,qBAAqB,CAAC,CAAC;AAUrE,MAAa,WAAY,SAAQ,wCAAqB;IAOxC;IAEA;IARL,KAAK,GAAW,EAAE,CAAC;IAEnB,MAAM,CAAC,kBAAkB,GAC9B,IAAA,6BAAqB,EAAC,gBAAC,CAAC,IAAI,CAAC,sBAAa,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAEhE,YACY,OAAgB,EAC1B,MAAc,EACJ,SAAqB;QAE/B,KAAK,CACH,OAAO,EACP,MAAM,EACN,SAAS,EACT,IAAI,CACL,CAAC;QATQ,YAAO,GAAP,OAAO,CAAS;QAEhB,cAAS,GAAT,SAAS,CAAY;IAQjC,CAAC;IAES,oBAAoB,CAAC,IAAiB;QAC9C,MAAM,SAAS,GAAG;YAChB,MAAM,EAAE,IAAI,CAAC,cAAc;YAC3B,QAAQ,EAAE,uBAAuB,CAAC,kBAAkB,CAAC,QAAQ,EAAE;gBAC7D,IAAI,CAAC,QAAQ;gBACb,IAAI,CAAC,MAAM;aACZ,CAAC;SACH,CAAC;QACF,MAAM,WAAW,GAAG,CAAC,MAAa,EAAE,EAAE,CACpC,QAAQ,CACN,uBAAuB;aACpB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aACzC,QAAQ,EAAE,CACd,CAAC;QAEJ,OAAO;YACL,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;IAES,mBAAmB;QAC3B,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,cAAc;YAC3B,QAAQ,EAAE,uBAAuB,CAAC,kBAAkB,CAClD,gBAAgB,EAChB,EAAE,CACH;YACD,cAAc,EAAE,gCAAqB;SACtC,CAAC;IACJ,CAAC;IAES,eAAe,CAAC,KAAa;QACrC,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,cAAc;YAC3B,QAAQ,EAAE,uBAAuB,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;YACzE,cAAc,EAAE,wBAAa;SAC9B,CAAC;IACJ,CAAC;;AAzDH,kCA0DC"}
1
+ {"version":3,"file":"velodromeV2.js","sourceRoot":"","sources":["../../../../src/dex/solidly/forks-override/velodromeV2.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import { SolidlyPoolOrderedParams } from './types';
2
2
  export declare class SolidlyStablePool {
3
- static getSellPrice(priceParams: SolidlyPoolOrderedParams, srcAmount: bigint, feeFactor: number): Promise<bigint>;
3
+ static getSellPrice(priceParams: SolidlyPoolOrderedParams, srcAmount: bigint, feeFactor: number): bigint;
4
4
  }
@@ -51,7 +51,7 @@ function _closeTo(a, b, target) {
51
51
  return false;
52
52
  }
53
53
  class SolidlyStablePool {
54
- static async getSellPrice(priceParams, srcAmount, feeFactor) {
54
+ static getSellPrice(priceParams, srcAmount, feeFactor) {
55
55
  const { reservesIn, reservesOut, decimalsIn, decimalsOut, fee } = priceParams;
56
56
  // FIXME: some dexes use uint112 others use uint256
57
57
  if (BigInt(reservesIn) + srcAmount > uniswap_v2_1.RESERVE_LIMIT) {
@@ -1 +1 @@
1
- {"version":3,"file":"solidly-stable-pool.js","sourceRoot":"","sources":["../../../src/dex/solidly/solidly-stable-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solidly-stable-pool.js","sourceRoot":"","sources":["../../../src/dex/solidly/solidly-stable-pool.ts"],"names":[],"mappings":";;;AAAA,6DAAiD;AACjD,yDAAyD;AAGzD,MAAM,GAAG,GAAG,0BAAO,CAAC,EAAE,CAAC,CAAC;AAExB,SAAS,EAAE,CACT,CAAS,EACT,CAAS,EACT,SAAiB,EACjB,SAAiB;IAEjB,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC;IACjC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC;IACjC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;IAC3B,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;IAC7C,eAAe;IACf,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;AACzB,CAAC;AAED,SAAS,EAAE,CAAC,EAAU,EAAE,CAAS;IAC/B,OAAO,CACL,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG;QAC1C,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAC7C,CAAC;AACJ,CAAC;AAED,SAAS,EAAE,CAAC,EAAU,EAAE,CAAS;IAC/B,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;AAC5E,CAAC;AAED,SAAS,KAAK,CAAC,EAAU,EAAE,EAAU,EAAE,CAAS;IAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YACX,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACxC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACb,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACxC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACb,CAAC;QACD,IAAI,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;YAC3B,MAAM;QACR,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS,EAAE,MAAc;IACpD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACV,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAa,iBAAiB;IAC5B,MAAM,CAAC,YAAY,CACjB,WAAqC,EACrC,SAAiB,EACjB,SAAiB;QAEjB,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,GAC7D,WAAW,CAAC;QAEd,mDAAmD;QACnD,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,0BAAa,EAAE,CAAC;YACnD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAE3E,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC;QAEhD,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,WAAW,CAAC;QACnD,MAAM,QAAQ,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC;QACrD,MAAM,YAAY,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,WAAW,CAAC;QACpD,MAAM,CAAC,GAAG,QAAQ,GAAG,KAAK,CAAC,YAAY,GAAG,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;QAClE,OAAO,CAAC,CAAC,GAAG,YAAY,CAAC,GAAG,GAAG,CAAC;IAClC,CAAC;CACF;AA5BD,8CA4BC"}
@@ -13,6 +13,7 @@ export declare class Solidly extends UniswapV2 {
13
13
  };
14
14
  stableFee?: number;
15
15
  volatileFee?: number;
16
+ getPairMethodName: string;
16
17
  readonly isFeeOnTransferSupported: boolean;
17
18
  readonly SRC_TOKEN_DEX_TRANSFERS = 1;
18
19
  readonly DEST_TOKEN_DEX_TRANSFERS = 1;
@@ -21,15 +22,16 @@ export declare class Solidly extends UniswapV2 {
21
22
  networks: Network[];
22
23
  }[];
23
24
  constructor(network: Network, dexKey: string, dexHelper: IDexHelper, isDynamicFees?: boolean, factoryAddress?: Address, subgraphURL?: string, initCode?: string, feeCode?: number, poolGasCost?: number, routerAddress?: Address);
24
- findSolidlyPair(from: Token, to: Token, stable: boolean): Promise<SolidlyPair | null>;
25
+ findSolidlyPairs(from: Token, to: Token): Promise<SolidlyPair[]>;
25
26
  batchCatchUpPairs(pairs: [Token, Token][], blockNumber: number): Promise<void>;
26
27
  getManyPoolReserves(pairs: SolidlyPair[], blockNumber: number): Promise<PoolState[]>;
27
- getSellPrice(priceParams: SolidlyPoolOrderedParams, srcAmount: bigint): Promise<bigint>;
28
- getBuyPrice(priceParams: SolidlyPoolOrderedParams, srcAmount: bigint): Promise<bigint>;
28
+ getSellPrice(priceParams: SolidlyPoolOrderedParams, srcAmount: bigint): bigint;
29
+ getBuyPrice(priceParams: SolidlyPoolOrderedParams, srcAmount: bigint): bigint;
29
30
  getPricesVolume(_from: Token, _to: Token, amounts: bigint[], side: SwapSide, blockNumber: number, limitPools?: string[], transferFees?: TransferFeeParams): Promise<ExchangePrices<UniswapV2Data> | null>;
30
31
  getTopPoolsForToken(tokenAddress: Address, count: number): Promise<PoolLiquidity[]>;
31
- getSolidlyPairOrderedParams(from: Token, to: Token, blockNumber: number, stable: boolean, tokenDexTransferFee: number): Promise<SolidlyPoolOrderedParams | null>;
32
+ getSolidlyPairOrderedParams(from: Token, to: Token, blockNumber: number, tokenDexTransferFee: number): Promise<Array<SolidlyPoolOrderedParams | null>>;
32
33
  getPoolIdentifiers(_from: Token, _to: Token, side: SwapSide, blockNumber: number): Promise<string[]>;
34
+ protected getPoolIdentifier(token0: string, token1: string, stable?: boolean): string;
33
35
  poolPostfix(stable: boolean): "S" | "U";
34
36
  getSimpleParam(src: Address, dest: Address, srcAmount: NumberAsString, destAmount: NumberAsString, data: UniswapData, side: SwapSide): Promise<SimpleExchangeParam>;
35
37
  getAdapterParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, toAmount: NumberAsString, // required for buy case
@@ -20,6 +20,8 @@ const token_transfer_fee_1 = require("../../lib/token-transfer-fee");
20
20
  const utils_2 = require("ethers/lib/utils");
21
21
  const ethers_1 = require("ethers");
22
22
  const types_1 = require("../../executor/types");
23
+ const decoders_1 = require("../../lib/decoders");
24
+ const SOLIDLY_RECHECK_PAIR_EXISTENCE_AFTER_MS = 3 * 24 * 60 * 60 * 1000; // 3 days
23
25
  const erc20Iface = new abi_1.Interface(erc20_json_1.default);
24
26
  const solidlyPairIface = new abi_1.Interface(SolidlyPair_json_1.default);
25
27
  const defaultAbiCoder = new abi_1.AbiCoder();
@@ -36,6 +38,7 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
36
38
  pairs = {};
37
39
  stableFee;
38
40
  volatileFee;
41
+ getPairMethodName;
39
42
  isFeeOnTransferSupported = true;
40
43
  SRC_TOKEN_DEX_TRANSFERS = 1;
41
44
  DEST_TOKEN_DEX_TRANSFERS = 1;
@@ -70,7 +73,9 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
70
73
  this.dexHelper = dexHelper;
71
74
  this.stableFee = config_1.SolidlyConfig[dexKey][network].stableFee;
72
75
  this.volatileFee = config_1.SolidlyConfig[dexKey][network].volatileFee;
73
- this.factory = new dexHelper.web3Provider.eth.Contract(SolidlyFactory_json_1.default, factoryAddress !== undefined
76
+ this.getPairMethodName =
77
+ config_1.SolidlyConfig[dexKey][network].getPairMethodName ?? 'getPair';
78
+ this.factory = new dexHelper.web3Provider.eth.Contract(config_1.SolidlyConfig[dexKey][network].factoryAbi ?? SolidlyFactory_json_1.default, factoryAddress !== undefined
74
79
  ? factoryAddress
75
80
  : config_1.SolidlyConfig[dexKey][network].factoryAddress);
76
81
  this.router =
@@ -79,47 +84,84 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
79
84
  : config_1.SolidlyConfig[dexKey][network].router || '';
80
85
  this.feeFactor = config_1.SolidlyConfig[dexKey][network].feeFactor || this.feeFactor;
81
86
  }
82
- async findSolidlyPair(from, to, stable) {
83
- if (from.address.toLowerCase() === to.address.toLowerCase())
84
- return null;
87
+ async findSolidlyPairs(from, to) {
85
88
  const [token0, token1] = from.address.toLowerCase() < to.address.toLowerCase()
86
89
  ? [from, to]
87
90
  : [to, from];
88
- const typePostfix = this.poolPostfix(stable);
89
- const key = `${token0.address.toLowerCase()}-${token1.address.toLowerCase()}-${typePostfix}`;
90
- let pair = this.pairs[key];
91
- if (pair)
92
- return pair;
93
- let exchange = await this.factory.methods
94
- // Solidly has additional boolean parameter "StablePool"
95
- // At first we look for uniswap-like volatile pool
96
- .getPair(token0.address, token1.address, stable)
97
- .call();
98
- if (exchange === constants_1.NULL_ADDRESS) {
99
- pair = { token0, token1, stable };
100
- }
101
- else {
102
- pair = { token0, token1, exchange, stable };
103
- }
104
- this.pairs[key] = pair;
105
- return pair;
91
+ const stableValues = [false, true];
92
+ const pairKeys = stableValues.map(stable => this.getPoolIdentifier(token0.address, token1.address, stable));
93
+ // get cached pairs
94
+ const pairs = pairKeys.map(key => this.pairs[key]);
95
+ if (pairs.every(Boolean))
96
+ return pairs;
97
+ const cachedPairsRaw = await this.dexHelper.cache.hmget(this.pairsHashCacheKey, pairKeys);
98
+ const cachedPairs = cachedPairsRaw.map(p => p ? JSON.parse(p) : null);
99
+ const shouldFetchFromRpc = cachedPairs.some((cachedPair, i) => {
100
+ if (cachedPair &&
101
+ (cachedPair.exchange ||
102
+ (cachedPair.checkExistenceAfter &&
103
+ cachedPair.checkExistenceAfter > Date.now()))) {
104
+ // prevent wiping initialized pool
105
+ if (!pairs[i]?.pool) {
106
+ pairs[i] = cachedPair;
107
+ this.pairs[pairKeys[i]] = cachedPair;
108
+ }
109
+ return false;
110
+ }
111
+ return true;
112
+ });
113
+ if (!shouldFetchFromRpc)
114
+ return pairs;
115
+ const calldata = stableValues.map(stable => {
116
+ return {
117
+ target: this.factoryAddress,
118
+ callData: this.factory.methods[this.getPairMethodName](token0.address, token1.address, stable).encodeABI(),
119
+ };
120
+ });
121
+ const data = await this.dexHelper.multiContract.methods.aggregate(calldata).call({});
122
+ const exchanges = data.returnData.map(decoders_1.addressDecode);
123
+ // cache and return
124
+ stableValues.forEach((stable, i) => {
125
+ // prevent wiping initialized pool
126
+ if (pairs[i]?.pool) {
127
+ return;
128
+ }
129
+ const exchange = exchanges[i];
130
+ if (exchange === constants_1.NULL_ADDRESS) {
131
+ pairs[i] = {
132
+ token0,
133
+ token1,
134
+ stable,
135
+ checkExistenceAfter: Date.now() + SOLIDLY_RECHECK_PAIR_EXISTENCE_AFTER_MS,
136
+ };
137
+ }
138
+ else {
139
+ pairs[i] = { token0, token1, stable, exchange };
140
+ }
141
+ this.pairs[pairKeys[i]] = pairs[i];
142
+ });
143
+ const pairsToCache = pairKeys
144
+ .map((key, i) => [key, pairs[i]])
145
+ .filter(([_, pair]) => !pair.pool);
146
+ await this.dexHelper.cache.hmset(this.pairsHashCacheKey, Object.fromEntries(pairsToCache.map(([key, pair]) => [key, JSON.stringify(pair)])));
147
+ return pairs;
106
148
  }
107
149
  async batchCatchUpPairs(pairs, blockNumber) {
108
150
  if (!blockNumber)
109
151
  return;
110
152
  const pairsToFetch = [];
111
153
  for (const _pair of pairs) {
112
- for (const stable of [false, true]) {
113
- const pair = await this.findSolidlyPair(_pair[0], _pair[1], stable);
154
+ const foundPairs = await this.findSolidlyPairs(_pair[0], _pair[1]);
155
+ foundPairs.forEach(pair => {
114
156
  if (!(pair && pair.exchange))
115
- continue;
157
+ return;
116
158
  if (!pair.pool) {
117
159
  pairsToFetch.push(pair);
118
160
  }
119
161
  else if (!pair.pool.getState(blockNumber)) {
120
162
  pairsToFetch.push(pair);
121
163
  }
122
- }
164
+ });
123
165
  }
124
166
  if (!pairsToFetch.length)
125
167
  return;
@@ -182,12 +224,12 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
182
224
  return [];
183
225
  }
184
226
  }
185
- async getSellPrice(priceParams, srcAmount) {
227
+ getSellPrice(priceParams, srcAmount) {
186
228
  return priceParams.stable
187
229
  ? solidly_stable_pool_1.SolidlyStablePool.getSellPrice(priceParams, srcAmount, this.feeFactor)
188
230
  : uniswap_v2_constant_product_pool_1.Uniswapv2ConstantProductPool.getSellPrice(priceParams, srcAmount, this.feeFactor);
189
231
  }
190
- async getBuyPrice(priceParams, srcAmount) {
232
+ getBuyPrice(priceParams, srcAmount) {
191
233
  if (priceParams.stable)
192
234
  throw new Error(`Buy not supported`);
193
235
  return uniswap_v2_constant_product_pool_1.Uniswapv2ConstantProductPool.getBuyPrice(priceParams, srcAmount, this.feeFactor);
@@ -215,7 +257,11 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
215
257
  .sort((a, b) => (a > b ? 1 : -1))
216
258
  .join('_');
217
259
  await this.batchCatchUpPairs([[from, to]], blockNumber);
218
- const resultPromises = [false, true].map(async (stable) => {
260
+ const pairsParams = await this.getSolidlyPairOrderedParams(from, to, blockNumber, transferFees.srcDexFee);
261
+ const resultPools = pairsParams.map(pairParam => {
262
+ if (!pairParam)
263
+ return null;
264
+ const stable = pairParam.stable;
219
265
  // We don't support fee on transfer for stable pools yet
220
266
  if (stable &&
221
267
  (transferFees.srcFee !== 0 || transferFees.srcDexFee !== 0)) {
@@ -225,9 +271,6 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
225
271
  if (limitPools && limitPools.every(p => p !== poolIdentifier))
226
272
  return null;
227
273
  const isSell = side === core_1.SwapSide.SELL;
228
- const pairParam = await this.getSolidlyPairOrderedParams(from, to, blockNumber, stable, transferFees.srcDexFee);
229
- if (!pairParam)
230
- return null;
231
274
  const unitAmount = (0, utils_1.getBigIntPow)(
232
275
  // @ts-expect-error Buy side is not implemented yet
233
276
  side === core_1.SwapSide.BUY ? to.decimals : from.decimals);
@@ -235,17 +278,13 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
235
278
  const unit =
236
279
  // @ts-expect-error Buy side is not implemented yet
237
280
  side === core_1.SwapSide.BUY
238
- ? await this.getBuyPricePath(unitVolumeWithFee, [pairParam])
239
- : await this.getSellPricePath(unitVolumeWithFee, [pairParam]);
281
+ ? this.getBuyPricePath(unitVolumeWithFee, [pairParam])
282
+ : this.getSellPricePath(unitVolumeWithFee, [pairParam]);
240
283
  const prices =
241
284
  // @ts-expect-error Buy side is not implemented yet
242
285
  side === core_1.SwapSide.BUY
243
- ? await Promise.all(amountsWithFee.map(amount => amount === 0n
244
- ? 0n
245
- : this.getBuyPricePath(amount, [pairParam])))
246
- : await Promise.all(amountsWithFee.map(amount => amount === 0n
247
- ? 0n
248
- : this.getSellPricePath(amount, [pairParam])));
286
+ ? amountsWithFee.map(amount => amount === 0n ? 0n : this.getBuyPricePath(amount, [pairParam]))
287
+ : amountsWithFee.map(amount => amount === 0n ? 0n : this.getSellPricePath(amount, [pairParam]));
249
288
  const [unitOutWithFee, ...outputsWithFee] = (0, token_transfer_fee_1.applyTransferFee)([unit, ...prices], side,
250
289
  // This part is confusing, because we treat differently SELL and BUY fees
251
290
  // If Buy, we should apply transfer fee on srcToken on top of dexFee applied earlier
@@ -276,7 +315,6 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
276
315
  poolAddresses: [pairParam.exchange],
277
316
  };
278
317
  });
279
- const resultPools = (await Promise.all(resultPromises));
280
318
  const resultPoolsFiltered = resultPools.filter(item => !!item); // filter null elements
281
319
  return resultPoolsFiltered.length > 0 ? resultPoolsFiltered : null;
282
320
  }
@@ -362,44 +400,45 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
362
400
  }));
363
401
  return lodash_1.default.slice(lodash_1.default.sortBy(lodash_1.default.concat(pools0, pools1), [pool => -1 * pool.liquidityUSD]), 0, count);
364
402
  }
365
- // Same as at uniswap-v2-pool.json, but extended with decimals and stable
366
- async getSolidlyPairOrderedParams(from, to, blockNumber, stable, tokenDexTransferFee) {
367
- const pair = await this.findSolidlyPair(from, to, stable);
368
- if (!(pair && pair.pool && pair.exchange))
369
- return null;
370
- const pairState = pair.pool.getState(blockNumber);
371
- if (!pairState) {
372
- this.logger.error(`Error_orderPairParams expected reserves, got none (maybe the pool doesn't exist) ${from.symbol || from.address} ${to.symbol || to.address}`);
373
- return null;
374
- }
375
- const fee = (pairState.feeCode + tokenDexTransferFee).toString();
376
- const pairReversed = pair.token1.address.toLowerCase() === from.address.toLowerCase();
377
- if (pairReversed) {
403
+ async getSolidlyPairOrderedParams(from, to, blockNumber, tokenDexTransferFee) {
404
+ const pairs = await this.findSolidlyPairs(from, to);
405
+ return pairs.map(pair => {
406
+ if (!(pair && pair.pool && pair.exchange))
407
+ return null;
408
+ const pairState = pair.pool.getState(blockNumber);
409
+ if (!pairState) {
410
+ this.logger.error(`Error_orderPairParams expected reserves, got none (maybe the pool doesn't exist) ${from.symbol || from.address} ${to.symbol || to.address}`);
411
+ return null;
412
+ }
413
+ const fee = (pairState.feeCode + tokenDexTransferFee).toString();
414
+ const pairReversed = pair.token1.address.toLowerCase() === from.address.toLowerCase();
415
+ if (pairReversed) {
416
+ return {
417
+ tokenIn: from.address,
418
+ tokenOut: to.address,
419
+ reservesIn: pairState.reserves1,
420
+ reservesOut: pairState.reserves0,
421
+ fee,
422
+ direction: false,
423
+ exchange: pair.exchange,
424
+ decimalsIn: from.decimals,
425
+ decimalsOut: to.decimals,
426
+ stable: pair.stable,
427
+ };
428
+ }
378
429
  return {
379
430
  tokenIn: from.address,
380
431
  tokenOut: to.address,
381
- reservesIn: pairState.reserves1,
382
- reservesOut: pairState.reserves0,
432
+ reservesIn: pairState.reserves0,
433
+ reservesOut: pairState.reserves1,
383
434
  fee,
384
- direction: false,
435
+ direction: true,
385
436
  exchange: pair.exchange,
386
437
  decimalsIn: from.decimals,
387
438
  decimalsOut: to.decimals,
388
- stable,
439
+ stable: pair.stable,
389
440
  };
390
- }
391
- return {
392
- tokenIn: from.address,
393
- tokenOut: to.address,
394
- reservesIn: pairState.reserves0,
395
- reservesOut: pairState.reserves1,
396
- fee,
397
- direction: true,
398
- exchange: pair.exchange,
399
- decimalsIn: from.decimals,
400
- decimalsOut: to.decimals,
401
- stable,
402
- };
441
+ });
403
442
  }
404
443
  async getPoolIdentifiers(_from, _to, side, blockNumber) {
405
444
  if (side === core_1.SwapSide.BUY)
@@ -409,13 +448,17 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
409
448
  if (from.address.toLowerCase() === to.address.toLowerCase()) {
410
449
  return [];
411
450
  }
412
- const tokenAddress = [from.address.toLowerCase(), to.address.toLowerCase()]
451
+ return [
452
+ this.getPoolIdentifier(from.address, to.address, false),
453
+ this.getPoolIdentifier(from.address, to.address, true),
454
+ ];
455
+ }
456
+ getPoolIdentifier(token0, token1, stable = false) {
457
+ const tokenAddress = [token0.toLowerCase(), token1.toLowerCase()]
413
458
  .sort((a, b) => (a > b ? 1 : -1))
414
459
  .join('_');
415
460
  const poolIdentifier = `${this.dexKey}_${tokenAddress}`;
416
- const poolIdentifierUniswap = poolIdentifier + this.poolPostfix(false);
417
- const poolIdentifierStable = poolIdentifier + this.poolPostfix(true);
418
- return [poolIdentifierUniswap, poolIdentifierStable];
461
+ return poolIdentifier + this.poolPostfix(stable);
419
462
  }
420
463
  poolPostfix(stable) {
421
464
  return stable ? 'S' : 'U';
@@ -448,7 +491,7 @@ class Solidly extends uniswap_v2_1.UniswapV2 {
448
491
  if (side === core_1.SwapSide.BUY)
449
492
  throw new Error(`Buy not supported`);
450
493
  let exchangeDataTypes = ['bytes4', 'bytes32'];
451
- const isStable = data.pools.some(pool => !!pool.stable);
494
+ const isStable = data.pools.some(pool => pool.stable);
452
495
  const isStablePoolAndPoolCount = isStable
453
496
  ? ethers_1.BigNumber.from(1)
454
497
  .shl(255)