@paraswap/dex-lib 4.1.24 → 4.1.25-executor02-flag-logic.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 (373) hide show
  1. package/build/dex/uniswap-v4/constants.d.ts +1 -0
  2. package/build/dex/uniswap-v4/constants.js +3 -2
  3. package/build/dex/uniswap-v4/constants.js.map +1 -1
  4. package/build/dex/uniswap-v4/encoder.d.ts +1 -1
  5. package/build/dex/uniswap-v4/encoder.js +3 -2
  6. package/build/dex/uniswap-v4/encoder.js.map +1 -1
  7. package/build/dex/uniswap-v4/subgraph.js +27 -12
  8. package/build/dex/uniswap-v4/subgraph.js.map +1 -1
  9. package/build/dex/uniswap-v4/types.d.ts +4 -0
  10. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.d.ts +4 -3
  11. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.js +47 -33
  12. package/build/dex/uniswap-v4/uniswap-v4-pool-manager.js.map +1 -1
  13. package/build/dex/uniswap-v4/uniswap-v4-pool.d.ts +2 -4
  14. package/build/dex/uniswap-v4/uniswap-v4-pool.js +1 -1
  15. package/build/dex/uniswap-v4/uniswap-v4-pool.js.map +1 -1
  16. package/build/dex/uniswap-v4/uniswap-v4.d.ts +1 -0
  17. package/build/dex/uniswap-v4/uniswap-v4.js +33 -19
  18. package/build/dex/uniswap-v4/uniswap-v4.js.map +1 -1
  19. package/build/executor/Executor02BytecodeBuilder.js +10 -9
  20. package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
  21. package/package.json +1 -1
  22. package/build/abi/AaveV1_lending_pool.json +0 -27
  23. package/build/abi/Aave_GSM.json +0 -751
  24. package/build/abi/BProtocol.json +0 -1155
  25. package/build/abi/Balancer.json +0 -257
  26. package/build/abi/BalancerV2.json +0 -1179
  27. package/build/abi/Jarvis.json +0 -1172
  28. package/build/abi/MStableAsset.json +0 -1545
  29. package/build/abi/OneInchLp.json +0 -1304
  30. package/build/abi/Onebit.json +0 -736
  31. package/build/abi/RamsesV2Pool.abi.json +0 -1554
  32. package/build/abi/RamsesV2Quoter.abi.json +0 -274
  33. package/build/abi/Shell.json +0 -1294
  34. package/build/abi/TraderJoeV2Router.json +0 -50
  35. package/build/abi/USDM.json +0 -807
  36. package/build/abi/UniswapV2Router.json +0 -397
  37. package/build/abi/angle-transmuter/ChainlinkAccessControlledOffchainAggregator.json +0 -1246
  38. package/build/abi/angle-transmuter/ChainlinkEACAggregatorProxy.json +0 -509
  39. package/build/abi/curve-v1/CurveBUSDv2.abi.json +0 -1356
  40. package/build/abi/curve-v1/CurveTokenV1.json +0 -305
  41. package/build/abi/curve-v1/CurveTokenV2.json +0 -318
  42. package/build/abi/curve-v1/CurveV1StableNg.json +0 -1452
  43. package/build/abi/curve-v1/CurveV2Swap.json +0 -700
  44. package/build/abi/curve-v1/FactoryCryptoRegistry.json +0 -316
  45. package/build/abi/curve-v1/FactoryRegistry.json +0 -508
  46. package/build/abi/curve-v1/StableSwapAave.json +0 -1152
  47. package/build/abi/curve-v1/StableSwapBUSD.json +0 -814
  48. package/build/abi/curve-v1/StableSwapCompound.json +0 -814
  49. package/build/abi/curve-v1/StableSwapIDLE.json +0 -1253
  50. package/build/abi/curve-v1/StableSwapPax.json +0 -865
  51. package/build/abi/curve-v1/StableSwapSnow.json +0 -900
  52. package/build/abi/curve-v1/StableSwapUSDN.json +0 -1004
  53. package/build/abi/curve-v1/StableSwapUSDT.json +0 -814
  54. package/build/abi/curve-v1/StableSwapY.json +0 -814
  55. package/build/abi/inception/inception-ineth-pool.json +0 -1062
  56. package/build/abi/inception/inception-ineth.json +0 -609
  57. package/build/abi/inception/inception-ratio-feed.json +0 -329
  58. package/build/abi/inception/inception-vault.json +0 -991
  59. package/build/abi/kyberdmm/kyber-storage.abi.json +0 -824
  60. package/build/abi/kyberdmm.abi.json +0 -1148
  61. package/build/abi/maverick-v2/MaverickV2Quoter.json +0 -278
  62. package/build/abi/nerve/nerve-metapool.json +0 -790
  63. package/build/abi/platypus/asset.json +0 -490
  64. package/build/abi/platypus/avax-pool.json +0 -820
  65. package/build/abi/platypus/oracle.json +0 -119
  66. package/build/abi/platypus/pool.json +0 -677
  67. package/build/abi/smardex/all/smardex-router.json +0 -648
  68. package/build/abi/smardex/layer-1/smardex-factory.json +0 -242
  69. package/build/abi/smardex/layer-1/smardex-pool.json +0 -506
  70. package/build/abi/smardex/layer-2/smardex-factory.json +0 -185
  71. package/build/abi/smardex/layer-2/smardex-pool.json +0 -578
  72. package/build/abi/swaap-v1/pool.json +0 -1346
  73. package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
  74. package/build/abi/velodrome-slipstream/VelodromeSlipstreamQuoterV2.abi.json +0 -267
  75. package/build/abi/wUSDM.json +0 -757
  76. package/build/abi/zrx.v2.json +0 -1967
  77. package/build/abi/zrx.v3.json +0 -3454
  78. package/build/abi/zrx.v4.json +0 -2193
  79. package/build/dex/OneInchLp.d.ts +0 -24
  80. package/build/dex/OneInchLp.js +0 -43
  81. package/build/dex/OneInchLp.js.map +0 -1
  82. package/build/dex/aave-v1/aave-v1.d.ts +0 -34
  83. package/build/dex/aave-v1/aave-v1.js +0 -180
  84. package/build/dex/aave-v1/aave-v1.js.map +0 -1
  85. package/build/dex/aave-v1/config.d.ts +0 -11
  86. package/build/dex/aave-v1/config.js +0 -20
  87. package/build/dex/aave-v1/config.js.map +0 -1
  88. package/build/dex/aave-v1/tokens-mainnet.json +0 -134
  89. package/build/dex/aave-v1/tokens.d.ts +0 -3
  90. package/build/dex/aave-v1/tokens.js +0 -50
  91. package/build/dex/aave-v1/tokens.js.map +0 -1
  92. package/build/dex/aave-v1/types.d.ts +0 -12
  93. package/build/dex/aave-v1/types.js +0 -3
  94. package/build/dex/aave-v1/types.js.map +0 -1
  95. package/build/dex/bProtocol/bProtocol.d.ts +0 -15
  96. package/build/dex/bProtocol/bProtocol.js +0 -56
  97. package/build/dex/bProtocol/bProtocol.js.map +0 -1
  98. package/build/dex/bProtocol/types.d.ts +0 -11
  99. package/build/dex/bProtocol/types.js +0 -8
  100. package/build/dex/bProtocol/types.js.map +0 -1
  101. package/build/dex/balancer-v1/balancer-pools.json +0 -33333
  102. package/build/dex/bebop/websocket-fetcher.d.ts +0 -35
  103. package/build/dex/bebop/websocket-fetcher.js +0 -87
  104. package/build/dex/bebop/websocket-fetcher.js.map +0 -1
  105. package/build/dex/idle-dao/idle-dao-pool.d.ts +0 -56
  106. package/build/dex/idle-dao/idle-dao-pool.js +0 -176
  107. package/build/dex/idle-dao/idle-dao-pool.js.map +0 -1
  108. package/build/dex/idle-dao/idle-dao-pooling-pool.d.ts +0 -16
  109. package/build/dex/idle-dao/idle-dao-pooling-pool.js +0 -57
  110. package/build/dex/idle-dao/idle-dao-pooling-pool.js.map +0 -1
  111. package/build/dex/idle-dao/scripts.d.ts +0 -9
  112. package/build/dex/idle-dao/scripts.js +0 -552
  113. package/build/dex/idle-dao/scripts.js.map +0 -1
  114. package/build/dex/inception/config.d.ts +0 -4
  115. package/build/dex/inception/config.js +0 -109
  116. package/build/dex/inception/config.js.map +0 -1
  117. package/build/dex/inception/inception-event-pool.d.ts +0 -16
  118. package/build/dex/inception/inception-event-pool.js +0 -51
  119. package/build/dex/inception/inception-event-pool.js.map +0 -1
  120. package/build/dex/inception/inception-native.d.ts +0 -43
  121. package/build/dex/inception/inception-native.js +0 -131
  122. package/build/dex/inception/inception-native.js.map +0 -1
  123. package/build/dex/inception/inception-pool.d.ts +0 -18
  124. package/build/dex/inception/inception-pool.js +0 -32
  125. package/build/dex/inception/inception-pool.js.map +0 -1
  126. package/build/dex/inception/inception-price-feed.d.ts +0 -19
  127. package/build/dex/inception/inception-price-feed.js +0 -51
  128. package/build/dex/inception/inception-price-feed.js.map +0 -1
  129. package/build/dex/inception/inception.d.ts +0 -43
  130. package/build/dex/inception/inception.js +0 -204
  131. package/build/dex/inception/inception.js.map +0 -1
  132. package/build/dex/inception/tokens.d.ts +0 -9
  133. package/build/dex/inception/tokens.js +0 -28
  134. package/build/dex/inception/tokens.js.map +0 -1
  135. package/build/dex/inception/types.d.ts +0 -22
  136. package/build/dex/inception/types.js +0 -3
  137. package/build/dex/inception/types.js.map +0 -1
  138. package/build/dex/inception/utils.d.ts +0 -6
  139. package/build/dex/inception/utils.js +0 -37
  140. package/build/dex/inception/utils.js.map +0 -1
  141. package/build/dex/jarvis.d.ts +0 -56
  142. package/build/dex/jarvis.js +0 -163
  143. package/build/dex/jarvis.js.map +0 -1
  144. package/build/dex/mStable.d.ts +0 -44
  145. package/build/dex/mStable.js +0 -75
  146. package/build/dex/mStable.js.map +0 -1
  147. package/build/dex/onebit/onebit.d.ts +0 -16
  148. package/build/dex/onebit/onebit.js +0 -61
  149. package/build/dex/onebit/onebit.js.map +0 -1
  150. package/build/dex/onebit/types.d.ts +0 -14
  151. package/build/dex/onebit/types.js +0 -8
  152. package/build/dex/onebit/types.js.map +0 -1
  153. package/build/dex/platypus/asset.d.ts +0 -14
  154. package/build/dex/platypus/asset.js +0 -97
  155. package/build/dex/platypus/asset.js.map +0 -1
  156. package/build/dex/platypus/config.d.ts +0 -11
  157. package/build/dex/platypus/config.js +0 -69
  158. package/build/dex/platypus/config.js.map +0 -1
  159. package/build/dex/platypus/platypus.d.ts +0 -63
  160. package/build/dex/platypus/platypus.js +0 -473
  161. package/build/dex/platypus/platypus.js.map +0 -1
  162. package/build/dex/platypus/pool-avax.d.ts +0 -8
  163. package/build/dex/platypus/pool-avax.js +0 -54
  164. package/build/dex/platypus/pool-avax.js.map +0 -1
  165. package/build/dex/platypus/pool-base.d.ts +0 -19
  166. package/build/dex/platypus/pool-base.js +0 -86
  167. package/build/dex/platypus/pool-base.js.map +0 -1
  168. package/build/dex/platypus/pool-pure.d.ts +0 -8
  169. package/build/dex/platypus/pool-pure.js +0 -37
  170. package/build/dex/platypus/pool-pure.js.map +0 -1
  171. package/build/dex/platypus/pool-subscriber.d.ts +0 -14
  172. package/build/dex/platypus/pool-subscriber.js +0 -167
  173. package/build/dex/platypus/pool-subscriber.js.map +0 -1
  174. package/build/dex/platypus/pool.d.ts +0 -8
  175. package/build/dex/platypus/pool.js +0 -58
  176. package/build/dex/platypus/pool.js.map +0 -1
  177. package/build/dex/platypus/types.d.ts +0 -92
  178. package/build/dex/platypus/types.js +0 -10
  179. package/build/dex/platypus/types.js.map +0 -1
  180. package/build/dex/quickswap/spiritswap-v3.d.ts +0 -6
  181. package/build/dex/quickswap/spiritswap-v3.js +0 -19
  182. package/build/dex/quickswap/spiritswap-v3.js.map +0 -1
  183. package/build/dex/shell.d.ts +0 -25
  184. package/build/dex/shell.js +0 -41
  185. package/build/dex/shell.js.map +0 -1
  186. package/build/dex/smardex/config.d.ts +0 -4
  187. package/build/dex/smardex/config.js +0 -64
  188. package/build/dex/smardex/config.js.map +0 -1
  189. package/build/dex/smardex/constants.d.ts +0 -18
  190. package/build/dex/smardex/constants.js +0 -33
  191. package/build/dex/smardex/constants.js.map +0 -1
  192. package/build/dex/smardex/sdk/constants.d.ts +0 -6
  193. package/build/dex/smardex/sdk/constants.js +0 -13
  194. package/build/dex/smardex/sdk/constants.js.map +0 -1
  195. package/build/dex/smardex/sdk/core.d.ts +0 -113
  196. package/build/dex/smardex/sdk/core.js +0 -499
  197. package/build/dex/smardex/sdk/core.js.map +0 -1
  198. package/build/dex/smardex/sdk/errors.d.ts +0 -15
  199. package/build/dex/smardex/sdk/errors.js +0 -22
  200. package/build/dex/smardex/sdk/errors.js.map +0 -1
  201. package/build/dex/smardex/sdk/types.d.ts +0 -62
  202. package/build/dex/smardex/sdk/types.js +0 -3
  203. package/build/dex/smardex/sdk/types.js.map +0 -1
  204. package/build/dex/smardex/sdk/utils.d.ts +0 -44
  205. package/build/dex/smardex/sdk/utils.js +0 -133
  206. package/build/dex/smardex/sdk/utils.js.map +0 -1
  207. package/build/dex/smardex/smardex-event-pool.d.ts +0 -28
  208. package/build/dex/smardex/smardex-event-pool.js +0 -119
  209. package/build/dex/smardex/smardex-event-pool.js.map +0 -1
  210. package/build/dex/smardex/smardex.d.ts +0 -65
  211. package/build/dex/smardex/smardex.js +0 -519
  212. package/build/dex/smardex/smardex.js.map +0 -1
  213. package/build/dex/smardex/types.d.ts +0 -55
  214. package/build/dex/smardex/types.js +0 -3
  215. package/build/dex/smardex/types.js.map +0 -1
  216. package/build/dex/solidly/forks-override/cone.d.ts +0 -22
  217. package/build/dex/solidly/forks-override/cone.js +0 -53
  218. package/build/dex/solidly/forks-override/cone.js.map +0 -1
  219. package/build/dex/solidly/forks-override/solisnek.d.ts +0 -8
  220. package/build/dex/solidly/forks-override/solisnek.js +0 -15
  221. package/build/dex/solidly/forks-override/solisnek.js.map +0 -1
  222. package/build/dex/swaap-v1/config.d.ts +0 -17
  223. package/build/dex/swaap-v1/config.js +0 -56
  224. package/build/dex/swaap-v1/config.js.map +0 -1
  225. package/build/dex/swaap-v1/constants.d.ts +0 -6
  226. package/build/dex/swaap-v1/constants.js +0 -17
  227. package/build/dex/swaap-v1/constants.js.map +0 -1
  228. package/build/dex/swaap-v1/libraries/ChainlinkUtils.d.ts +0 -25
  229. package/build/dex/swaap-v1/libraries/ChainlinkUtils.js +0 -62
  230. package/build/dex/swaap-v1/libraries/ChainlinkUtils.js.map +0 -1
  231. package/build/dex/swaap-v1/libraries/Const.d.ts +0 -18
  232. package/build/dex/swaap-v1/libraries/Const.js +0 -26
  233. package/build/dex/swaap-v1/libraries/Const.js.map +0 -1
  234. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.d.ts +0 -77
  235. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.js +0 -316
  236. package/build/dex/swaap-v1/libraries/GeometricBrownianMotion.js.map +0 -1
  237. package/build/dex/swaap-v1/libraries/LogExpMath.d.ts +0 -75
  238. package/build/dex/swaap-v1/libraries/LogExpMath.js +0 -418
  239. package/build/dex/swaap-v1/libraries/LogExpMath.js.map +0 -1
  240. package/build/dex/swaap-v1/libraries/MathMMM.d.ts +0 -185
  241. package/build/dex/swaap-v1/libraries/MathMMM.js +0 -453
  242. package/build/dex/swaap-v1/libraries/MathMMM.js.map +0 -1
  243. package/build/dex/swaap-v1/libraries/Num.d.ts +0 -31
  244. package/build/dex/swaap-v1/libraries/Num.js +0 -167
  245. package/build/dex/swaap-v1/libraries/Num.js.map +0 -1
  246. package/build/dex/swaap-v1/libraries/PoolQuotations.d.ts +0 -23
  247. package/build/dex/swaap-v1/libraries/PoolQuotations.js +0 -131
  248. package/build/dex/swaap-v1/libraries/PoolQuotations.js.map +0 -1
  249. package/build/dex/swaap-v1/libraries/Struct.d.ts +0 -56
  250. package/build/dex/swaap-v1/libraries/Struct.js +0 -3
  251. package/build/dex/swaap-v1/libraries/Struct.js.map +0 -1
  252. package/build/dex/swaap-v1/swaap-v1-pool.d.ts +0 -45
  253. package/build/dex/swaap-v1/swaap-v1-pool.js +0 -656
  254. package/build/dex/swaap-v1/swaap-v1-pool.js.map +0 -1
  255. package/build/dex/swaap-v1/swaap-v1.d.ts +0 -62
  256. package/build/dex/swaap-v1/swaap-v1.js +0 -379
  257. package/build/dex/swaap-v1/swaap-v1.js.map +0 -1
  258. package/build/dex/swaap-v1/types.d.ts +0 -106
  259. package/build/dex/swaap-v1/types.js +0 -9
  260. package/build/dex/swaap-v1/types.js.map +0 -1
  261. package/build/dex/trader-joe-v2.d.ts +0 -40
  262. package/build/dex/trader-joe-v2.js +0 -74
  263. package/build/dex/trader-joe-v2.js.map +0 -1
  264. package/build/dex/usual-bond/config.d.ts +0 -3
  265. package/build/dex/usual-bond/config.js +0 -13
  266. package/build/dex/usual-bond/config.js.map +0 -1
  267. package/build/dex/usual-bond/types.d.ts +0 -7
  268. package/build/dex/usual-bond/types.js +0 -3
  269. package/build/dex/usual-bond/types.js.map +0 -1
  270. package/build/dex/usual-bond/usual-bond.d.ts +0 -35
  271. package/build/dex/usual-bond/usual-bond.js +0 -176
  272. package/build/dex/usual-bond/usual-bond.js.map +0 -1
  273. package/build/dex/wusdm/config.d.ts +0 -3
  274. package/build/dex/wusdm/config.js +0 -43
  275. package/build/dex/wusdm/config.js.map +0 -1
  276. package/build/dex/wusdm/constants.d.ts +0 -2
  277. package/build/dex/wusdm/constants.js +0 -6
  278. package/build/dex/wusdm/constants.js.map +0 -1
  279. package/build/dex/wusdm/types.d.ts +0 -18
  280. package/build/dex/wusdm/types.js +0 -11
  281. package/build/dex/wusdm/types.js.map +0 -1
  282. package/build/dex/wusdm/wusdm-pool.d.ts +0 -21
  283. package/build/dex/wusdm/wusdm-pool.js +0 -74
  284. package/build/dex/wusdm/wusdm-pool.js.map +0 -1
  285. package/build/dex/wusdm/wusdm.d.ts +0 -46
  286. package/build/dex/wusdm/wusdm.js +0 -243
  287. package/build/dex/wusdm/wusdm.js.map +0 -1
  288. package/build/dex/zerox/config.d.ts +0 -2
  289. package/build/dex/zerox/config.js +0 -33
  290. package/build/dex/zerox/config.js.map +0 -1
  291. package/build/dex/zerox/index.d.ts +0 -22
  292. package/build/dex/zerox/index.js +0 -225
  293. package/build/dex/zerox/index.js.map +0 -1
  294. package/build/dex/zerox/order.d.ts +0 -88
  295. package/build/dex/zerox/order.js +0 -53
  296. package/build/dex/zerox/order.js.map +0 -1
  297. package/build/dex/zerox/types.d.ts +0 -73
  298. package/build/dex/zerox/types.js +0 -21
  299. package/build/dex/zerox/types.js.map +0 -1
  300. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -16
  301. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -16
  302. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -16
  303. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -16
  304. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -16
  305. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -16
  306. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -16
  307. package/build/executor/fixtures/executor01/exchange-params/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -16
  308. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -9
  309. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -9
  310. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -9
  311. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-eth-steth.json +0 -9
  312. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-steth-eth.json +0 -9
  313. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -9
  314. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-eth-usdc.json +0 -9
  315. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-eth.json +0 -9
  316. package/build/executor/fixtures/executor01/exchange-params/price-route-simpleSwap-univ3-usdc-usdt.json +0 -9
  317. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -12
  318. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -7
  319. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -7
  320. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -7
  321. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -7
  322. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -12
  323. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-eth-usdc.json +0 -7
  324. package/build/executor/fixtures/executor01/maybe-weth-calldata/price-route-simpleSwap-univ3-usdc-eth.json +0 -7
  325. package/build/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-curvev1-eth-usdc-gusd.json +0 -78
  326. package/build/executor/fixtures/executor01/routes/price-route-multiswap-balancerv1-sushiv3-wbtc-eth-sushi.json +0 -81
  327. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-eth-usdc-gusd.json +0 -78
  328. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-curvev1-gusd-usdc-eth.json +0 -78
  329. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-dai-usdc-eth.json +0 -81
  330. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-eth-usdc-dai.json +0 -81
  331. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdc-eth-wbtc.json +0 -81
  332. package/build/executor/fixtures/executor01/routes/price-route-multiswap-sushiv3-usdt-usdc-dai.json +0 -81
  333. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-eth-usdc.json +0 -64
  334. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-eth.json +0 -85
  335. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-balancerv1-usdc-wbtc.json +0 -64
  336. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-eth-steth.json +0 -52
  337. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-steth-eth.json +0 -52
  338. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-curvev1-usdc-usdt.json +0 -52
  339. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-eth-usdc.json +0 -55
  340. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-eth.json +0 -55
  341. package/build/executor/fixtures/executor01/routes/price-route-simpleSwap-univ3-usdc-usdt.json +0 -55
  342. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -23
  343. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -37
  344. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -23
  345. package/build/executor/fixtures/executor02/exchange-params/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -23
  346. package/build/executor/fixtures/executor02/exchange-params/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -51
  347. package/build/executor/fixtures/executor02/exchange-params/price-route-multiswap-univ3-usdt-dai-eth.json +0 -58
  348. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -23
  349. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -23
  350. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -9
  351. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -16
  352. package/build/executor/fixtures/executor02/exchange-params/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -23
  353. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -12
  354. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -7
  355. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -12
  356. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -12
  357. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -7
  358. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-multiswap-univ3-usdt-dai-eth.json +0 -7
  359. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -7
  360. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -7
  361. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -7
  362. package/build/executor/fixtures/executor02/maybe-weth-calldata/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -7
  363. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-balancerv1-sushiv3-univ3-bal-eth-sushi.json +0 -130
  364. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-maverickv1-sushiv3-univ3-eth-usdc-mav.json +0 -136
  365. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-sushi-eth-wbtc.json +0 -100
  366. package/build/executor/fixtures/executor02/routes/price-route-multiSwap-univ3-sushiv3-wbtc-eth-sushi.json +0 -100
  367. package/build/executor/fixtures/executor02/routes/price-route-multiswap-curvev1-univ3-dai-usdc-eth.json +0 -166
  368. package/build/executor/fixtures/executor02/routes/price-route-multiswap-univ3-usdt-dai-eth.json +0 -190
  369. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-eth-usdc.json +0 -114
  370. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-balancerv1-usdc-eth.json +0 -114
  371. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-eth-sushi.json +0 -55
  372. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-sushiv3-univ3-sushi-eth.json +0 -73
  373. package/build/executor/fixtures/executor02/routes/price-route-simpleSwap-univ3-curvev1-usdt-dai.json +0 -82
@@ -1,53 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Cone = void 0;
7
- const solidly_1 = require("../solidly");
8
- const abi_1 = require("@ethersproject/abi");
9
- const config_1 = require("../config");
10
- const utils_1 = require("../../../utils");
11
- const lodash_1 = __importDefault(require("lodash"));
12
- const swapFeeFunctionName = 'swapFee';
13
- const ConePairABI = [
14
- {
15
- inputs: [],
16
- name: swapFeeFunctionName,
17
- outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
18
- stateMutability: 'view',
19
- type: 'function',
20
- },
21
- ];
22
- const conePairIface = new abi_1.Interface(ConePairABI);
23
- class Cone extends solidly_1.Solidly {
24
- constructor(network, dexKey, dexHelper) {
25
- super(network, dexKey, dexHelper, true);
26
- this.network = network;
27
- this.dexHelper = dexHelper;
28
- this.feeFactor = 1e4;
29
- }
30
- callDecoder(values) {
31
- const fees = parseInt(conePairIface
32
- .decodeFunctionResult(swapFeeFunctionName, values)[0]
33
- .toString());
34
- if (!fees)
35
- return 0;
36
- // noinspection UnnecessaryLocalVariableJS
37
- const feeCode = Math.ceil(this.feeFactor / fees);
38
- return feeCode;
39
- }
40
- getFeesMultiCallData(pair) {
41
- const callEntry = {
42
- target: pair.exchange,
43
- callData: conePairIface.encodeFunctionData(swapFeeFunctionName, []),
44
- };
45
- return {
46
- callEntry,
47
- callDecoder: this.callDecoder.bind(this),
48
- };
49
- }
50
- }
51
- exports.Cone = Cone;
52
- Cone.dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(lodash_1.default.pick(config_1.SolidlyConfig, ['Cone']));
53
- //# sourceMappingURL=cone.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cone.js","sourceRoot":"","sources":["../../../../src/dex/solidly/forks-override/cone.ts"],"names":[],"mappings":";;;;;;AAAA,wCAAqC;AAIrC,4CAA+C;AAC/C,sCAA0C;AAC1C,0CAAuD;AACvD,oDAAuB;AAEvB,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAEtC,MAAM,WAAW,GAAG;IAClB;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,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,aAAa,GAAG,IAAI,eAAS,CAAC,WAAW,CAAC,CAAC;AAEjD,MAAa,IAAK,SAAQ,iBAAO;IAM/B,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;QARjC,cAAS,GAAG,GAAG,CAAC;IAgBhB,CAAC;IAEO,WAAW,CAAC,MAAa;QAC/B,MAAM,IAAI,GAAG,QAAQ,CACnB,aAAa;aACV,oBAAoB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aACpD,QAAQ,EAAE,CACd,CAAC;QACF,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,CAAC;QAEpB,0CAA0C;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC;IAES,oBAAoB,CAAC,IAAiB;QAC9C,MAAM,SAAS,GAAG;YAChB,MAAM,EAAE,IAAI,CAAC,QAAS;YACtB,QAAQ,EAAE,aAAa,CAAC,kBAAkB,CAAC,mBAAmB,EAAE,EAAE,CAAC;SACpE,CAAC;QAEF,OAAO;YACL,SAAS;YACT,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;SACzC,CAAC;IACJ,CAAC;;AA1CH,oBA2CC;AAxCe,uBAAkB,GAC9B,IAAA,6BAAqB,EAAC,gBAAC,CAAC,IAAI,CAAC,sBAAa,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import { Velodrome } from './velodrome';
2
- import { Network } from '../../../constants';
3
- export declare class SoliSnek extends Velodrome {
4
- static dexKeysWithNetwork: {
5
- key: string;
6
- networks: Network[];
7
- }[];
8
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SoliSnek = void 0;
7
- const velodrome_1 = require("./velodrome");
8
- const utils_1 = require("../../../utils");
9
- const config_1 = require("../config");
10
- const lodash_1 = __importDefault(require("lodash"));
11
- class SoliSnek extends velodrome_1.Velodrome {
12
- }
13
- exports.SoliSnek = SoliSnek;
14
- SoliSnek.dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(lodash_1.default.pick(config_1.SolidlyConfig, ['SoliSnek']));
15
- //# sourceMappingURL=solisnek.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"solisnek.js","sourceRoot":"","sources":["../../../../src/dex/solidly/forks-override/solisnek.ts"],"names":[],"mappings":";;;;;;AAAA,2CAAwC;AAExC,0CAAuD;AACvD,sCAA0C;AAC1C,oDAAuB;AAEvB,MAAa,QAAS,SAAQ,qBAAS;;AAAvC,4BAGC;AAFe,2BAAkB,GAC9B,IAAA,6BAAqB,EAAC,gBAAC,CAAC,IAAI,CAAC,sBAAa,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC"}
@@ -1,17 +0,0 @@
1
- import { DexParams } from './types';
2
- import { DexConfigMap } from '../../types';
3
- export declare const MAX_GAS_COST_ESTIMATION: number;
4
- export declare const SUBGRAPH_TIMEOUT: number;
5
- export declare const MAX_POOL_CNT = 1000;
6
- export declare const POOL_CACHE_TTL: number;
7
- export declare const RECCURING_POOL_FETCH_INTERVAL_MS: number;
8
- export declare const SwaapV1Config: DexConfigMap<DexParams>;
9
- export declare const Adapters: {
10
- [chainId: number]: {
11
- [side: string]: {
12
- name: string;
13
- index: number;
14
- }[] | null;
15
- };
16
- };
17
- export declare const SUBGRAPH_FETCH_ALL_POOOLS_RQ = "query ($count: Int) {\n pools: pools(first: $count, orderBy: liquidity, orderDirection: desc, where: {finalized: true}) {\n id\n tokens {\n address\n decimals\n oracleInitialState {\n proxy\n price: fixedPointPrice\n decimals\n }\n }\n liquidityUSD: liquidity\n swapFee\n dynamicCoverageFeesZ\n dynamicCoverageFeesHorizon\n priceStatisticsLookbackInSec\n priceStatisticsLookbackInRound\n priceStatisticsLookbackStepInRound\n maxPriceUnpegRatio\n }\n}";
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SUBGRAPH_FETCH_ALL_POOOLS_RQ = exports.Adapters = exports.SwaapV1Config = exports.RECCURING_POOL_FETCH_INTERVAL_MS = exports.POOL_CACHE_TTL = exports.MAX_POOL_CNT = exports.SUBGRAPH_TIMEOUT = exports.MAX_GAS_COST_ESTIMATION = void 0;
4
- const constants_1 = require("../../constants");
5
- exports.MAX_GAS_COST_ESTIMATION = 375 * 1000;
6
- exports.SUBGRAPH_TIMEOUT = 1000 * 10;
7
- exports.MAX_POOL_CNT = 1000;
8
- exports.POOL_CACHE_TTL = 60 * 60; // 1hr
9
- exports.RECCURING_POOL_FETCH_INTERVAL_MS = 12 * 3600 * 1000; // 12h (in ms)
10
- exports.SwaapV1Config = {
11
- SwaapV1: {
12
- [constants_1.Network.POLYGON]: {
13
- subgraphURL: 'https://api.thegraph.com/subgraphs/name/swaap-labs/swaapv1',
14
- exchangeProxy: '0x718cc95685a0b0af73c2c8534243039a28687037',
15
- },
16
- },
17
- };
18
- exports.Adapters = {
19
- [constants_1.Network.POLYGON]: {
20
- [constants_1.SwapSide.SELL]: [
21
- {
22
- name: 'PolygonAdapter02',
23
- index: 6,
24
- },
25
- ],
26
- [constants_1.SwapSide.BUY]: [
27
- {
28
- name: 'PolygonBuyAdapter',
29
- index: 4,
30
- },
31
- ],
32
- },
33
- };
34
- exports.SUBGRAPH_FETCH_ALL_POOOLS_RQ = `query ($count: Int) {
35
- pools: pools(first: $count, orderBy: liquidity, orderDirection: desc, where: {finalized: true}) {
36
- id
37
- tokens {
38
- address
39
- decimals
40
- oracleInitialState {
41
- proxy
42
- price: fixedPointPrice
43
- decimals
44
- }
45
- }
46
- liquidityUSD: liquidity
47
- swapFee
48
- dynamicCoverageFeesZ
49
- dynamicCoverageFeesHorizon
50
- priceStatisticsLookbackInSec
51
- priceStatisticsLookbackInRound
52
- priceStatisticsLookbackStepInRound
53
- maxPriceUnpegRatio
54
- }
55
- }`;
56
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/swaap-v1/config.ts"],"names":[],"mappings":";;;AAEA,+CAAoD;AAEvC,QAAA,uBAAuB,GAAG,GAAG,GAAG,IAAI,CAAC;AACrC,QAAA,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;AAC7B,QAAA,YAAY,GAAG,IAAI,CAAC;AACpB,QAAA,cAAc,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM;AAChC,QAAA,gCAAgC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,cAAc;AAEnE,QAAA,aAAa,GAA4B;IACpD,OAAO,EAAE;QACP,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,WAAW,EAAE,4DAA4D;YACzE,aAAa,EAAE,4CAA4C;SAC5D;KACF;CACF,CAAC;AAEW,QAAA,QAAQ,GAIjB;IACF,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;QACjB,CAAC,oBAAQ,CAAC,IAAI,CAAC,EAAE;YACf;gBACE,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,CAAC;aACT;SACF;QACD,CAAC,oBAAQ,CAAC,GAAG,CAAC,EAAE;YACd;gBACE,IAAI,EAAE,mBAAmB;gBACzB,KAAK,EAAE,CAAC;aACT;SACF;KACF;CACF,CAAC;AAEW,QAAA,4BAA4B,GAAG;;;;;;;;;;;;;;;;;;;;;EAqB1C,CAAC"}
@@ -1,6 +0,0 @@
1
- import { BigNumber } from '@0x/utils';
2
- import { SwaapV1PoolParameters, SwaapV1PoolLiquidities, SwaapV1PoolOracles } from './types';
3
- export declare const defaultParametersState: SwaapV1PoolParameters;
4
- export declare const defaultLiquiditiesState: SwaapV1PoolLiquidities;
5
- export declare const defaultOraclesState: SwaapV1PoolOracles;
6
- export declare const protocolPrecision: BigNumber;
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.protocolPrecision = exports.defaultOraclesState = exports.defaultLiquiditiesState = exports.defaultParametersState = void 0;
4
- const utils_1 = require("@0x/utils");
5
- exports.defaultParametersState = {
6
- swapFee: BigInt(10 ** 12),
7
- priceStatisticsLookbackInRound: 5,
8
- priceStatisticsLookbackStepInRound: 4,
9
- dynamicCoverageFeesZ: BigInt(6),
10
- dynamicCoverageFeesHorizon: BigInt(5),
11
- priceStatisticsLookbackInSec: BigInt(3600),
12
- maxPriceUnpegRatio: BigInt(1025000000000000000),
13
- };
14
- exports.defaultLiquiditiesState = {};
15
- exports.defaultOraclesState = {};
16
- exports.protocolPrecision = new utils_1.BigNumber(10).pow(new utils_1.BigNumber(18));
17
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/dex/swaap-v1/constants.ts"],"names":[],"mappings":";;;AAAA,qCAAsC;AAOzB,QAAA,sBAAsB,GAA0B;IAC3D,OAAO,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC;IACzB,8BAA8B,EAAE,CAAC;IACjC,kCAAkC,EAAE,CAAC;IACrC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/B,0BAA0B,EAAE,MAAM,CAAC,CAAC,CAAC;IACrC,4BAA4B,EAAE,MAAM,CAAC,IAAI,CAAC;IAC1C,kBAAkB,EAAE,MAAM,CAAC,mBAAmB,CAAC;CAChD,CAAC;AAEW,QAAA,uBAAuB,GAA2B,EAAE,CAAC;AAErD,QAAA,mBAAmB,GAAuB,EAAE,CAAC;AAE7C,QAAA,iBAAiB,GAAG,IAAI,iBAAS,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,iBAAS,CAAC,EAAE,CAAC,CAAC,CAAC"}
@@ -1,25 +0,0 @@
1
- import * as Struct from './Struct';
2
- import { ChainLinkData } from '../types';
3
- export declare class ChainlinkUtils {
4
- static getLatestRound(latestRoundId: number, historicalPrices: ChainLinkData, currentTimestamp: bigint): Struct.LatestRound;
5
- /**
6
- * @notice Retrieves historical data from round id.
7
- * @dev Special cases:
8
- * - if retrieved price is negative --> fails
9
- * - if no data can be found --> returns (0,0)
10
- * @param oracle The price feed oracle
11
- * @param _roundId The the round of interest ID
12
- * @return The round price
13
- * @return The round timestamp
14
- */
15
- static getRoundData(_roundId: number, historicalPrices: ChainLinkData): [bigint, bigint];
16
- /**
17
- * @notice Computes the price of token 2 in terms of token 1
18
- * @param price_1 The latest price data for token 1
19
- * @param decimals_1 The sum of the decimals of token 1 its oracle
20
- * @param price_2 The latest price data for token 2
21
- * @param decimals_2 The sum of the decimals of token 2 its oracle
22
- * @return The last price of token 2 divded by the last price of token 1
23
- */
24
- static getTokenRelativePrice(price_1: bigint, decimals_1: bigint, price_2: bigint, decimals_2: bigint): bigint;
25
- }
@@ -1,62 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChainlinkUtils = void 0;
4
- const Const_1 = require("./Const");
5
- const Num_1 = require("./Num");
6
- const _require = (b, message) => {
7
- if (!b)
8
- throw new Error(message);
9
- };
10
- class ChainlinkUtils {
11
- static getLatestRound(latestRoundId, historicalPrices, currentTimestamp) {
12
- let latestRoundData = historicalPrices[latestRoundId];
13
- let latestPrice = latestRoundData.answer;
14
- let latestTimestamp = latestRoundData.timestamp;
15
- _require(currentTimestamp - latestTimestamp <= Const_1.Const.ORACLE_TIMEOUT, 'Err.EXCEEDED_ORACLE_TIMEOUT');
16
- _require(latestPrice > 0, 'Err.NON_POSITIVE_PRICE');
17
- return {
18
- roundId: latestRoundId,
19
- price: latestPrice,
20
- timestamp: latestTimestamp,
21
- };
22
- }
23
- /**
24
- * @notice Retrieves historical data from round id.
25
- * @dev Special cases:
26
- * - if retrieved price is negative --> fails
27
- * - if no data can be found --> returns (0,0)
28
- * @param oracle The price feed oracle
29
- * @param _roundId The the round of interest ID
30
- * @return The round price
31
- * @return The round timestamp
32
- */
33
- static getRoundData(_roundId, historicalPrices) {
34
- let data = historicalPrices[_roundId];
35
- _require(data != undefined, 'Err.UNAVAILABLE_HISTORICAL_PRICE');
36
- _require(data.answer >= 0, 'Err.NEGATIVE_PRICE');
37
- return [data.answer, data.timestamp];
38
- }
39
- /**
40
- * @notice Computes the price of token 2 in terms of token 1
41
- * @param price_1 The latest price data for token 1
42
- * @param decimals_1 The sum of the decimals of token 1 its oracle
43
- * @param price_2 The latest price data for token 2
44
- * @param decimals_2 The sum of the decimals of token 2 its oracle
45
- * @return The last price of token 2 divded by the last price of token 1
46
- */
47
- static getTokenRelativePrice(price_1, decimals_1, price_2, decimals_2) {
48
- // we consider tokens price to be > 0
49
- if (decimals_1 > decimals_2) {
50
- return Num_1.Num.div(Num_1.Num.mul(price_2, 10n ** (decimals_1 - decimals_2) * Const_1.Const.ONE), price_1);
51
- }
52
- else if (decimals_1 < decimals_2) {
53
- return Num_1.Num.div(Num_1.Num.div(price_2, price_1), 10n ** (decimals_2 - decimals_1) * Const_1.Const.ONE);
54
- }
55
- else {
56
- // decimals_1 == decimals_2
57
- return Num_1.Num.div(price_2, price_1);
58
- }
59
- }
60
- }
61
- exports.ChainlinkUtils = ChainlinkUtils;
62
- //# sourceMappingURL=ChainlinkUtils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChainlinkUtils.js","sourceRoot":"","sources":["../../../../src/dex/swaap-v1/libraries/ChainlinkUtils.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,+BAA4B;AAI5B,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAE,OAAe,EAAE,EAAE;IAC/C,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAa,cAAc;IACzB,MAAM,CAAC,cAAc,CACnB,aAAqB,EACrB,gBAA+B,EAC/B,gBAAwB;QAExB,IAAI,eAAe,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAEtD,IAAI,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC;QACzC,IAAI,eAAe,GAAG,eAAe,CAAC,SAAS,CAAC;QAEhD,QAAQ,CACN,gBAAgB,GAAG,eAAe,IAAI,aAAK,CAAC,cAAc,EAC1D,6BAA6B,CAC9B,CAAC;QACF,QAAQ,CAAC,WAAW,GAAG,CAAC,EAAE,wBAAwB,CAAC,CAAC;QAEpD,OAAO;YACL,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,eAAe;SAC3B,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,YAAY,CACjB,QAAgB,EAChB,gBAA+B;QAE/B,IAAI,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAEtC,QAAQ,CAAC,IAAI,IAAI,SAAS,EAAE,kCAAkC,CAAC,CAAC;QAChE,QAAQ,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAC;QAEjD,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,qBAAqB,CAC1B,OAAe,EACf,UAAkB,EAClB,OAAe,EACf,UAAkB;QAElB,qCAAqC;QACrC,IAAI,UAAU,GAAG,UAAU,EAAE;YAC3B,OAAO,SAAG,CAAC,GAAG,CACZ,SAAG,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,aAAK,CAAC,GAAG,CAAC,EAC9D,OAAO,CACR,CAAC;SACH;aAAM,IAAI,UAAU,GAAG,UAAU,EAAE;YAClC,OAAO,SAAG,CAAC,GAAG,CACZ,SAAG,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EACzB,GAAG,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,aAAK,CAAC,GAAG,CAC7C,CAAC;SACH;aAAM;YACL,2BAA2B;YAC3B,OAAO,SAAG,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;SAClC;IACH,CAAC;CAmEF;AA9ID,wCA8IC"}
@@ -1,18 +0,0 @@
1
- export declare class Const {
2
- static ONE: bigint;
3
- static MIN_POW_BASE: bigint;
4
- static MAX_POW_BASE: bigint;
5
- static POW_PRECISION: bigint;
6
- static ORACLE_TIMEOUT: bigint;
7
- static MIN_FEE: bigint;
8
- static EXIT_FEE: bigint;
9
- static BASE_Z: bigint;
10
- static BASE_HORIZON: bigint;
11
- static BASE_LOOKBACK_IN_ROUND: number;
12
- static BASE_LOOKBACK_IN_SEC: bigint;
13
- static LOOKBACK_STEP_IN_ROUND: number;
14
- static MAX_IN_RATIO: bigint;
15
- static MAX_OUT_RATIO: bigint;
16
- static FALLBACK_SPREAD: bigint;
17
- static BASE_MAX_PRICE_UNPEG_RATIO: bigint;
18
- }
@@ -1,26 +0,0 @@
1
- "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.Const = void 0;
5
- const bigint_constants_1 = require("../../../bigint-constants");
6
- class Const {
7
- }
8
- exports.Const = Const;
9
- _a = Const;
10
- Const.ONE = bigint_constants_1.BI_POWS[18];
11
- Const.MIN_POW_BASE = 1n;
12
- Const.MAX_POW_BASE = 2n * _a.ONE - 1n;
13
- Const.POW_PRECISION = _a.ONE / 10n ** 10n;
14
- Const.ORACLE_TIMEOUT = 2n * 60n;
15
- Const.MIN_FEE = _a.ONE / 10n ** 6n;
16
- Const.EXIT_FEE = 0n;
17
- Const.BASE_Z = 6n * _a.ONE;
18
- Const.BASE_HORIZON = 5n * _a.ONE;
19
- Const.BASE_LOOKBACK_IN_ROUND = 5;
20
- Const.BASE_LOOKBACK_IN_SEC = 3600n;
21
- Const.LOOKBACK_STEP_IN_ROUND = 4;
22
- Const.MAX_IN_RATIO = _a.ONE / 2n;
23
- Const.MAX_OUT_RATIO = _a.ONE / 3n + 1n;
24
- Const.FALLBACK_SPREAD = (3n * _a.ONE) / 1000n;
25
- Const.BASE_MAX_PRICE_UNPEG_RATIO = _a.ONE + _a.ONE / 40n;
26
- //# sourceMappingURL=Const.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Const.js","sourceRoot":"","sources":["../../../../src/dex/swaap-v1/libraries/Const.ts"],"names":[],"mappings":";;;;AAAA,gEAAoD;AAEpD,MAAa,KAAK;;AAAlB,sBA0BC;;AAzBQ,SAAG,GAAG,0BAAO,CAAC,EAAE,CAAC,CAAC;AAElB,kBAAY,GAAG,EAAE,CAAC;AAClB,kBAAY,GAAG,EAAE,GAAG,EAAI,CAAC,GAAG,GAAG,EAAE,CAAC;AAElC,mBAAa,GAAG,EAAI,CAAC,GAAG,GAAG,GAAG,IAAI,GAAG,CAAC;AAEtC,oBAAc,GAAG,EAAE,GAAG,GAAG,CAAC;AAE1B,aAAO,GAAG,EAAI,CAAC,GAAG,GAAG,GAAG,IAAI,EAAE,CAAC;AAC/B,cAAQ,GAAG,EAAE,CAAC;AAEd,YAAM,GAAG,EAAE,GAAG,EAAI,CAAC,GAAG,CAAC;AACvB,kBAAY,GAAG,EAAE,GAAG,EAAI,CAAC,GAAG,CAAC;AAE7B,4BAAsB,GAAG,CAAC,CAAC;AAC3B,0BAAoB,GAAG,KAAK,CAAC;AAC7B,4BAAsB,GAAG,CAAC,CAAC;AAE3B,kBAAY,GAAG,EAAI,CAAC,GAAG,GAAG,EAAE,CAAC;AAC7B,mBAAa,GAAG,EAAI,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC;AAEnC,qBAAe,GAAG,CAAC,EAAE,GAAG,EAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE1C,gCAA0B,GAAG,EAAI,CAAC,GAAG,GAAG,EAAI,CAAC,GAAG,GAAG,GAAG,CAAC"}
@@ -1,77 +0,0 @@
1
- import * as Struct from './Struct';
2
- import { ChainLinkData } from '../types';
3
- export declare class GeometricBrownianMotion {
4
- /**
5
- * @notice Gets asset-pair approximate historical return's mean and variance
6
- * @param latestRoundIn The round-to-start-from's data including its ID of tokenIn
7
- * @param latestRoundOut The round-to-start-from's data including its ID of tokenOut
8
- * @param hpParameters The parameters for historical prices retrieval
9
- * @return gbmEstimation The asset-pair historical return's mean and variance
10
- */
11
- static getParametersEstimation(latestRoundIn: Struct.LatestRound, latestRoundOut: Struct.LatestRound, hpParameters: Struct.HistoricalPricesParameters, historicalOracleStateIn: ChainLinkData, historicalOracleStateOut: ChainLinkData): Struct.GBMEstimation;
12
- /**
13
- * @notice Gets asset-pair historical data return's mean and variance
14
- * @param noMoreDataPoints True if and only if the retrieved data span over the whole time window of interest
15
- * @param hpDataIn Historical prices data of tokenIn
16
- * @param hpDataOut Historical prices data of tokenOut
17
- * @param hpParameters The parameters for historical prices retrieval
18
- * @return gbmEstimation The asset-pair historical return's mean and variance
19
- */
20
- static _getParametersEstimation(noMoreDataPoints: boolean, hpDataIn: Struct.HistoricalPricesData, hpDataOut: Struct.HistoricalPricesData, hpParameters: Struct.HistoricalPricesParameters): Struct.GBMEstimation;
21
- /**
22
- * @notice Gets asset-pair historical prices with timestamps
23
- * @param pricesIn The historical prices of tokenIn
24
- * @param timestampsIn The timestamps corresponding to the tokenIn's historical prices
25
- * @param startIndexIn The tokenIn historical data's last valid index
26
- * @param pricesOut The tokenIn historical data's last valid index
27
- * @param timestampsOut The timestamps corresponding to the tokenOut's historical prices
28
- * @param startIndexOut The tokenOut historical data's last valid index
29
- * @return values The asset-pair historical prices array
30
- * @return timestamps The asset-pair historical timestamps array
31
- */
32
- static getSeries(pricesIn: bigint[], timestampsIn: bigint[], startIndexIn: number, pricesOut: bigint[], timestampsOut: bigint[], startIndexOut: number): [bigint[], bigint[]];
33
- /**
34
- * @notice Gets asset-pair historical mean/variance from timestamped data
35
- * @param values The historical values
36
- * @param timestamps The corresponding time deltas, in seconds
37
- * @return mean The asset-pair historical return's mean
38
- * @return variance asset-pair historical return's variance
39
- */
40
- static getStatistics(values: bigint[], timestamps: bigint[]): [bigint, bigint];
41
- /**
42
- * @notice Gets historical prices from a Chainlink data feed
43
- * @dev Few specificities:
44
- * - it filters out round data with null price or timestamp
45
- * - it stops filling the prices/timestamps when:
46
- * a) hpParameters.lookbackInRound rounds have already been found
47
- * b) time window induced by hpParameters.lookbackInSec is no more satisfied
48
- * @param latestRound The round-to-start-from's data including its ID
49
- * @param hpParameters The parameters for historical prices retrieval
50
- * @return historicalPrices The historical prices of a token
51
- * @return historicalTimestamps The timestamps of the reported prices
52
- * @return index The last valid index of the returned arrays
53
- * @return noMoreDataPoints True if the reported historical prices reaches the lookback time limit
54
- */
55
- static getHistoricalPrices(latestRound: Struct.LatestRound, hpParameters: Struct.HistoricalPricesParameters, historicalOracleState: ChainLinkData): [bigint[], bigint[], number, boolean];
56
- /**
57
- * @notice Finds the next data point in chronological order
58
- * @dev Few considerations:
59
- * - data point with same timestamp as previous point are tagged with a 'skip=true'
60
- * - when we reach the last point of a token, we consider it's value constant going forward with the other token
61
- * As a result the variance of those returns will be underestimated.
62
- * @param startIndexIn The tokenIn historical data's last valid index
63
- * @param startIndexOut The tokenOut historical data's last valid index
64
- * @param timestampsIn The timestamps corresponding to the tokenIn's historical prices
65
- * @param timestampsOut The timestamps corresponding to the tokenOut's historical prices
66
- * @return skip The 'skip' tag
67
- * @return startIndexIn The updated startIndexIn
68
- * @return startIndexOut The updated startIndexOut
69
- */
70
- static getNextSample(startIndexIn: number, startIndexOut: number, timestampsIn: bigint[], timestampsOut: bigint[]): [boolean, number, number];
71
- /**
72
- * @notice Consolidate the last valid indexes of tokenIn and tokenOut
73
- * @param hpDataIn Historical prices data of tokenIn
74
- * @param hpDataOut Historical prices data of tokenOut
75
- */
76
- static consolidateStartIndices(hpDataIn: Struct.HistoricalPricesData, hpDataOut: Struct.HistoricalPricesData): void;
77
- }