@paraswap/dex-lib 4.8.0 → 4.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (340) hide show
  1. package/build/dex/ekubo/ekubo.js +6 -1
  2. package/build/dex/ekubo/ekubo.js.map +1 -1
  3. package/build/dex/ekubo/pools/base.js +1 -0
  4. package/build/dex/ekubo/pools/base.js.map +1 -1
  5. package/build/dex/ekubo/pools/full-range.js +1 -0
  6. package/build/dex/ekubo/pools/full-range.js.map +1 -1
  7. package/build/dex/ekubo/pools/twamm.js +1 -0
  8. package/build/dex/ekubo/pools/twamm.js.map +1 -1
  9. package/build/dex/wombat/config.js +12 -0
  10. package/build/dex/wombat/config.js.map +1 -1
  11. package/package.json +1 -1
  12. package/build/abi/PendleRouterStatic.json +0 -19
  13. package/build/abi/apex-defi/ApexDefiFactory.abi.json +0 -1749
  14. package/build/abi/apex-defi/ApexDefiRouter.abi.json +0 -1120
  15. package/build/abi/apex-defi/ApexDefiToken.abi.json +0 -229
  16. package/build/abi/apex-defi/ApexDefiWrapper.abi.json +0 -92
  17. package/build/abi/apex-defi/ApexDefiWrapperFactory.abi.json +0 -1107
  18. package/build/abi/ekubo-v3/core.json +0 -797
  19. package/build/abi/ekubo-v3/mev-capture-router.json +0 -936
  20. package/build/abi/ekubo-v3/quote-data-fetcher.json +0 -161
  21. package/build/abi/ekubo-v3/twamm-data-fetcher.json +0 -216
  22. package/build/abi/ekubo-v3/twamm.json +0 -613
  23. package/build/abi/idle-dao/idle-cdo-factory.json +0 -38
  24. package/build/abi/idle-dao/idle-cdo.json +0 -1245
  25. package/build/abi/infusion/InfusionFactory.json +0 -147
  26. package/build/abi/infusion/InfusionPair.json +0 -658
  27. package/build/abi/infusion/InfusionRouter.json +0 -442
  28. package/build/abi/maker-psm/pot.json +0 -322
  29. package/build/abi/maker-psm/psm.json +0 -243
  30. package/build/abi/maker-psm/vat.json +0 -363
  31. package/build/abi/nomiswap-v2/nomiswap-v2-pool.json +0 -773
  32. package/build/abi/pangolin-v3/PangolinV3StateMulticall.abi.json +0 -796
  33. package/build/abi/pendle/pendle-deployer.abi.json +0 -520
  34. package/build/abi/pendle/pendle-oracle.abi.json +0 -413
  35. package/build/abi/quick-perps/fast-price-events.json +0 -70
  36. package/build/abi/quick-perps/fast-price-feed.json +0 -741
  37. package/build/abi/quick-perps/reader.json +0 -313
  38. package/build/abi/quick-perps/vault-price-feed.json +0 -323
  39. package/build/abi/quick-perps/vault.json +0 -1953
  40. package/build/abi/ring-v2/few-wrapped-token.json +0 -587
  41. package/build/abi/ring-v2/ring-v2-factory.json +0 -125
  42. package/build/abi/ring-v2/ring-v2-pool.json +0 -461
  43. package/build/abi/ring-v2/ring-v2-router.json +0 -332
  44. package/build/abi/stabull/stabull-curve.json +0 -738
  45. package/build/abi/stabull/stabull-router.json +0 -76
  46. package/build/abi/uniswap-v2/excalibur-pool.json +0 -881
  47. package/build/abi/uniswap-v2/mdex-factory.json +0 -759
  48. package/build/abi/uniswap-v4/hooks/SpotDynamicFeeManager.json +0 -26
  49. package/build/abi/uniswap-v4/hooks/SpotHook.json +0 -54
  50. package/build/abi/uniswap-v4/hooks/SpotPolicyManager.json +0 -45
  51. package/build/abi/uniswap-v4/hooks/cabalcoin-hook.abi.json +0 -682
  52. package/build/abi/uniswap-v4/hooks/fee-hook.abi.json +0 -1335
  53. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.d.ts +0 -29
  54. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.js +0 -153
  55. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.js.map +0 -1
  56. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.d.ts +0 -40
  57. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.js +0 -323
  58. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.js.map +0 -1
  59. package/build/dex/aave-pt-to-underlying/config.d.ts +0 -3
  60. package/build/dex/aave-pt-to-underlying/config.js +0 -24
  61. package/build/dex/aave-pt-to-underlying/config.js.map +0 -1
  62. package/build/dex/aave-pt-to-underlying/constants.d.ts +0 -2
  63. package/build/dex/aave-pt-to-underlying/constants.js +0 -6
  64. package/build/dex/aave-pt-to-underlying/constants.js.map +0 -1
  65. package/build/dex/aave-pt-to-underlying/types.d.ts +0 -24
  66. package/build/dex/aave-pt-to-underlying/types.js +0 -3
  67. package/build/dex/aave-pt-to-underlying/types.js.map +0 -1
  68. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.d.ts +0 -39
  69. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.js +0 -244
  70. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.js.map +0 -1
  71. package/build/dex/aave-pt-to-usdc/config.d.ts +0 -3
  72. package/build/dex/aave-pt-to-usdc/config.js +0 -47
  73. package/build/dex/aave-pt-to-usdc/config.js.map +0 -1
  74. package/build/dex/aave-pt-to-usdc/constants.d.ts +0 -2
  75. package/build/dex/aave-pt-to-usdc/constants.js +0 -6
  76. package/build/dex/aave-pt-to-usdc/constants.js.map +0 -1
  77. package/build/dex/aave-pt-to-usdc/types.d.ts +0 -22
  78. package/build/dex/aave-pt-to-usdc/types.js +0 -3
  79. package/build/dex/aave-pt-to-usdc/types.js.map +0 -1
  80. package/build/dex/apex-defi/apex-defi-factory.d.ts +0 -26
  81. package/build/dex/apex-defi/apex-defi-factory.js +0 -53
  82. package/build/dex/apex-defi/apex-defi-factory.js.map +0 -1
  83. package/build/dex/apex-defi/apex-defi-pool.d.ts +0 -55
  84. package/build/dex/apex-defi/apex-defi-pool.js +0 -247
  85. package/build/dex/apex-defi/apex-defi-pool.js.map +0 -1
  86. package/build/dex/apex-defi/apex-defi-wrapper-factory.d.ts +0 -57
  87. package/build/dex/apex-defi/apex-defi-wrapper-factory.js +0 -250
  88. package/build/dex/apex-defi/apex-defi-wrapper-factory.js.map +0 -1
  89. package/build/dex/apex-defi/apex-defi.d.ts +0 -97
  90. package/build/dex/apex-defi/apex-defi.js +0 -1021
  91. package/build/dex/apex-defi/apex-defi.js.map +0 -1
  92. package/build/dex/apex-defi/config.d.ts +0 -4
  93. package/build/dex/apex-defi/config.js +0 -138
  94. package/build/dex/apex-defi/config.js.map +0 -1
  95. package/build/dex/apex-defi/types.d.ts +0 -32
  96. package/build/dex/apex-defi/types.js +0 -3
  97. package/build/dex/apex-defi/types.js.map +0 -1
  98. package/build/dex/apex-defi/utils.d.ts +0 -46
  99. package/build/dex/apex-defi/utils.js +0 -133
  100. package/build/dex/apex-defi/utils.js.map +0 -1
  101. package/build/dex/ekubo/pools/base-pool.d.ts +0 -47
  102. package/build/dex/ekubo/pools/base-pool.js +0 -184
  103. package/build/dex/ekubo/pools/base-pool.js.map +0 -1
  104. package/build/dex/ekubo/pools/iface.d.ts +0 -46
  105. package/build/dex/ekubo/pools/iface.js +0 -75
  106. package/build/dex/ekubo/pools/iface.js.map +0 -1
  107. package/build/dex/ekubo/pools/math/price.d.ts +0 -7
  108. package/build/dex/ekubo/pools/math/price.js +0 -112
  109. package/build/dex/ekubo/pools/math/price.js.map +0 -1
  110. package/build/dex/ekubo/pools/oracle-pool.d.ts +0 -10
  111. package/build/dex/ekubo/pools/oracle-pool.js +0 -19
  112. package/build/dex/ekubo/pools/oracle-pool.js.map +0 -1
  113. package/build/dex/ekubo/pools/pool-utils.d.ts +0 -44
  114. package/build/dex/ekubo/pools/pool-utils.js +0 -240
  115. package/build/dex/ekubo/pools/pool-utils.js.map +0 -1
  116. package/build/dex/ekubo-v3/config.d.ts +0 -13
  117. package/build/dex/ekubo-v3/config.js +0 -23
  118. package/build/dex/ekubo-v3/config.js.map +0 -1
  119. package/build/dex/ekubo-v3/ekubo-v3-pool-manager.d.ts +0 -34
  120. package/build/dex/ekubo-v3/ekubo-v3-pool-manager.js +0 -421
  121. package/build/dex/ekubo-v3/ekubo-v3-pool-manager.js.map +0 -1
  122. package/build/dex/ekubo-v3/ekubo-v3.d.ts +0 -38
  123. package/build/dex/ekubo-v3/ekubo-v3.js +0 -274
  124. package/build/dex/ekubo-v3/ekubo-v3.js.map +0 -1
  125. package/build/dex/ekubo-v3/pools/base.d.ts +0 -42
  126. package/build/dex/ekubo-v3/pools/base.js +0 -307
  127. package/build/dex/ekubo-v3/pools/base.js.map +0 -1
  128. package/build/dex/ekubo-v3/pools/full-range.d.ts +0 -25
  129. package/build/dex/ekubo-v3/pools/full-range.js +0 -105
  130. package/build/dex/ekubo-v3/pools/full-range.js.map +0 -1
  131. package/build/dex/ekubo-v3/pools/math/constants.d.ts +0 -12
  132. package/build/dex/ekubo-v3/pools/math/constants.js +0 -16
  133. package/build/dex/ekubo-v3/pools/math/constants.js.map +0 -1
  134. package/build/dex/ekubo-v3/pools/math/delta.d.ts +0 -2
  135. package/build/dex/ekubo-v3/pools/math/delta.js +0 -51
  136. package/build/dex/ekubo-v3/pools/math/delta.js.map +0 -1
  137. package/build/dex/ekubo-v3/pools/math/sqrt-ratio.d.ts +0 -8
  138. package/build/dex/ekubo-v3/pools/math/sqrt-ratio.js +0 -113
  139. package/build/dex/ekubo-v3/pools/math/sqrt-ratio.js.map +0 -1
  140. package/build/dex/ekubo-v3/pools/math/swap.d.ts +0 -18
  141. package/build/dex/ekubo-v3/pools/math/swap.js +0 -128
  142. package/build/dex/ekubo-v3/pools/math/swap.js.map +0 -1
  143. package/build/dex/ekubo-v3/pools/math/tick.d.ts +0 -8
  144. package/build/dex/ekubo-v3/pools/math/tick.js +0 -129
  145. package/build/dex/ekubo-v3/pools/math/tick.js.map +0 -1
  146. package/build/dex/ekubo-v3/pools/math/twamm/exp2.d.ts +0 -1
  147. package/build/dex/ekubo-v3/pools/math/twamm/exp2.js +0 -86
  148. package/build/dex/ekubo-v3/pools/math/twamm/exp2.js.map +0 -1
  149. package/build/dex/ekubo-v3/pools/math/twamm/sqrt-ratio.d.ts +0 -1
  150. package/build/dex/ekubo-v3/pools/math/twamm/sqrt-ratio.js +0 -56
  151. package/build/dex/ekubo-v3/pools/math/twamm/sqrt-ratio.js.map +0 -1
  152. package/build/dex/ekubo-v3/pools/mev-capture.d.ts +0 -8
  153. package/build/dex/ekubo-v3/pools/mev-capture.js +0 -42
  154. package/build/dex/ekubo-v3/pools/mev-capture.js.map +0 -1
  155. package/build/dex/ekubo-v3/pools/oracle.d.ts +0 -8
  156. package/build/dex/ekubo-v3/pools/oracle.js +0 -18
  157. package/build/dex/ekubo-v3/pools/oracle.js.map +0 -1
  158. package/build/dex/ekubo-v3/pools/pool.d.ts +0 -56
  159. package/build/dex/ekubo-v3/pools/pool.js +0 -88
  160. package/build/dex/ekubo-v3/pools/pool.js.map +0 -1
  161. package/build/dex/ekubo-v3/pools/stableswap.d.ts +0 -22
  162. package/build/dex/ekubo-v3/pools/stableswap.js +0 -123
  163. package/build/dex/ekubo-v3/pools/stableswap.js.map +0 -1
  164. package/build/dex/ekubo-v3/pools/twamm.d.ts +0 -40
  165. package/build/dex/ekubo-v3/pools/twamm.js +0 -265
  166. package/build/dex/ekubo-v3/pools/twamm.js.map +0 -1
  167. package/build/dex/ekubo-v3/pools/utils.d.ts +0 -62
  168. package/build/dex/ekubo-v3/pools/utils.js +0 -160
  169. package/build/dex/ekubo-v3/pools/utils.js.map +0 -1
  170. package/build/dex/ekubo-v3/types.d.ts +0 -58
  171. package/build/dex/ekubo-v3/types.js +0 -3
  172. package/build/dex/ekubo-v3/types.js.map +0 -1
  173. package/build/dex/ekubo-v3/utils.d.ts +0 -10
  174. package/build/dex/ekubo-v3/utils.js +0 -54
  175. package/build/dex/ekubo-v3/utils.js.map +0 -1
  176. package/build/dex/idle-dao/config.d.ts +0 -5
  177. package/build/dex/idle-dao/config.js +0 -24
  178. package/build/dex/idle-dao/config.js.map +0 -1
  179. package/build/dex/idle-dao/idle-dao.d.ts +0 -42
  180. package/build/dex/idle-dao/idle-dao.js +0 -279
  181. package/build/dex/idle-dao/idle-dao.js.map +0 -1
  182. package/build/dex/idle-dao/token_list.d.ts +0 -4
  183. package/build/dex/idle-dao/token_list.js +0 -289
  184. package/build/dex/idle-dao/token_list.js.map +0 -1
  185. package/build/dex/idle-dao/tokens.d.ts +0 -9
  186. package/build/dex/idle-dao/tokens.js +0 -68
  187. package/build/dex/idle-dao/tokens.js.map +0 -1
  188. package/build/dex/idle-dao/types.d.ts +0 -35
  189. package/build/dex/idle-dao/types.js +0 -11
  190. package/build/dex/idle-dao/types.js.map +0 -1
  191. package/build/dex/idle-dao/utils.d.ts +0 -8
  192. package/build/dex/idle-dao/utils.js +0 -149
  193. package/build/dex/idle-dao/utils.js.map +0 -1
  194. package/build/dex/infusion/config.d.ts +0 -3
  195. package/build/dex/infusion/config.js +0 -20
  196. package/build/dex/infusion/config.js.map +0 -1
  197. package/build/dex/infusion/infusion-stable-pool.d.ts +0 -4
  198. package/build/dex/infusion/infusion-stable-pool.js +0 -74
  199. package/build/dex/infusion/infusion-stable-pool.js.map +0 -1
  200. package/build/dex/infusion/infusion.d.ts +0 -51
  201. package/build/dex/infusion/infusion.js +0 -461
  202. package/build/dex/infusion/infusion.js.map +0 -1
  203. package/build/dex/infusion/types.d.ts +0 -45
  204. package/build/dex/infusion/types.js +0 -3
  205. package/build/dex/infusion/types.js.map +0 -1
  206. package/build/dex/infusion/utils/isStablePair.d.ts +0 -2
  207. package/build/dex/infusion/utils/isStablePair.js +0 -18
  208. package/build/dex/infusion/utils/isStablePair.js.map +0 -1
  209. package/build/dex/maker-psm/config.d.ts +0 -11
  210. package/build/dex/maker-psm/config.js +0 -53
  211. package/build/dex/maker-psm/config.js.map +0 -1
  212. package/build/dex/maker-psm/maker-psm-event-pool.d.ts +0 -43
  213. package/build/dex/maker-psm/maker-psm-event-pool.js +0 -132
  214. package/build/dex/maker-psm/maker-psm-event-pool.js.map +0 -1
  215. package/build/dex/maker-psm/maker-psm.d.ts +0 -103
  216. package/build/dex/maker-psm/maker-psm.js +0 -493
  217. package/build/dex/maker-psm/maker-psm.js.map +0 -1
  218. package/build/dex/maker-psm/types.d.ts +0 -39
  219. package/build/dex/maker-psm/types.js +0 -3
  220. package/build/dex/maker-psm/types.js.map +0 -1
  221. package/build/dex/miro-migrator/miro-migrator-state.d.ts +0 -27
  222. package/build/dex/miro-migrator/miro-migrator-state.js +0 -89
  223. package/build/dex/miro-migrator/miro-migrator-state.js.map +0 -1
  224. package/build/dex/quick-perps/config.d.ts +0 -11
  225. package/build/dex/quick-perps/config.js +0 -27
  226. package/build/dex/quick-perps/config.js.map +0 -1
  227. package/build/dex/quick-perps/fast-price-feed.d.ts +0 -26
  228. package/build/dex/quick-perps/fast-price-feed.js +0 -184
  229. package/build/dex/quick-perps/fast-price-feed.js.map +0 -1
  230. package/build/dex/quick-perps/pool.d.ts +0 -21
  231. package/build/dex/quick-perps/pool.js +0 -229
  232. package/build/dex/quick-perps/pool.js.map +0 -1
  233. package/build/dex/quick-perps/quick-perps.d.ts +0 -53
  234. package/build/dex/quick-perps/quick-perps.js +0 -247
  235. package/build/dex/quick-perps/quick-perps.js.map +0 -1
  236. package/build/dex/quick-perps/types.d.ts +0 -98
  237. package/build/dex/quick-perps/types.js +0 -3
  238. package/build/dex/quick-perps/types.js.map +0 -1
  239. package/build/dex/quick-perps/usdq.d.ts +0 -15
  240. package/build/dex/quick-perps/usdq.js +0 -62
  241. package/build/dex/quick-perps/usdq.js.map +0 -1
  242. package/build/dex/quick-perps/vault-price-feed.d.ts +0 -43
  243. package/build/dex/quick-perps/vault-price-feed.js +0 -203
  244. package/build/dex/quick-perps/vault-price-feed.js.map +0 -1
  245. package/build/dex/quick-perps/vault-utils.d.ts +0 -8
  246. package/build/dex/quick-perps/vault-utils.js +0 -42
  247. package/build/dex/quick-perps/vault-utils.js.map +0 -1
  248. package/build/dex/quick-perps/vault.d.ts +0 -46
  249. package/build/dex/quick-perps/vault.js +0 -182
  250. package/build/dex/quick-perps/vault.js.map +0 -1
  251. package/build/dex/solidly/forks-override/aerodrome.d.ts +0 -14
  252. package/build/dex/solidly/forks-override/aerodrome.js +0 -50
  253. package/build/dex/solidly/forks-override/aerodrome.js.map +0 -1
  254. package/build/dex/solidly/forks-override/chronos.d.ts +0 -23
  255. package/build/dex/solidly/forks-override/chronos.js +0 -141
  256. package/build/dex/solidly/forks-override/chronos.js.map +0 -1
  257. package/build/dex/solidly/forks-override/usdfi.d.ts +0 -8
  258. package/build/dex/solidly/forks-override/usdfi.js +0 -15
  259. package/build/dex/solidly/forks-override/usdfi.js.map +0 -1
  260. package/build/dex/solidly/forks-override/velocimeter.d.ts +0 -23
  261. package/build/dex/solidly/forks-override/velocimeter.js +0 -77
  262. package/build/dex/solidly/forks-override/velocimeter.js.map +0 -1
  263. package/build/dex/stabull/config.d.ts +0 -3
  264. package/build/dex/stabull/config.js +0 -177
  265. package/build/dex/stabull/config.js.map +0 -1
  266. package/build/dex/stabull/stabull-pool.d.ts +0 -46
  267. package/build/dex/stabull/stabull-pool.js +0 -113
  268. package/build/dex/stabull/stabull-pool.js.map +0 -1
  269. package/build/dex/stabull/stabull.d.ts +0 -55
  270. package/build/dex/stabull/stabull.js +0 -286
  271. package/build/dex/stabull/stabull.js.map +0 -1
  272. package/build/dex/stabull/types.d.ts +0 -21
  273. package/build/dex/stabull/types.js +0 -3
  274. package/build/dex/stabull/types.js.map +0 -1
  275. package/build/dex/uniswap-v2/dfyn.d.ts +0 -19
  276. package/build/dex/uniswap-v2/dfyn.js +0 -61
  277. package/build/dex/uniswap-v2/dfyn.js.map +0 -1
  278. package/build/dex/uniswap-v2/excalibur.d.ts +0 -24
  279. package/build/dex/uniswap-v2/excalibur.js +0 -47
  280. package/build/dex/uniswap-v2/excalibur.js.map +0 -1
  281. package/build/dex/uniswap-v2/mdex.d.ts +0 -24
  282. package/build/dex/uniswap-v2/mdex.js +0 -50
  283. package/build/dex/uniswap-v2/mdex.js.map +0 -1
  284. package/build/dex/uniswap-v2/nomiswap-v2.d.ts +0 -24
  285. package/build/dex/uniswap-v2/nomiswap-v2.js +0 -57
  286. package/build/dex/uniswap-v2/nomiswap-v2.js.map +0 -1
  287. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.d.ts +0 -4
  288. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.js +0 -56
  289. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.js.map +0 -1
  290. package/build/dex/uniswap-v4/contract-math/Position.d.ts +0 -9
  291. package/build/dex/uniswap-v4/contract-math/Position.js +0 -39
  292. package/build/dex/uniswap-v4/contract-math/Position.js.map +0 -1
  293. package/build/dex/uniswap-v4/hooks/arena.d.ts +0 -6
  294. package/build/dex/uniswap-v4/hooks/arena.js +0 -10
  295. package/build/dex/uniswap-v4/hooks/arena.js.map +0 -1
  296. package/build/dex/uniswap-v4/hooks/base-fee/base-fee-hook.d.ts +0 -0
  297. package/build/dex/uniswap-v4/hooks/base-fee/base-fee-hook.js +0 -2
  298. package/build/dex/uniswap-v4/hooks/base-fee/base-fee-hook.js.map +0 -1
  299. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.d.ts +0 -7
  300. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.js +0 -28
  301. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.js.map +0 -1
  302. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.d.ts +0 -0
  303. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.js +0 -2
  304. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.js.map +0 -1
  305. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.d.ts +0 -7
  306. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.js +0 -28
  307. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.js.map +0 -1
  308. package/build/dex/uniswap-v4/hooks/fee-hook/types.d.ts +0 -0
  309. package/build/dex/uniswap-v4/hooks/fee-hook/types.js +0 -2
  310. package/build/dex/uniswap-v4/hooks/fee-hook/types.js.map +0 -1
  311. package/build/dex/uniswap-v4/hooks/index.d.ts +0 -1
  312. package/build/dex/uniswap-v4/hooks/index.js +0 -18
  313. package/build/dex/uniswap-v4/hooks/index.js.map +0 -1
  314. package/build/dex/uniswap-v4/hooks/spot.d.ts +0 -15
  315. package/build/dex/uniswap-v4/hooks/spot.js +0 -109
  316. package/build/dex/uniswap-v4/hooks/spot.js.map +0 -1
  317. package/build/dex/uniswap-v4/hooks/template.d.ts +0 -150
  318. package/build/dex/uniswap-v4/hooks/template.js +0 -104
  319. package/build/dex/uniswap-v4/hooks/template.js.map +0 -1
  320. package/build/dex/usdc-transmuter/usdc-transmuter-pool.d.ts +0 -26
  321. package/build/dex/usdc-transmuter/usdc-transmuter-pool.js +0 -75
  322. package/build/dex/usdc-transmuter/usdc-transmuter-pool.js.map +0 -1
  323. package/build/dex/usual/usual-usdc-usdc.d.ts +0 -17
  324. package/build/dex/usual/usual-usdc-usdc.js +0 -59
  325. package/build/dex/usual/usual-usdc-usdc.js.map +0 -1
  326. package/build/dex/yo/config.d.ts +0 -3
  327. package/build/dex/yo/config.js +0 -21
  328. package/build/dex/yo/config.js.map +0 -1
  329. package/build/dex/yo/types.d.ts +0 -13
  330. package/build/dex/yo/types.js +0 -3
  331. package/build/dex/yo/types.js.map +0 -1
  332. package/build/dex/yo/yo-pool.d.ts +0 -13
  333. package/build/dex/yo/yo-pool.js +0 -26
  334. package/build/dex/yo/yo-pool.js.map +0 -1
  335. package/build/dex/yo/yo.d.ts +0 -39
  336. package/build/dex/yo/yo.js +0 -248
  337. package/build/dex/yo/yo.js.map +0 -1
  338. package/build/implementations/api-paraswap-sdk.d.ts +0 -25
  339. package/build/implementations/api-paraswap-sdk.js +0 -102
  340. package/build/implementations/api-paraswap-sdk.js.map +0 -1
@@ -1,55 +0,0 @@
1
- import { Token, Address, ExchangePrices, PoolPrices, AdapterExchangeParam, PoolLiquidity, Logger, DexExchangeParam } from '../../types';
2
- import { SwapSide, Network } from '../../constants';
3
- import { IDex } from '../../dex/idex';
4
- import { IDexHelper } from '../../dex-helper/idex-helper';
5
- import { StabullData } from './types';
6
- import { SimpleExchange } from '../simple-exchange';
7
- import { ethers } from 'ethers';
8
- export declare class Stabull extends SimpleExchange implements IDex<StabullData> {
9
- readonly network: Network;
10
- readonly dexKey: string;
11
- readonly dexHelper: IDexHelper;
12
- protected poolIface: ethers.utils.Interface;
13
- protected routerIface: ethers.utils.Interface;
14
- protected routerAddress: string;
15
- protected quoteCurrency: string;
16
- private pools;
17
- private poolsConfig;
18
- readonly hasConstantPriceLargeAmounts = false;
19
- readonly needWrapNative = true;
20
- readonly isFeeOnTransferSupported = false;
21
- static dexKeysWithNetwork: {
22
- key: string;
23
- networks: Network[];
24
- }[];
25
- logger: Logger;
26
- constructor(network: Network, dexKey: string, dexHelper: IDexHelper, poolIface?: ethers.utils.Interface, routerIface?: ethers.utils.Interface, routerAddress?: string, quoteCurrency?: string);
27
- getAdapters(side: SwapSide): {
28
- name: string;
29
- index: number;
30
- }[] | null;
31
- getPoolIdentifiers(srcToken: Token, destToken: Token, side: SwapSide, blockNumber: number): Promise<string[]>;
32
- getPricesVolume(srcToken: Token, destToken: Token, amounts: bigint[], side: SwapSide, blockNumber: number, limitPools?: string[]): Promise<null | ExchangePrices<StabullData>>;
33
- getCalldataGasCost(poolPrices: PoolPrices<StabullData>): number | number[];
34
- getAdapterParam: (srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: StabullData, side: SwapSide) => AdapterExchangeParam;
35
- updatePoolState(): Promise<void>;
36
- getTopPoolsForToken(tokenAddress: Address, limit: number): Promise<PoolLiquidity[]>;
37
- /**
38
- * Retrieves the decentralized exchange (DEX) parameters for a swap operation.
39
- *
40
- * @param srcToken - The address of the source token.
41
- * @param destToken - The address of the destination token.
42
- * @param srcAmount - The amount of the source token to swap.
43
- * @param destAmount - The desired amount of the destination token.
44
- * @param recipient - The address of the recipient.
45
- * @param data - Additional data required for the swap.
46
- * @param side - The side of the swap (SELL or BUY).
47
- * @param options - Options for global tokens.
48
- * @param executorAddress - The address of the executor.
49
- * @returns A promise that resolves to the DEX exchange parameters.
50
- */
51
- getDexParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, recipient: string, data: StabullData, side: SwapSide, options: {
52
- isGlobalSrcToken: boolean;
53
- isGlobalDestToken: boolean;
54
- }, executorAddress: string): Promise<DexExchangeParam>;
55
- }
@@ -1,286 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.Stabull = void 0;
40
- const constants_1 = require("../../constants");
41
- const CALLDATA_GAS_COST = __importStar(require("../../calldata-gas-cost"));
42
- const utils_1 = require("../../utils");
43
- const stabull_pool_1 = require("./stabull-pool");
44
- const simple_exchange_1 = require("../simple-exchange");
45
- const config_1 = require("./config");
46
- const stabull_curve_json_1 = __importDefault(require("../../abi/stabull/stabull-curve.json"));
47
- const stabull_router_json_1 = __importDefault(require("../../abi/stabull/stabull-router.json"));
48
- const ethers_1 = require("ethers");
49
- const decoders_1 = require("../../lib/decoders");
50
- const bigint_constants_1 = require("../../bigint-constants");
51
- class Stabull extends simple_exchange_1.SimpleExchange {
52
- network;
53
- dexKey;
54
- dexHelper;
55
- poolIface;
56
- routerIface;
57
- routerAddress;
58
- quoteCurrency;
59
- pools = {};
60
- poolsConfig;
61
- hasConstantPriceLargeAmounts = false;
62
- needWrapNative = true;
63
- isFeeOnTransferSupported = false;
64
- static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.StabullConfig);
65
- logger;
66
- constructor(network, dexKey, dexHelper, poolIface = new ethers_1.ethers.utils.Interface(stabull_curve_json_1.default), routerIface = new ethers_1.ethers.utils.Interface(stabull_router_json_1.default), routerAddress = config_1.StabullConfig.Stabull[network].router, quoteCurrency = config_1.StabullConfig.Stabull[network].quoteCurrency) {
67
- super(dexHelper, dexKey);
68
- this.network = network;
69
- this.dexKey = dexKey;
70
- this.dexHelper = dexHelper;
71
- this.poolIface = poolIface;
72
- this.routerIface = routerIface;
73
- this.routerAddress = routerAddress;
74
- this.quoteCurrency = quoteCurrency;
75
- this.logger = dexHelper.getLogger(dexKey);
76
- this.poolsConfig = config_1.StabullConfig.Stabull[network].pools;
77
- //Iterate over pools and Initialize event pools
78
- Object.keys(this.poolsConfig).forEach(poolAddress => {
79
- const pool = this.poolsConfig[poolAddress];
80
- const tokenAddresses = pool.tokens.map(t => t.address);
81
- // Initialize event pools
82
- this.pools[poolAddress] = new stabull_pool_1.StabullEventPool(dexKey, network, dexHelper, poolAddress, tokenAddresses, this.logger);
83
- });
84
- }
85
- // Legacy: was only used for V5
86
- // Returns the list of contract adapters (name and index)
87
- // for a buy/sell. Return null if there are no adapters.
88
- getAdapters(side) {
89
- return null;
90
- }
91
- // Returns list of pool identifiers that can be used
92
- // for a given swap. poolIdentifiers must be unique
93
- // across DEXes. It is recommended to use
94
- // ${dexKey}_${poolAddress} as a poolIdentifier
95
- async getPoolIdentifiers(srcToken, destToken, side, blockNumber) {
96
- const pool = Object.entries(this.poolsConfig).find(([, pool]) => {
97
- const tokenAddresses = pool.tokens.map(t => t.address.toLowerCase());
98
- return (tokenAddresses.includes(srcToken.address.toLowerCase()) &&
99
- tokenAddresses.includes(destToken.address.toLowerCase()));
100
- })?.[0];
101
- return pool ? [`${this.dexKey}_${pool}`.toLowerCase()] : [];
102
- }
103
- // Returns pool prices for amounts.
104
- // If limitPools is defined only pools in limitPools
105
- // should be used. If limitPools is undefined then
106
- // any pools can be used.
107
- async getPricesVolume(srcToken, destToken, amounts, side, blockNumber, limitPools) {
108
- const poolIdentifiers = await this.getPoolIdentifiers(srcToken, destToken, side, blockNumber);
109
- if (poolIdentifiers.length === 0)
110
- return null;
111
- const poolIdentifier = poolIdentifiers[0];
112
- const poolAddress = poolIdentifier.split('_')[1];
113
- if (!poolAddress) {
114
- this.logger.debug(`Invalid pool identifier: ${poolIdentifier}`);
115
- return null;
116
- }
117
- const isSell = side === constants_1.SwapSide.SELL;
118
- const methodName = isSell ? 'viewOriginSwap' : 'viewTargetSwap';
119
- try {
120
- const unitAmount = bigint_constants_1.BI_POWS[isSell ? srcToken.decimals : destToken.decimals];
121
- const queryAmounts = [unitAmount, ...amounts];
122
- const callData = queryAmounts.map(amount => ({
123
- target: poolAddress,
124
- callData: this.poolIface.encodeFunctionData(methodName, [
125
- srcToken.address,
126
- destToken.address,
127
- amount.toString(),
128
- ]),
129
- decodeFunction: decoders_1.uint256ToBigInt,
130
- }));
131
- const quotes = await this.dexHelper.multiWrapper.tryAggregate(false, callData, blockNumber, this.dexHelper.multiWrapper.defaultBatchSize, false);
132
- const unit = quotes[0].success ? quotes[0].returnData : 0n;
133
- const prices = quotes.slice(1).map(q => (q.success ? q.returnData : 0n));
134
- return [
135
- {
136
- unit,
137
- prices,
138
- data: { poolAddress },
139
- exchange: this.dexKey,
140
- gasCost: 150000,
141
- poolAddresses: [poolAddress],
142
- poolIdentifiers: [poolIdentifier],
143
- },
144
- ];
145
- }
146
- catch (e) {
147
- this.logger.error('Failed to get prices', e);
148
- return null;
149
- }
150
- }
151
- // Returns estimated gas cost of calldata for this DEX in multiSwap
152
- getCalldataGasCost(poolPrices) {
153
- return (CALLDATA_GAS_COST.DEX_OVERHEAD +
154
- CALLDATA_GAS_COST.FUNCTION_SELECTOR +
155
- CALLDATA_GAS_COST.ADDRESS * 2 +
156
- CALLDATA_GAS_COST.AMOUNT * 2 +
157
- CALLDATA_GAS_COST.TIMESTAMP);
158
- }
159
- // Encode params required by the exchange adapter
160
- // V5: Used for multiSwap, buy & megaSwap
161
- // V6: Not used, can be left blank
162
- // Hint: abiCoder.encodeParameter() could be useful
163
- // Update this method to use the correct AbiCoder syntax
164
- getAdapterParam = (srcToken, destToken, srcAmount, destAmount, data, side) => {
165
- return {
166
- targetExchange: config_1.StabullConfig.Stabull[this.network].router,
167
- payload: '0x',
168
- networkFee: '0',
169
- };
170
- };
171
- // This is called once before getTopPoolsForToken is
172
- // called for multiple tokens. This can be helpful to
173
- // update common state required for calculating
174
- // getTopPoolsForToken. It is optional for a DEX
175
- // to implement this
176
- async updatePoolState() {
177
- const blockNumber = await this.dexHelper.web3Provider.eth.getBlockNumber();
178
- await Promise.all(Object.values(this.pools).map(async (poolInstance) => {
179
- const state = await poolInstance.generateState(blockNumber);
180
- poolInstance.setState(state, blockNumber);
181
- }));
182
- }
183
- // Returns list of top pools based on liquidity. Max
184
- // limit number pools should be returned.
185
- async getTopPoolsForToken(tokenAddress, limit) {
186
- const lowerToken = tokenAddress.toLowerCase();
187
- const poolsWithToken = [];
188
- for (const [poolAddress, pool] of Object.entries(this.pools)) {
189
- const tokenIndex = pool.addressesSubscribed.findIndex(t => t.toLowerCase() === lowerToken);
190
- if (tokenIndex === -1)
191
- continue;
192
- poolsWithToken.push({
193
- pool,
194
- tokenIndex,
195
- connectorIndex: 1 - tokenIndex,
196
- poolConfig: this.poolsConfig[poolAddress],
197
- });
198
- }
199
- if (poolsWithToken.length === 0)
200
- return [];
201
- const tokenToAmount = new Map();
202
- for (const { pool, tokenIndex, connectorIndex } of poolsWithToken) {
203
- const state = pool.getStaleState();
204
- if (!state)
205
- continue;
206
- const token = pool.addressesSubscribed[tokenIndex];
207
- const connector = pool.addressesSubscribed[connectorIndex];
208
- tokenToAmount.set(token, state[tokenIndex === 0 ? 'reserves0' : 'reserves1'] ?? 0n);
209
- tokenToAmount.set(connector, state[connectorIndex === 0 ? 'reserves0' : 'reserves1'] ?? 0n);
210
- }
211
- const tokenAmountsArray = Array.from(tokenToAmount.entries());
212
- const usdAmounts = await this.dexHelper.getUsdTokenAmounts(tokenAmountsArray);
213
- const usdMap = new Map(tokenAmountsArray.map((t, i) => [t[0], usdAmounts[i]]));
214
- const relevantPools = poolsWithToken.map(({ pool, tokenIndex, connectorIndex, poolConfig }) => {
215
- const token = pool.addressesSubscribed[tokenIndex];
216
- const connector = pool.addressesSubscribed[connectorIndex];
217
- return {
218
- exchange: this.dexKey,
219
- address: pool.poolAddress,
220
- connectorTokens: [
221
- {
222
- address: connector,
223
- decimals: poolConfig.tokens[connectorIndex]?.decimals ?? 18,
224
- liquidityUSD: usdMap.get(connector) ?? 0,
225
- },
226
- ],
227
- liquidityUSD: usdMap.get(token) ?? 0,
228
- };
229
- });
230
- relevantPools.sort((a, b) => b.liquidityUSD - a.liquidityUSD);
231
- return relevantPools.slice(0, limit);
232
- }
233
- /**
234
- * Retrieves the decentralized exchange (DEX) parameters for a swap operation.
235
- *
236
- * @param srcToken - The address of the source token.
237
- * @param destToken - The address of the destination token.
238
- * @param srcAmount - The amount of the source token to swap.
239
- * @param destAmount - The desired amount of the destination token.
240
- * @param recipient - The address of the recipient.
241
- * @param data - Additional data required for the swap.
242
- * @param side - The side of the swap (SELL or BUY).
243
- * @param options - Options for global tokens.
244
- * @param executorAddress - The address of the executor.
245
- * @returns A promise that resolves to the DEX exchange parameters.
246
- */
247
- async getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side, options, executorAddress) {
248
- // For SELL operations, always use the router for swaps
249
- if (side === constants_1.SwapSide.SELL) {
250
- const swapData = this.routerIface.encodeFunctionData('originSwap', [
251
- this.quoteCurrency, // quoteCurrency
252
- srcToken, // origin
253
- destToken, // target
254
- srcAmount, // originAmount
255
- '1', // minTargetAmount - set to minimum to ensure execution
256
- (0, simple_exchange_1.getLocalDeadlineAsFriendlyPlaceholder)(), // deadline
257
- ]);
258
- return {
259
- needWrapNative: this.needWrapNative,
260
- dexFuncHasRecipient: false,
261
- exchangeData: swapData,
262
- targetExchange: this.routerAddress,
263
- spender: this.routerAddress,
264
- returnAmountPos: 0,
265
- };
266
- }
267
- // Direct swap case for BUY operations (one token must be quote currency)
268
- const swapData = this.poolIface.encodeFunctionData('targetSwap', [
269
- srcToken, // origin
270
- destToken, // target
271
- ethers_1.ethers.constants.MaxUint256.toString(), // maxOriginAmount
272
- destAmount, // targetAmount
273
- (0, simple_exchange_1.getLocalDeadlineAsFriendlyPlaceholder)(), // deadline
274
- ]);
275
- return {
276
- needWrapNative: this.needWrapNative,
277
- dexFuncHasRecipient: false,
278
- exchangeData: swapData,
279
- targetExchange: data.poolAddress,
280
- spender: data.poolAddress,
281
- returnAmountPos: 0,
282
- };
283
- }
284
- }
285
- exports.Stabull = Stabull;
286
- //# sourceMappingURL=stabull.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stabull.js","sourceRoot":"","sources":["../../../src/dex/stabull/stabull.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- export type PoolState = {
2
- reserves0: bigint;
3
- reserves1: bigint;
4
- };
5
- export type StabullData = {
6
- poolAddress: string;
7
- };
8
- export type TokenConfig = {
9
- address: string;
10
- decimals: number;
11
- };
12
- export type PoolsConfig = {
13
- [poolAddress: string]: {
14
- tokens: TokenConfig[];
15
- };
16
- };
17
- export type DexParams = {
18
- router: string;
19
- quoteCurrency: string;
20
- pools: PoolsConfig;
21
- };
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/stabull/types.ts"],"names":[],"mappings":""}
@@ -1,19 +0,0 @@
1
- import { UniswapV2 } from './uniswap-v2';
2
- import { Network, SwapSide } from '../../constants';
3
- import { Address, DexConfigMap, Token, ExchangePrices, DexExchangeParam } from '../../types';
4
- import { IDexHelper } from '../../dex-helper/index';
5
- import { DexParams, UniswapData, UniswapV2Data } from './types';
6
- import { NumberAsString } from '@paraswap/core';
7
- export declare const DfynConfig: DexConfigMap<DexParams>;
8
- export declare class Dfyn extends UniswapV2 {
9
- protected network: Network;
10
- protected dexHelper: IDexHelper;
11
- static dexKeysWithNetwork: {
12
- key: string;
13
- networks: Network[];
14
- }[];
15
- constructor(network: Network, dexKey: string, dexHelper: IDexHelper);
16
- getPoolIdentifiers(from: Token, to: Token, side: SwapSide, blockNumber: number): Promise<string[]>;
17
- getPricesVolume(from: Token, to: Token, amounts: bigint[], side: SwapSide, blockNumber: number, limitPools?: string[]): Promise<ExchangePrices<UniswapV2Data> | null>;
18
- getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: UniswapData, side: SwapSide): DexExchangeParam;
19
- }
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Dfyn = exports.DfynConfig = void 0;
4
- const uniswap_v2_1 = require("./uniswap-v2");
5
- const constants_1 = require("../../constants");
6
- const utils_1 = require("../../utils");
7
- exports.DfynConfig = {
8
- Dfyn: {
9
- [constants_1.Network.POLYGON]: {
10
- subgraphURL: 'Dizc6HBJZWB276wcyycYMxN8FMKeKb7RpSvwu83F4gTc',
11
- factoryAddress: '0xE7Fb3e833eFE5F9c441105EB65Ef8b261266423B',
12
- initCode: '0xf187ed688403aa4f7acfada758d8d53698753b998a3071b06f1b777f4330eaf3',
13
- feeCode: 30,
14
- },
15
- },
16
- };
17
- const DfynWETH = {
18
- address: '0x4c28f48448720e9000907bc2611f73022fdce1fa',
19
- decimals: 18,
20
- };
21
- const WrapDfynWETH = (token) => token.address.toLowerCase() === constants_1.ETHER_ADDRESS.toLowerCase()
22
- ? DfynWETH
23
- : token;
24
- class Dfyn extends uniswap_v2_1.UniswapV2 {
25
- network;
26
- dexHelper;
27
- static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(exports.DfynConfig);
28
- constructor(network, dexKey, dexHelper) {
29
- super(network, dexKey, dexHelper, false, exports.DfynConfig[dexKey][network].factoryAddress, exports.DfynConfig[dexKey][network].subgraphURL, exports.DfynConfig[dexKey][network].initCode, exports.DfynConfig[dexKey][network].feeCode, exports.DfynConfig[dexKey][network].poolGasCost);
30
- this.network = network;
31
- this.dexHelper = dexHelper;
32
- }
33
- getPoolIdentifiers(from, to, side, blockNumber) {
34
- const _from = WrapDfynWETH(from);
35
- const _to = WrapDfynWETH(to);
36
- return super.getPoolIdentifiers(_from, _to, side, blockNumber);
37
- }
38
- async getPricesVolume(from, to, amounts, side, blockNumber, limitPools) {
39
- const _from = WrapDfynWETH(from);
40
- const _to = WrapDfynWETH(to);
41
- const prices = await super.getPricesVolume(_from, _to, amounts, side, blockNumber, limitPools);
42
- return prices
43
- ? prices.map(p => ({ ...p, data: { ...p.data, weth: DfynWETH.address } }))
44
- : null;
45
- }
46
- getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side) {
47
- const _srcToken = this.isWETH(srcToken) || (0, utils_1.isETHAddress)(srcToken)
48
- ? DfynWETH.address
49
- : srcToken;
50
- const _destToken = this.isWETH(destToken) || (0, utils_1.isETHAddress)(destToken)
51
- ? DfynWETH.address
52
- : destToken;
53
- const param = super.getDexParam(_srcToken, _destToken, srcAmount, destAmount, recipient, data, side);
54
- return {
55
- ...param,
56
- wethAddress: DfynWETH.address,
57
- };
58
- }
59
- }
60
- exports.Dfyn = Dfyn;
61
- //# sourceMappingURL=dfyn.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dfyn.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v2/dfyn.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import { UniswapV2, UniswapV2Pair } from './uniswap-v2';
2
- import { Network } from '../../constants';
3
- import { DexConfigMap } from '../../types';
4
- import { IDexHelper } from '../../dex-helper/index';
5
- import { Interface } from '@ethersproject/abi';
6
- import { DexParams } from './types';
7
- export declare const ExcaliburConfig: DexConfigMap<DexParams>;
8
- export declare class Excalibur extends UniswapV2 {
9
- protected network: Network;
10
- protected dexHelper: IDexHelper;
11
- excaliburPool: Interface;
12
- static dexKeysWithNetwork: {
13
- key: string;
14
- networks: Network[];
15
- }[];
16
- constructor(network: Network, dexKey: string, dexHelper: IDexHelper);
17
- protected getFeesMultiCallData(pair: UniswapV2Pair): {
18
- callEntry: {
19
- target: string;
20
- callData: string;
21
- };
22
- callDecoder: (values: any[]) => number;
23
- };
24
- }
@@ -1,47 +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.Excalibur = exports.ExcaliburConfig = void 0;
7
- const uniswap_v2_1 = require("./uniswap-v2");
8
- const constants_1 = require("../../constants");
9
- const abi_1 = require("@ethersproject/abi");
10
- const excalibur_pool_json_1 = __importDefault(require("../../abi/uniswap-v2/excalibur-pool.json"));
11
- const utils_1 = require("../../utils");
12
- exports.ExcaliburConfig = {
13
- Excalibur: {
14
- [constants_1.Network.FANTOM]: {
15
- factoryAddress: '0x08b3CCa975a82cFA6f912E0eeDdE53A629770D3f',
16
- initCode: '0x3b43fe52e9f2b1864ca8a959ca3ac9c5fbc46f6379347e5f7d4e60b0ca479792',
17
- feeCode: 0, // this is ignored as Excalibur uses dynamic fees
18
- },
19
- },
20
- };
21
- class Excalibur extends uniswap_v2_1.UniswapV2 {
22
- network;
23
- dexHelper;
24
- excaliburPool;
25
- static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(exports.ExcaliburConfig);
26
- constructor(network, dexKey, dexHelper) {
27
- super(network, dexKey, dexHelper, true, exports.ExcaliburConfig[dexKey][network].factoryAddress, exports.ExcaliburConfig[dexKey][network].subgraphURL, exports.ExcaliburConfig[dexKey][network].initCode, exports.ExcaliburConfig[dexKey][network].feeCode);
28
- this.network = network;
29
- this.dexHelper = dexHelper;
30
- this.excaliburPool = new abi_1.Interface(excalibur_pool_json_1.default);
31
- }
32
- getFeesMultiCallData(pair) {
33
- const callEntry = {
34
- target: pair.exchange,
35
- callData: this.excaliburPool.encodeFunctionData('feeAmount', []),
36
- };
37
- const callDecoder = (values) => Math.ceil(parseInt(this.excaliburPool
38
- .decodeFunctionResult('feeAmount', values)[0]
39
- .toString()) / 10);
40
- return {
41
- callEntry,
42
- callDecoder,
43
- };
44
- }
45
- }
46
- exports.Excalibur = Excalibur;
47
- //# sourceMappingURL=excalibur.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"excalibur.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v2/excalibur.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAwD;AACxD,+CAA0C;AAG1C,4CAA+C;AAE/C,mGAAwE;AACxE,uCAAoD;AAEvC,QAAA,eAAe,GAA4B;IACtD,SAAS,EAAE;QACT,CAAC,mBAAO,CAAC,MAAM,CAAC,EAAE;YAChB,cAAc,EAAE,4CAA4C;YAC5D,QAAQ,EACN,oEAAoE;YACtE,OAAO,EAAE,CAAC,EAAE,iDAAiD;SAC9D;KACF;CACF,CAAC;AAEF,MAAa,SAAU,SAAQ,sBAAS;IAO1B;IAEA;IARZ,aAAa,CAAY;IAElB,MAAM,CAAC,kBAAkB,GAC9B,IAAA,6BAAqB,EAAC,uBAAe,CAAC,CAAC;IAEzC,YACY,OAAgB,EAC1B,MAAc,EACJ,SAAqB;QAE/B,KAAK,CACH,OAAO,EACP,MAAM,EACN,SAAS,EACT,IAAI,EACJ,uBAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAC/C,uBAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAC5C,uBAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EACzC,uBAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CACzC,CAAC;QAbQ,YAAO,GAAP,OAAO,CAAS;QAEhB,cAAS,GAAT,SAAS,CAAY;QAY/B,IAAI,CAAC,aAAa,GAAG,IAAI,eAAS,CAAC,6BAAgB,CAAC,CAAC;IACvD,CAAC;IAES,oBAAoB,CAAC,IAAmB;QAChD,MAAM,SAAS,GAAG;YAChB,MAAM,EAAE,IAAI,CAAC,QAAS;YACtB,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,WAAW,EAAE,EAAE,CAAC;SACjE,CAAC;QACF,MAAM,WAAW,GAAG,CAAC,MAAa,EAAE,EAAE,CACpC,IAAI,CAAC,IAAI,CACP,QAAQ,CACN,IAAI,CAAC,aAAa;aACf,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAC5C,QAAQ,EAAE,CACd,GAAG,EAAE,CACP,CAAC;QACJ,OAAO;YACL,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;;AAzCH,8BA0CC"}
@@ -1,24 +0,0 @@
1
- import { UniswapV2, UniswapV2Pair } from './uniswap-v2';
2
- import { Network } from '../../constants';
3
- import { DexConfigMap } from '../../types';
4
- import { IDexHelper } from '../../dex-helper/index';
5
- import { Interface } from '@ethersproject/abi';
6
- import { DexParams } from './types';
7
- export declare const MDEXConfig: DexConfigMap<DexParams>;
8
- export declare class MDEX extends UniswapV2 {
9
- protected network: Network;
10
- protected dexHelper: IDexHelper;
11
- mdexFactory: Interface;
12
- static dexKeysWithNetwork: {
13
- key: string;
14
- networks: Network[];
15
- }[];
16
- constructor(network: Network, dexKey: string, dexHelper: IDexHelper);
17
- protected getFeesMultiCallData(pair: UniswapV2Pair): {
18
- callEntry: {
19
- target: string;
20
- callData: string;
21
- };
22
- callDecoder: (values: any[]) => number;
23
- };
24
- }
@@ -1,50 +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.MDEX = exports.MDEXConfig = void 0;
7
- const uniswap_v2_1 = require("./uniswap-v2");
8
- const constants_1 = require("../../constants");
9
- const abi_1 = require("@ethersproject/abi");
10
- const mdex_factory_json_1 = __importDefault(require("../../abi/uniswap-v2/mdex-factory.json"));
11
- const utils_1 = require("../../utils");
12
- exports.MDEXConfig = {
13
- MDEX: {
14
- [constants_1.Network.BSC]: {
15
- factoryAddress: '0x3cd1c46068daea5ebb0d3f55f6915b10648062b8',
16
- initCode: '0x0d994d996174b05cfc7bed897dc1b20b4c458fc8d64fe98bc78b3c64a6b4d093',
17
- poolGasCost: 80 * 1000,
18
- feeCode: 0, // feeCode is ignored as dynamic fees is set to true
19
- },
20
- },
21
- };
22
- class MDEX extends uniswap_v2_1.UniswapV2 {
23
- network;
24
- dexHelper;
25
- mdexFactory;
26
- static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(exports.MDEXConfig);
27
- constructor(network, dexKey, dexHelper) {
28
- super(network, dexKey, dexHelper, true, exports.MDEXConfig[dexKey][network].factoryAddress, exports.MDEXConfig[dexKey][network].subgraphURL, exports.MDEXConfig[dexKey][network].initCode, exports.MDEXConfig[dexKey][network].feeCode, exports.MDEXConfig[dexKey][network].poolGasCost);
29
- this.network = network;
30
- this.dexHelper = dexHelper;
31
- this.mdexFactory = new abi_1.Interface(mdex_factory_json_1.default);
32
- }
33
- getFeesMultiCallData(pair) {
34
- const callEntry = {
35
- target: this.factoryAddress,
36
- callData: this.mdexFactory.encodeFunctionData('getPairFees', [
37
- pair.exchange,
38
- ]),
39
- };
40
- const callDecoder = (values) => parseInt(this.mdexFactory
41
- .decodeFunctionResult('getPairFees', values)[0]
42
- .toString());
43
- return {
44
- callEntry,
45
- callDecoder,
46
- };
47
- }
48
- }
49
- exports.MDEX = MDEX;
50
- //# sourceMappingURL=mdex.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mdex.js","sourceRoot":"","sources":["../../../src/dex/uniswap-v2/mdex.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAwD;AACxD,+CAA0C;AAG1C,4CAA+C;AAE/C,+FAAoE;AACpE,uCAAoD;AAEvC,QAAA,UAAU,GAA4B;IACjD,IAAI,EAAE;QACJ,CAAC,mBAAO,CAAC,GAAG,CAAC,EAAE;YACb,cAAc,EAAE,4CAA4C;YAC5D,QAAQ,EACN,oEAAoE;YACtE,WAAW,EAAE,EAAE,GAAG,IAAI;YACtB,OAAO,EAAE,CAAC,EAAE,oDAAoD;SACjE;KACF;CACF,CAAC;AAEF,MAAa,IAAK,SAAQ,sBAAS;IAOrB;IAEA;IARZ,WAAW,CAAY;IAEhB,MAAM,CAAC,kBAAkB,GAC9B,IAAA,6BAAqB,EAAC,kBAAU,CAAC,CAAC;IAEpC,YACY,OAAgB,EAC1B,MAAc,EACJ,SAAqB;QAE/B,KAAK,CACH,OAAO,EACP,MAAM,EACN,SAAS,EACT,IAAI,EACJ,kBAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAC1C,kBAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EACvC,kBAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EACpC,kBAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EACnC,kBAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,CACxC,CAAC;QAdQ,YAAO,GAAP,OAAO,CAAS;QAEhB,cAAS,GAAT,SAAS,CAAY;QAa/B,IAAI,CAAC,WAAW,GAAG,IAAI,eAAS,CAAC,2BAAc,CAAC,CAAC;IACnD,CAAC;IAES,oBAAoB,CAAC,IAAmB;QAChD,MAAM,SAAS,GAAG;YAChB,MAAM,EAAE,IAAI,CAAC,cAAc;YAC3B,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,aAAa,EAAE;gBAC3D,IAAI,CAAC,QAAS;aACf,CAAC;SACH,CAAC;QAEF,MAAM,WAAW,GAAG,CAAC,MAAa,EAAE,EAAE,CACpC,QAAQ,CACN,IAAI,CAAC,WAAW;aACb,oBAAoB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAC9C,QAAQ,EAAE,CACd,CAAC;QACJ,OAAO;YACL,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;;AA3CH,oBA4CC"}