@paraswap/dex-lib 4.7.27-1 → 4.7.27-ekubo-v3.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 (341) hide show
  1. package/build/abi/PendleRouterStatic.json +19 -0
  2. package/build/abi/apex-defi/ApexDefiFactory.abi.json +1749 -0
  3. package/build/abi/apex-defi/ApexDefiRouter.abi.json +1120 -0
  4. package/build/abi/apex-defi/ApexDefiToken.abi.json +229 -0
  5. package/build/abi/apex-defi/ApexDefiWrapper.abi.json +92 -0
  6. package/build/abi/apex-defi/ApexDefiWrapperFactory.abi.json +1107 -0
  7. package/build/abi/ekubo-v3/core.json +797 -0
  8. package/build/abi/ekubo-v3/mev-capture-router.json +936 -0
  9. package/build/abi/ekubo-v3/quote-data-fetcher.json +161 -0
  10. package/build/abi/ekubo-v3/twamm-data-fetcher.json +216 -0
  11. package/build/abi/ekubo-v3/twamm.json +613 -0
  12. package/build/abi/idle-dao/idle-cdo-factory.json +38 -0
  13. package/build/abi/idle-dao/idle-cdo.json +1245 -0
  14. package/build/abi/infusion/InfusionFactory.json +147 -0
  15. package/build/abi/infusion/InfusionPair.json +658 -0
  16. package/build/abi/infusion/InfusionRouter.json +442 -0
  17. package/build/abi/maker-psm/pot.json +322 -0
  18. package/build/abi/maker-psm/psm.json +243 -0
  19. package/build/abi/maker-psm/vat.json +363 -0
  20. package/build/abi/nomiswap-v2/nomiswap-v2-pool.json +773 -0
  21. package/build/abi/pangolin-v3/PangolinV3StateMulticall.abi.json +796 -0
  22. package/build/abi/pendle/pendle-deployer.abi.json +520 -0
  23. package/build/abi/pendle/pendle-oracle.abi.json +413 -0
  24. package/build/abi/quick-perps/fast-price-events.json +70 -0
  25. package/build/abi/quick-perps/fast-price-feed.json +741 -0
  26. package/build/abi/quick-perps/reader.json +313 -0
  27. package/build/abi/quick-perps/vault-price-feed.json +323 -0
  28. package/build/abi/quick-perps/vault.json +1953 -0
  29. package/build/abi/ring-v2/few-wrapped-token.json +587 -0
  30. package/build/abi/ring-v2/ring-v2-factory.json +125 -0
  31. package/build/abi/ring-v2/ring-v2-pool.json +461 -0
  32. package/build/abi/ring-v2/ring-v2-router.json +332 -0
  33. package/build/abi/stabull/stabull-curve.json +738 -0
  34. package/build/abi/stabull/stabull-router.json +76 -0
  35. package/build/abi/uniswap-v2/excalibur-pool.json +881 -0
  36. package/build/abi/uniswap-v2/mdex-factory.json +759 -0
  37. package/build/abi/uniswap-v4/hooks/SpotDynamicFeeManager.json +26 -0
  38. package/build/abi/uniswap-v4/hooks/SpotHook.json +54 -0
  39. package/build/abi/uniswap-v4/hooks/SpotPolicyManager.json +45 -0
  40. package/build/abi/uniswap-v4/hooks/cabalcoin-hook.abi.json +682 -0
  41. package/build/abi/uniswap-v4/hooks/fee-hook.abi.json +1335 -0
  42. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.d.ts +29 -0
  43. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.js +153 -0
  44. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying-factory.js.map +1 -0
  45. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.d.ts +40 -0
  46. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.js +323 -0
  47. package/build/dex/aave-pt-to-underlying/aave-pt-to-underlying.js.map +1 -0
  48. package/build/dex/aave-pt-to-underlying/config.d.ts +3 -0
  49. package/build/dex/aave-pt-to-underlying/config.js +24 -0
  50. package/build/dex/aave-pt-to-underlying/config.js.map +1 -0
  51. package/build/dex/aave-pt-to-underlying/constants.d.ts +2 -0
  52. package/build/dex/aave-pt-to-underlying/constants.js +6 -0
  53. package/build/dex/aave-pt-to-underlying/constants.js.map +1 -0
  54. package/build/dex/aave-pt-to-underlying/types.d.ts +24 -0
  55. package/build/dex/aave-pt-to-underlying/types.js +3 -0
  56. package/build/dex/aave-pt-to-underlying/types.js.map +1 -0
  57. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.d.ts +39 -0
  58. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.js +244 -0
  59. package/build/dex/aave-pt-to-usdc/aave-pt-to-usdc.js.map +1 -0
  60. package/build/dex/aave-pt-to-usdc/config.d.ts +3 -0
  61. package/build/dex/aave-pt-to-usdc/config.js +47 -0
  62. package/build/dex/aave-pt-to-usdc/config.js.map +1 -0
  63. package/build/dex/aave-pt-to-usdc/constants.d.ts +2 -0
  64. package/build/dex/aave-pt-to-usdc/constants.js +6 -0
  65. package/build/dex/aave-pt-to-usdc/constants.js.map +1 -0
  66. package/build/dex/aave-pt-to-usdc/types.d.ts +22 -0
  67. package/build/dex/aave-pt-to-usdc/types.js +3 -0
  68. package/build/dex/aave-pt-to-usdc/types.js.map +1 -0
  69. package/build/dex/algebra-integral/algebra-integral-factory.d.ts +1 -3
  70. package/build/dex/algebra-integral/algebra-integral-factory.js +1 -59
  71. package/build/dex/algebra-integral/algebra-integral-factory.js.map +1 -1
  72. package/build/dex/algebra-integral/algebra-integral.d.ts +0 -3
  73. package/build/dex/algebra-integral/algebra-integral.js +4 -112
  74. package/build/dex/algebra-integral/algebra-integral.js.map +1 -1
  75. package/build/dex/algebra-integral/constants.d.ts +0 -2
  76. package/build/dex/algebra-integral/constants.js +1 -5
  77. package/build/dex/algebra-integral/constants.js.map +1 -1
  78. package/build/dex/apex-defi/apex-defi-factory.d.ts +26 -0
  79. package/build/dex/apex-defi/apex-defi-factory.js +53 -0
  80. package/build/dex/apex-defi/apex-defi-factory.js.map +1 -0
  81. package/build/dex/apex-defi/apex-defi-pool.d.ts +55 -0
  82. package/build/dex/apex-defi/apex-defi-pool.js +247 -0
  83. package/build/dex/apex-defi/apex-defi-pool.js.map +1 -0
  84. package/build/dex/apex-defi/apex-defi-wrapper-factory.d.ts +57 -0
  85. package/build/dex/apex-defi/apex-defi-wrapper-factory.js +250 -0
  86. package/build/dex/apex-defi/apex-defi-wrapper-factory.js.map +1 -0
  87. package/build/dex/apex-defi/apex-defi.d.ts +97 -0
  88. package/build/dex/apex-defi/apex-defi.js +1021 -0
  89. package/build/dex/apex-defi/apex-defi.js.map +1 -0
  90. package/build/dex/apex-defi/config.d.ts +4 -0
  91. package/build/dex/apex-defi/config.js +138 -0
  92. package/build/dex/apex-defi/config.js.map +1 -0
  93. package/build/dex/apex-defi/types.d.ts +32 -0
  94. package/build/dex/apex-defi/types.js +3 -0
  95. package/build/dex/apex-defi/types.js.map +1 -0
  96. package/build/dex/apex-defi/utils.d.ts +46 -0
  97. package/build/dex/apex-defi/utils.js +133 -0
  98. package/build/dex/apex-defi/utils.js.map +1 -0
  99. package/build/dex/ekubo/pools/base-pool.d.ts +47 -0
  100. package/build/dex/ekubo/pools/base-pool.js +184 -0
  101. package/build/dex/ekubo/pools/base-pool.js.map +1 -0
  102. package/build/dex/ekubo/pools/iface.d.ts +46 -0
  103. package/build/dex/ekubo/pools/iface.js +75 -0
  104. package/build/dex/ekubo/pools/iface.js.map +1 -0
  105. package/build/dex/ekubo/pools/math/price.d.ts +7 -0
  106. package/build/dex/ekubo/pools/math/price.js +112 -0
  107. package/build/dex/ekubo/pools/math/price.js.map +1 -0
  108. package/build/dex/ekubo/pools/oracle-pool.d.ts +10 -0
  109. package/build/dex/ekubo/pools/oracle-pool.js +19 -0
  110. package/build/dex/ekubo/pools/oracle-pool.js.map +1 -0
  111. package/build/dex/ekubo/pools/pool-utils.d.ts +44 -0
  112. package/build/dex/ekubo/pools/pool-utils.js +240 -0
  113. package/build/dex/ekubo/pools/pool-utils.js.map +1 -0
  114. package/build/dex/ekubo-v3/config.d.ts +13 -0
  115. package/build/dex/ekubo-v3/config.js +23 -0
  116. package/build/dex/ekubo-v3/config.js.map +1 -0
  117. package/build/dex/ekubo-v3/ekubo-v3-pool-manager.d.ts +34 -0
  118. package/build/dex/ekubo-v3/ekubo-v3-pool-manager.js +421 -0
  119. package/build/dex/ekubo-v3/ekubo-v3-pool-manager.js.map +1 -0
  120. package/build/dex/ekubo-v3/ekubo-v3.d.ts +38 -0
  121. package/build/dex/ekubo-v3/ekubo-v3.js +315 -0
  122. package/build/dex/ekubo-v3/ekubo-v3.js.map +1 -0
  123. package/build/dex/ekubo-v3/pools/base.d.ts +42 -0
  124. package/build/dex/ekubo-v3/pools/base.js +307 -0
  125. package/build/dex/ekubo-v3/pools/base.js.map +1 -0
  126. package/build/dex/ekubo-v3/pools/full-range.d.ts +25 -0
  127. package/build/dex/ekubo-v3/pools/full-range.js +105 -0
  128. package/build/dex/ekubo-v3/pools/full-range.js.map +1 -0
  129. package/build/dex/ekubo-v3/pools/math/constants.d.ts +12 -0
  130. package/build/dex/ekubo-v3/pools/math/constants.js +16 -0
  131. package/build/dex/ekubo-v3/pools/math/constants.js.map +1 -0
  132. package/build/dex/ekubo-v3/pools/math/delta.d.ts +2 -0
  133. package/build/dex/ekubo-v3/pools/math/delta.js +51 -0
  134. package/build/dex/ekubo-v3/pools/math/delta.js.map +1 -0
  135. package/build/dex/ekubo-v3/pools/math/sqrt-ratio.d.ts +8 -0
  136. package/build/dex/ekubo-v3/pools/math/sqrt-ratio.js +113 -0
  137. package/build/dex/ekubo-v3/pools/math/sqrt-ratio.js.map +1 -0
  138. package/build/dex/ekubo-v3/pools/math/swap.d.ts +18 -0
  139. package/build/dex/ekubo-v3/pools/math/swap.js +128 -0
  140. package/build/dex/ekubo-v3/pools/math/swap.js.map +1 -0
  141. package/build/dex/ekubo-v3/pools/math/tick.d.ts +8 -0
  142. package/build/dex/ekubo-v3/pools/math/tick.js +129 -0
  143. package/build/dex/ekubo-v3/pools/math/tick.js.map +1 -0
  144. package/build/dex/ekubo-v3/pools/math/twamm/exp2.d.ts +1 -0
  145. package/build/dex/ekubo-v3/pools/math/twamm/exp2.js +86 -0
  146. package/build/dex/ekubo-v3/pools/math/twamm/exp2.js.map +1 -0
  147. package/build/dex/ekubo-v3/pools/math/twamm/sqrt-ratio.d.ts +1 -0
  148. package/build/dex/ekubo-v3/pools/math/twamm/sqrt-ratio.js +56 -0
  149. package/build/dex/ekubo-v3/pools/math/twamm/sqrt-ratio.js.map +1 -0
  150. package/build/dex/ekubo-v3/pools/mev-capture.d.ts +8 -0
  151. package/build/dex/ekubo-v3/pools/mev-capture.js +42 -0
  152. package/build/dex/ekubo-v3/pools/mev-capture.js.map +1 -0
  153. package/build/dex/ekubo-v3/pools/oracle.d.ts +8 -0
  154. package/build/dex/ekubo-v3/pools/oracle.js +18 -0
  155. package/build/dex/ekubo-v3/pools/oracle.js.map +1 -0
  156. package/build/dex/ekubo-v3/pools/pool.d.ts +56 -0
  157. package/build/dex/ekubo-v3/pools/pool.js +88 -0
  158. package/build/dex/ekubo-v3/pools/pool.js.map +1 -0
  159. package/build/dex/ekubo-v3/pools/stableswap.d.ts +22 -0
  160. package/build/dex/ekubo-v3/pools/stableswap.js +123 -0
  161. package/build/dex/ekubo-v3/pools/stableswap.js.map +1 -0
  162. package/build/dex/ekubo-v3/pools/twamm.d.ts +40 -0
  163. package/build/dex/ekubo-v3/pools/twamm.js +265 -0
  164. package/build/dex/ekubo-v3/pools/twamm.js.map +1 -0
  165. package/build/dex/ekubo-v3/pools/utils.d.ts +62 -0
  166. package/build/dex/ekubo-v3/pools/utils.js +160 -0
  167. package/build/dex/ekubo-v3/pools/utils.js.map +1 -0
  168. package/build/dex/ekubo-v3/types.d.ts +58 -0
  169. package/build/dex/ekubo-v3/types.js +3 -0
  170. package/build/dex/ekubo-v3/types.js.map +1 -0
  171. package/build/dex/ekubo-v3/utils.d.ts +10 -0
  172. package/build/dex/ekubo-v3/utils.js +54 -0
  173. package/build/dex/ekubo-v3/utils.js.map +1 -0
  174. package/build/dex/idle-dao/config.d.ts +5 -0
  175. package/build/dex/idle-dao/config.js +24 -0
  176. package/build/dex/idle-dao/config.js.map +1 -0
  177. package/build/dex/idle-dao/idle-dao.d.ts +42 -0
  178. package/build/dex/idle-dao/idle-dao.js +279 -0
  179. package/build/dex/idle-dao/idle-dao.js.map +1 -0
  180. package/build/dex/idle-dao/token_list.d.ts +4 -0
  181. package/build/dex/idle-dao/token_list.js +289 -0
  182. package/build/dex/idle-dao/token_list.js.map +1 -0
  183. package/build/dex/idle-dao/tokens.d.ts +9 -0
  184. package/build/dex/idle-dao/tokens.js +68 -0
  185. package/build/dex/idle-dao/tokens.js.map +1 -0
  186. package/build/dex/idle-dao/types.d.ts +35 -0
  187. package/build/dex/idle-dao/types.js +11 -0
  188. package/build/dex/idle-dao/types.js.map +1 -0
  189. package/build/dex/idle-dao/utils.d.ts +8 -0
  190. package/build/dex/idle-dao/utils.js +149 -0
  191. package/build/dex/idle-dao/utils.js.map +1 -0
  192. package/build/dex/index.js +2 -0
  193. package/build/dex/index.js.map +1 -1
  194. package/build/dex/infusion/config.d.ts +3 -0
  195. package/build/dex/infusion/config.js +20 -0
  196. package/build/dex/infusion/config.js.map +1 -0
  197. package/build/dex/infusion/infusion-stable-pool.d.ts +4 -0
  198. package/build/dex/infusion/infusion-stable-pool.js +74 -0
  199. package/build/dex/infusion/infusion-stable-pool.js.map +1 -0
  200. package/build/dex/infusion/infusion.d.ts +51 -0
  201. package/build/dex/infusion/infusion.js +461 -0
  202. package/build/dex/infusion/infusion.js.map +1 -0
  203. package/build/dex/infusion/types.d.ts +45 -0
  204. package/build/dex/infusion/types.js +3 -0
  205. package/build/dex/infusion/types.js.map +1 -0
  206. package/build/dex/infusion/utils/isStablePair.d.ts +2 -0
  207. package/build/dex/infusion/utils/isStablePair.js +18 -0
  208. package/build/dex/infusion/utils/isStablePair.js.map +1 -0
  209. package/build/dex/maker-psm/config.d.ts +11 -0
  210. package/build/dex/maker-psm/config.js +53 -0
  211. package/build/dex/maker-psm/config.js.map +1 -0
  212. package/build/dex/maker-psm/maker-psm-event-pool.d.ts +43 -0
  213. package/build/dex/maker-psm/maker-psm-event-pool.js +132 -0
  214. package/build/dex/maker-psm/maker-psm-event-pool.js.map +1 -0
  215. package/build/dex/maker-psm/maker-psm.d.ts +103 -0
  216. package/build/dex/maker-psm/maker-psm.js +493 -0
  217. package/build/dex/maker-psm/maker-psm.js.map +1 -0
  218. package/build/dex/maker-psm/types.d.ts +39 -0
  219. package/build/dex/maker-psm/types.js +3 -0
  220. package/build/dex/maker-psm/types.js.map +1 -0
  221. package/build/dex/miro-migrator/miro-migrator-state.d.ts +27 -0
  222. package/build/dex/miro-migrator/miro-migrator-state.js +89 -0
  223. package/build/dex/miro-migrator/miro-migrator-state.js.map +1 -0
  224. package/build/dex/quick-perps/config.d.ts +11 -0
  225. package/build/dex/quick-perps/config.js +27 -0
  226. package/build/dex/quick-perps/config.js.map +1 -0
  227. package/build/dex/quick-perps/fast-price-feed.d.ts +26 -0
  228. package/build/dex/quick-perps/fast-price-feed.js +184 -0
  229. package/build/dex/quick-perps/fast-price-feed.js.map +1 -0
  230. package/build/dex/quick-perps/pool.d.ts +21 -0
  231. package/build/dex/quick-perps/pool.js +229 -0
  232. package/build/dex/quick-perps/pool.js.map +1 -0
  233. package/build/dex/quick-perps/quick-perps.d.ts +53 -0
  234. package/build/dex/quick-perps/quick-perps.js +247 -0
  235. package/build/dex/quick-perps/quick-perps.js.map +1 -0
  236. package/build/dex/quick-perps/types.d.ts +98 -0
  237. package/build/dex/quick-perps/types.js +3 -0
  238. package/build/dex/quick-perps/types.js.map +1 -0
  239. package/build/dex/quick-perps/usdq.d.ts +15 -0
  240. package/build/dex/quick-perps/usdq.js +62 -0
  241. package/build/dex/quick-perps/usdq.js.map +1 -0
  242. package/build/dex/quick-perps/vault-price-feed.d.ts +43 -0
  243. package/build/dex/quick-perps/vault-price-feed.js +203 -0
  244. package/build/dex/quick-perps/vault-price-feed.js.map +1 -0
  245. package/build/dex/quick-perps/vault-utils.d.ts +8 -0
  246. package/build/dex/quick-perps/vault-utils.js +42 -0
  247. package/build/dex/quick-perps/vault-utils.js.map +1 -0
  248. package/build/dex/quick-perps/vault.d.ts +46 -0
  249. package/build/dex/quick-perps/vault.js +182 -0
  250. package/build/dex/quick-perps/vault.js.map +1 -0
  251. package/build/dex/solidly/forks-override/aerodrome.d.ts +14 -0
  252. package/build/dex/solidly/forks-override/aerodrome.js +50 -0
  253. package/build/dex/solidly/forks-override/aerodrome.js.map +1 -0
  254. package/build/dex/solidly/forks-override/chronos.d.ts +23 -0
  255. package/build/dex/solidly/forks-override/chronos.js +141 -0
  256. package/build/dex/solidly/forks-override/chronos.js.map +1 -0
  257. package/build/dex/solidly/forks-override/usdfi.d.ts +8 -0
  258. package/build/dex/solidly/forks-override/usdfi.js +15 -0
  259. package/build/dex/solidly/forks-override/usdfi.js.map +1 -0
  260. package/build/dex/solidly/forks-override/velocimeter.d.ts +23 -0
  261. package/build/dex/solidly/forks-override/velocimeter.js +77 -0
  262. package/build/dex/solidly/forks-override/velocimeter.js.map +1 -0
  263. package/build/dex/stabull/config.d.ts +3 -0
  264. package/build/dex/stabull/config.js +177 -0
  265. package/build/dex/stabull/config.js.map +1 -0
  266. package/build/dex/stabull/stabull-pool.d.ts +46 -0
  267. package/build/dex/stabull/stabull-pool.js +113 -0
  268. package/build/dex/stabull/stabull-pool.js.map +1 -0
  269. package/build/dex/stabull/stabull.d.ts +55 -0
  270. package/build/dex/stabull/stabull.js +286 -0
  271. package/build/dex/stabull/stabull.js.map +1 -0
  272. package/build/dex/stabull/types.d.ts +21 -0
  273. package/build/dex/stabull/types.js +3 -0
  274. package/build/dex/stabull/types.js.map +1 -0
  275. package/build/dex/uniswap-v2/dfyn.d.ts +19 -0
  276. package/build/dex/uniswap-v2/dfyn.js +61 -0
  277. package/build/dex/uniswap-v2/dfyn.js.map +1 -0
  278. package/build/dex/uniswap-v2/excalibur.d.ts +24 -0
  279. package/build/dex/uniswap-v2/excalibur.js +47 -0
  280. package/build/dex/uniswap-v2/excalibur.js.map +1 -0
  281. package/build/dex/uniswap-v2/mdex.d.ts +24 -0
  282. package/build/dex/uniswap-v2/mdex.js +50 -0
  283. package/build/dex/uniswap-v2/mdex.js.map +1 -0
  284. package/build/dex/uniswap-v2/nomiswap-v2.d.ts +24 -0
  285. package/build/dex/uniswap-v2/nomiswap-v2.js +57 -0
  286. package/build/dex/uniswap-v2/nomiswap-v2.js.map +1 -0
  287. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.d.ts +4 -0
  288. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.js +56 -0
  289. package/build/dex/uniswap-v3/forks/pangolin-v3/utils.js.map +1 -0
  290. package/build/dex/uniswap-v4/contract-math/Position.d.ts +9 -0
  291. package/build/dex/uniswap-v4/contract-math/Position.js +39 -0
  292. package/build/dex/uniswap-v4/contract-math/Position.js.map +1 -0
  293. package/build/dex/uniswap-v4/hooks/arena.d.ts +6 -0
  294. package/build/dex/uniswap-v4/hooks/arena.js +10 -0
  295. package/build/dex/uniswap-v4/hooks/arena.js.map +1 -0
  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 +2 -0
  298. package/build/dex/uniswap-v4/hooks/base-fee/base-fee-hook.js.map +1 -0
  299. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.d.ts +7 -0
  300. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.js +28 -0
  301. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/cabalcoin-hook-pool.js.map +1 -0
  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 +2 -0
  304. package/build/dex/uniswap-v4/hooks/cabalcoin-hook/types.js.map +1 -0
  305. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.d.ts +7 -0
  306. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.js +28 -0
  307. package/build/dex/uniswap-v4/hooks/fee-hook/fee-hook-pool.js.map +1 -0
  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 +2 -0
  310. package/build/dex/uniswap-v4/hooks/fee-hook/types.js.map +1 -0
  311. package/build/dex/uniswap-v4/hooks/index.d.ts +1 -0
  312. package/build/dex/uniswap-v4/hooks/index.js +18 -0
  313. package/build/dex/uniswap-v4/hooks/index.js.map +1 -0
  314. package/build/dex/uniswap-v4/hooks/spot.d.ts +15 -0
  315. package/build/dex/uniswap-v4/hooks/spot.js +109 -0
  316. package/build/dex/uniswap-v4/hooks/spot.js.map +1 -0
  317. package/build/dex/uniswap-v4/hooks/template.d.ts +150 -0
  318. package/build/dex/uniswap-v4/hooks/template.js +104 -0
  319. package/build/dex/uniswap-v4/hooks/template.js.map +1 -0
  320. package/build/dex/usdc-transmuter/usdc-transmuter-pool.d.ts +26 -0
  321. package/build/dex/usdc-transmuter/usdc-transmuter-pool.js +75 -0
  322. package/build/dex/usdc-transmuter/usdc-transmuter-pool.js.map +1 -0
  323. package/build/dex/usual/usual-usdc-usdc.d.ts +17 -0
  324. package/build/dex/usual/usual-usdc-usdc.js +59 -0
  325. package/build/dex/usual/usual-usdc-usdc.js.map +1 -0
  326. package/build/dex/yo/config.d.ts +3 -0
  327. package/build/dex/yo/config.js +21 -0
  328. package/build/dex/yo/config.js.map +1 -0
  329. package/build/dex/yo/types.d.ts +13 -0
  330. package/build/dex/yo/types.js +3 -0
  331. package/build/dex/yo/types.js.map +1 -0
  332. package/build/dex/yo/yo-pool.d.ts +13 -0
  333. package/build/dex/yo/yo-pool.js +26 -0
  334. package/build/dex/yo/yo-pool.js.map +1 -0
  335. package/build/dex/yo/yo.d.ts +39 -0
  336. package/build/dex/yo/yo.js +248 -0
  337. package/build/dex/yo/yo.js.map +1 -0
  338. package/build/implementations/api-paraswap-sdk.d.ts +25 -0
  339. package/build/implementations/api-paraswap-sdk.js +102 -0
  340. package/build/implementations/api-paraswap-sdk.js.map +1 -0
  341. package/package.json +3 -3
@@ -0,0 +1,39 @@
1
+ import { Token, Address, ExchangePrices, AdapterExchangeParam, PoolLiquidity, Logger, NumberAsString } from '../../types';
2
+ import { SwapSide, Network } from '../../constants';
3
+ import { Context, IDex } from '../../dex/idex';
4
+ import { IDexHelper } from '../../dex-helper/idex-helper';
5
+ import { AavePtToUsdcData } from './types';
6
+ import { SimpleExchange } from '../simple-exchange';
7
+ import { DexExchangeParam } from '../../types';
8
+ export declare class AavePtToUsdc extends SimpleExchange implements IDex<AavePtToUsdcData> {
9
+ readonly network: Network;
10
+ readonly dexKey: string;
11
+ readonly dexHelper: IDexHelper;
12
+ readonly hasConstantPriceLargeAmounts = false;
13
+ readonly needWrapNative = false;
14
+ readonly isFeeOnTransferSupported = false;
15
+ private config;
16
+ private oracleInterface;
17
+ private readonly supportedMarkets;
18
+ logger: Logger;
19
+ static dexKeysWithNetwork: {
20
+ key: string;
21
+ networks: Network[];
22
+ }[];
23
+ constructor(network: Network, dexKey: string, dexHelper: IDexHelper);
24
+ getAdapters(): {
25
+ name: string;
26
+ index: number;
27
+ }[] | null;
28
+ getPoolIdentifier(marketAddress: string): string;
29
+ getPoolIdentifiers(srcToken: Token, destToken: Token, side: SwapSide, blockNumber: number): Promise<string[]>;
30
+ private getMarketByPtToken;
31
+ private getOracleRate;
32
+ private calculatePriceFromOracle;
33
+ getPricesVolume(srcToken: Token, destToken: Token, amounts: bigint[], side: SwapSide, blockNumber: number, limitPools?: string[]): Promise<ExchangePrices<AavePtToUsdcData> | null>;
34
+ getCalldataGasCost(): number | number[];
35
+ getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AavePtToUsdcData, side: SwapSide): AdapterExchangeParam;
36
+ getTopPoolsForToken(tokenAddress: Address, limit: number): Promise<PoolLiquidity[]>;
37
+ getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: AavePtToUsdcData, side: SwapSide, context: Context, executorAddress: Address): Promise<DexExchangeParam>;
38
+ private callPendleSdkApi;
39
+ }
@@ -0,0 +1,244 @@
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.AavePtToUsdc = 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 simple_exchange_1 = require("../simple-exchange");
44
+ const config_1 = require("./config");
45
+ const abi_1 = require("@ethersproject/abi");
46
+ const PendleOracle_json_1 = __importDefault(require("../../abi/PendleOracle.json"));
47
+ const constants_2 = require("./constants");
48
+ class AavePtToUsdc extends simple_exchange_1.SimpleExchange {
49
+ network;
50
+ dexKey;
51
+ dexHelper;
52
+ hasConstantPriceLargeAmounts = false;
53
+ needWrapNative = false;
54
+ isFeeOnTransferSupported = false;
55
+ config;
56
+ oracleInterface;
57
+ supportedMarkets;
58
+ logger;
59
+ static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.AavePtToUsdcConfig);
60
+ constructor(network, dexKey, dexHelper) {
61
+ super(dexHelper, dexKey);
62
+ this.network = network;
63
+ this.dexKey = dexKey;
64
+ this.dexHelper = dexHelper;
65
+ this.config = config_1.AavePtToUsdcConfig[dexKey][network];
66
+ this.logger = dexHelper.getLogger(dexKey);
67
+ this.oracleInterface = new abi_1.Interface(PendleOracle_json_1.default);
68
+ this.supportedMarkets = this.config.supportedPts;
69
+ }
70
+ getAdapters() {
71
+ return null;
72
+ }
73
+ getPoolIdentifier(marketAddress) {
74
+ return `${this.dexKey}_${marketAddress.toLowerCase()}`;
75
+ }
76
+ async getPoolIdentifiers(srcToken, destToken, side, blockNumber) {
77
+ const market = this.getMarketByPtToken(srcToken.address);
78
+ if (!market) {
79
+ return [];
80
+ }
81
+ // Only support PT -> underlying swaps
82
+ if (destToken.address.toLowerCase() !==
83
+ market.underlyingRawAddress.toLowerCase()) {
84
+ return [];
85
+ }
86
+ return [this.getPoolIdentifier(market.marketAddress)];
87
+ }
88
+ getMarketByPtToken(ptToken) {
89
+ return this.supportedMarkets.find(m => m.pt.address.toLowerCase() === ptToken.toLowerCase());
90
+ }
91
+ async getOracleRate(market) {
92
+ try {
93
+ const callData = this.oracleInterface.encodeFunctionData('getPtToAssetRate', [market.marketAddress, 0]);
94
+ const rate = await this.dexHelper.provider.call({
95
+ to: this.config.oracleAddress,
96
+ data: callData,
97
+ });
98
+ return BigInt(rate);
99
+ }
100
+ catch (error) {
101
+ this.logger.error(`Failed to fetch oracle rate: ${error}`);
102
+ return 0n;
103
+ }
104
+ }
105
+ async calculatePriceFromOracle(market, amounts, side) {
106
+ const rate = await this.getOracleRate(market);
107
+ if (rate === 0n)
108
+ return [];
109
+ if (side === constants_1.SwapSide.SELL) {
110
+ return amounts.map(amount => (amount * rate) / 10n ** 18n);
111
+ }
112
+ else {
113
+ return amounts.map(amount => (amount * 10n ** 18n + (rate - 1n)) / rate);
114
+ }
115
+ }
116
+ async getPricesVolume(srcToken, destToken, amounts, side, blockNumber, limitPools) {
117
+ const market = this.getMarketByPtToken(srcToken.address);
118
+ if (!market) {
119
+ return null;
120
+ }
121
+ const { underlyingRawAddress, marketAddress } = market;
122
+ const isUnderlying = destToken.address.toLowerCase() === underlyingRawAddress.toLowerCase();
123
+ if (!isUnderlying) {
124
+ return null;
125
+ }
126
+ if (limitPools && limitPools.length > 0) {
127
+ const poolId = this.getPoolIdentifier(marketAddress);
128
+ if (!limitPools.includes(poolId)) {
129
+ return null;
130
+ }
131
+ }
132
+ const unit = (0, utils_1.getBigIntPow)(side === constants_1.SwapSide.SELL ? srcToken.decimals : destToken.decimals);
133
+ const _amounts = [unit, ...amounts.slice(1)];
134
+ const prices = await this.calculatePriceFromOracle(market, _amounts, side);
135
+ if (prices.length === 0)
136
+ return null;
137
+ return [
138
+ {
139
+ exchange: this.dexKey,
140
+ prices: [0n, ...prices.slice(1)],
141
+ unit: prices[0],
142
+ gasCost: constants_2.AAVE_PT_TO_UNDERLYING_GAS_COST,
143
+ data: {
144
+ marketAddress,
145
+ },
146
+ poolIdentifiers: [this.getPoolIdentifier(marketAddress)],
147
+ poolAddresses: [marketAddress],
148
+ },
149
+ ];
150
+ }
151
+ getCalldataGasCost() {
152
+ return CALLDATA_GAS_COST.DEX_NO_PAYLOAD;
153
+ }
154
+ getAdapterParam(srcToken, destToken, srcAmount, destAmount, data, side) {
155
+ const payload = '0x';
156
+ return {
157
+ targetExchange: this.config.pendleRouterAddress,
158
+ payload,
159
+ networkFee: '0',
160
+ };
161
+ }
162
+ async getTopPoolsForToken(tokenAddress, limit) {
163
+ const market = this.getMarketByPtToken(tokenAddress);
164
+ if (market) {
165
+ return [
166
+ {
167
+ exchange: this.dexKey,
168
+ address: market.marketAddress,
169
+ connectorTokens: [
170
+ {
171
+ address: market.underlyingAssetAddress,
172
+ decimals: 18,
173
+ liquidityUSD: constants_1.NO_USD_LIQUIDITY,
174
+ },
175
+ ],
176
+ liquidityUSD: constants_1.UNLIMITED_USD_LIQUIDITY,
177
+ },
178
+ ];
179
+ }
180
+ return [];
181
+ }
182
+ async getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side, context, executorAddress) {
183
+ const apiParams = {
184
+ receiver: recipient,
185
+ slippage: 0,
186
+ ptAmount: srcAmount,
187
+ ytAmount: '0',
188
+ lpAmount: '0',
189
+ tokenOut: destToken,
190
+ enableAggregator: false,
191
+ };
192
+ const swapResp = await this.callPendleSdkApi(data.marketAddress, apiParams);
193
+ if (!swapResp.success || !swapResp.tx) {
194
+ const errorMsg = `Pendle SDK exit-positions endpoint failed: ${swapResp.error || 'No transaction data returned'}`;
195
+ this.logger.error(errorMsg);
196
+ throw new Error(errorMsg);
197
+ }
198
+ const tx = swapResp.tx;
199
+ // Validate transaction data
200
+ if (!tx.to || !tx.data) {
201
+ const errorMsg = 'Invalid transaction data returned from Pendle SDK API';
202
+ this.logger.error(`${errorMsg}: to=${tx.to}, hasData=${!!tx.data}`);
203
+ throw new Error(errorMsg);
204
+ }
205
+ const result = {
206
+ targetExchange: tx.to,
207
+ exchangeData: tx.data,
208
+ needWrapNative: false,
209
+ dexFuncHasRecipient: true,
210
+ returnAmountPos: 0,
211
+ };
212
+ return result;
213
+ }
214
+ async callPendleSdkApi(marketAddress, params) {
215
+ const url = new URL(`${constants_2.PENDLE_API_URL}/v2/sdk/${this.network}/markets/${marketAddress}/exit-positions`);
216
+ Object.keys(params).forEach(key => {
217
+ if (params[key] !== undefined && params[key] !== null) {
218
+ url.searchParams.append(key, params[key].toString());
219
+ }
220
+ });
221
+ try {
222
+ const response = await this.dexHelper.httpRequest.get(url.toString(), 30000, {
223
+ Accept: 'application/json',
224
+ });
225
+ const responseData = response;
226
+ const result = {
227
+ success: true,
228
+ data: responseData.data || responseData,
229
+ tx: responseData.tx || responseData.data?.tx,
230
+ };
231
+ return result;
232
+ }
233
+ catch (error) {
234
+ this.logger.error(`Pendle SDK API call failed: ${error}`);
235
+ return {
236
+ success: false,
237
+ error: error instanceof Error ? error.message : String(error),
238
+ tx: null,
239
+ };
240
+ }
241
+ }
242
+ }
243
+ exports.AavePtToUsdc = AavePtToUsdc;
244
+ //# sourceMappingURL=aave-pt-to-usdc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aave-pt-to-usdc.js","sourceRoot":"","sources":["../../../src/dex/aave-pt-to-usdc/aave-pt-to-usdc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { DexParams } from './types';
2
+ import { DexConfigMap } from '../../types';
3
+ export declare const AavePtToUsdcConfig: DexConfigMap<DexParams>;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AavePtToUsdcConfig = void 0;
4
+ const constants_1 = require("../../constants");
5
+ // Pendle V4 Router https://etherscan.io/address/0x888888888889758f76e7103c6cbf23abbf58f946#code
6
+ const PENDLE_ROUTER_ADDRESS = '0x888888888889758f76e7103c6cbf23abbf58f946';
7
+ // Pendle Oracle https://etherscan.io/address/0x9a9Fa8338dd5E5B2188006f1Cd2Ef26d921650C2
8
+ const ORACLE_ADDRESS = '0x9a9Fa8338dd5E5B2188006f1Cd2Ef26d921650C2';
9
+ // PT sUSDe 25 Sep 2025: https://etherscan.io/address/0x9f56094c450763769ba0ea9fe2876070c0fd5f77
10
+ // PT USDe 25 Sep 2025: https://etherscan.io/address/0xbc6736d346a5ebc0debc997397912cd9b8fae10a
11
+ // sUSDe: https://etherscan.io/address/0x9d39a5de30e57443bff2a8307a4256c8797a3497
12
+ // USDe: https://etherscan.io/address/0x4c9edd5852cd905f086c759e8383e09bff1e68b3
13
+ exports.AavePtToUsdcConfig = {
14
+ AavePtToUsdc: {
15
+ [constants_1.Network.MAINNET]: {
16
+ pendleRouterAddress: PENDLE_ROUTER_ADDRESS,
17
+ oracleAddress: ORACLE_ADDRESS,
18
+ supportedPts: [
19
+ {
20
+ pt: {
21
+ address: '0x9f56094c450763769ba0ea9fe2876070c0fd5f77',
22
+ decimals: 18,
23
+ name: 'PT-sUSDe-25SEP2025',
24
+ expiry: 1764201600,
25
+ },
26
+ marketAddress: '0xa36b60a14a1a5247912584768c6e53e1a269a9f7', // PT sUSDe 25 Sep 2025 market
27
+ exitMarketAddress: '0xa36b60a14a1a5247912584768c6e53e1a269a9f7', // Same as market for now
28
+ underlyingAssetAddress: '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497', // sUSDe
29
+ underlyingRawAddress: '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497', // raw sUSDe
30
+ },
31
+ {
32
+ pt: {
33
+ address: '0xbc6736d346a5ebc0debc997397912cd9b8fae10a',
34
+ decimals: 18,
35
+ name: 'PT-USDe-25SEP2025',
36
+ expiry: 1764201600,
37
+ },
38
+ marketAddress: '0x6d98a2b6cdbf44939362a3e99793339ba2016af4', // PT USDe market
39
+ exitMarketAddress: '0x6d98a2b6cdbf44939362a3e99793339ba2016af4', // Same as market for now
40
+ underlyingAssetAddress: '0x4c9edd5852cd905f086c759e8383e09bff1e68b3', // USDe
41
+ underlyingRawAddress: '0x4c9edd5852cd905f086c759e8383e09bff1e68b3', // raw USDe
42
+ },
43
+ ],
44
+ },
45
+ },
46
+ };
47
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/aave-pt-to-usdc/config.ts"],"names":[],"mappings":";;;AAEA,+CAA0C;AAE1C,gGAAgG;AAChG,MAAM,qBAAqB,GAAG,4CAA4C,CAAC;AAC3E,wFAAwF;AACxF,MAAM,cAAc,GAAG,4CAA4C,CAAC;AAEpE,gGAAgG;AAChG,+FAA+F;AAC/F,iFAAiF;AACjF,gFAAgF;AAEnE,QAAA,kBAAkB,GAA4B;IACzD,YAAY,EAAE;QACZ,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,mBAAmB,EAAE,qBAAqB;YAC1C,aAAa,EAAE,cAAc;YAC7B,YAAY,EAAE;gBACZ;oBACE,EAAE,EAAE;wBACF,OAAO,EAAE,4CAA4C;wBACrD,QAAQ,EAAE,EAAE;wBACZ,IAAI,EAAE,oBAAoB;wBAC1B,MAAM,EAAE,UAAU;qBACnB;oBACD,aAAa,EAAE,4CAA4C,EAAE,8BAA8B;oBAC3F,iBAAiB,EAAE,4CAA4C,EAAE,yBAAyB;oBAC1F,sBAAsB,EAAE,4CAA4C,EAAE,QAAQ;oBAC9E,oBAAoB,EAAE,4CAA4C,EAAE,YAAY;iBACjF;gBACD;oBACE,EAAE,EAAE;wBACF,OAAO,EAAE,4CAA4C;wBACrD,QAAQ,EAAE,EAAE;wBACZ,IAAI,EAAE,mBAAmB;wBACzB,MAAM,EAAE,UAAU;qBACnB;oBACD,aAAa,EAAE,4CAA4C,EAAE,iBAAiB;oBAC9E,iBAAiB,EAAE,4CAA4C,EAAE,yBAAyB;oBAC1F,sBAAsB,EAAE,4CAA4C,EAAE,OAAO;oBAC7E,oBAAoB,EAAE,4CAA4C,EAAE,WAAW;iBAChF;aACF;SACF;KACF;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const PENDLE_API_URL = "https://api-v2.pendle.finance/core";
2
+ export declare const AAVE_PT_TO_UNDERLYING_GAS_COST = 200000;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AAVE_PT_TO_UNDERLYING_GAS_COST = exports.PENDLE_API_URL = void 0;
4
+ exports.PENDLE_API_URL = 'https://api-v2.pendle.finance/core';
5
+ exports.AAVE_PT_TO_UNDERLYING_GAS_COST = 200_000;
6
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/dex/aave-pt-to-usdc/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG,oCAAoC,CAAC;AACtD,QAAA,8BAA8B,GAAG,OAAO,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { Address } from '../../types';
2
+ export type AavePtToUsdcData = {
3
+ marketAddress: Address;
4
+ };
5
+ export interface PendleToken {
6
+ address: string;
7
+ decimals: number;
8
+ name: string;
9
+ expiry: number;
10
+ }
11
+ export interface SupportedPt {
12
+ pt: PendleToken;
13
+ marketAddress: string;
14
+ exitMarketAddress: string;
15
+ underlyingAssetAddress: string;
16
+ underlyingRawAddress: string;
17
+ }
18
+ export interface DexParams {
19
+ pendleRouterAddress: string;
20
+ oracleAddress: string;
21
+ supportedPts: SupportedPt[];
22
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/aave-pt-to-usdc/types.ts"],"names":[],"mappings":""}
@@ -17,15 +17,13 @@ export declare class AlgebraIntegralFactory extends StatefulEventSubscriber<Fact
17
17
  };
18
18
  logDecoder: (log: Log) => any;
19
19
  private pools;
20
- private erc20Interface;
21
20
  constructor(parentName: string, network: number, dexHelper: IDexHelper, logger: Logger, factoryAddress: Address, subgraphURL: string, factoryIface?: Interface);
22
21
  initialize(blockNumber: number): Promise<void>;
23
22
  generateState(): FactoryState;
24
23
  protected processLog(_: DeepReadonly<FactoryState>, log: Readonly<Log>): Promise<FactoryState>;
25
- getAvailablePoolsForPair(srcToken: Address, destToken: Address): Pool[];
24
+ getAvailablePoolsForPair(srcToken: Address, destToken: Address, blockNumber: number): Pool[];
26
25
  queryAllAvailablePools(blockNumber: number): Promise<Pool[]>;
27
26
  private queryOnePageForAllAvailablePoolsFromSubgraph;
28
27
  handleNewPool(event: LogDescription): Promise<void>;
29
28
  handleNewCustomPool(event: LogDescription): Promise<void>;
30
- updatePoolsTvl(): Promise<void>;
31
29
  }
@@ -6,10 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.AlgebraIntegralFactory = void 0;
7
7
  const abi_1 = require("@ethersproject/abi");
8
8
  const AlgebraFactory_abi_json_1 = __importDefault(require("../../abi/algebra-integral/AlgebraFactory.abi.json"));
9
- const erc20_json_1 = __importDefault(require("../../abi/erc20.json"));
10
9
  const stateful_event_subscriber_1 = require("../../stateful-event-subscriber");
11
10
  const constants_1 = require("../../constants");
12
- const constants_2 = require("./constants");
13
11
  /*
14
12
  * "Stateless" event subscriber in order to capture "PoolCreated" event on new pools created.
15
13
  * State is present, but it's a placeholder to actually make the events reach handlers (if there's no previous state - `processBlockLogs` is not called)
@@ -24,7 +22,6 @@ class AlgebraIntegralFactory extends stateful_event_subscriber_1.StatefulEventSu
24
22
  handlers = {};
25
23
  logDecoder;
26
24
  pools = [];
27
- erc20Interface = new abi_1.Interface(erc20_json_1.default);
28
25
  constructor(parentName, network, dexHelper, logger, factoryAddress, subgraphURL, factoryIface = new abi_1.Interface(AlgebraFactory_abi_json_1.default)) {
29
26
  super(parentName, `${parentName} Factory`, dexHelper, logger, false);
30
27
  this.parentName = parentName;
@@ -51,7 +48,7 @@ class AlgebraIntegralFactory extends stateful_event_subscriber_1.StatefulEventSu
51
48
  }
52
49
  return {};
53
50
  }
54
- getAvailablePoolsForPair(srcToken, destToken) {
51
+ getAvailablePoolsForPair(srcToken, destToken, blockNumber) {
55
52
  const _srcToken = this.dexHelper.config.wrapETH(srcToken);
56
53
  const _destToken = this.dexHelper.config.wrapETH(destToken);
57
54
  const [_srcAddress, _destAddress] = [
@@ -61,7 +58,6 @@ class AlgebraIntegralFactory extends stateful_event_subscriber_1.StatefulEventSu
61
58
  return this.pools
62
59
  .filter(pool => (pool.token0 === _srcAddress && pool.token1 === _destAddress) ||
63
60
  (pool.token0 === _destAddress && pool.token1 === _srcAddress))
64
- .filter(pool => pool.tvlUSD >= constants_2.MIN_USD_TVL_FOR_PRICING)
65
61
  .sort((a, b) => {
66
62
  // sort by tvl
67
63
  const tvlDiff = b.tvlUSD - a.tvlUSD;
@@ -159,60 +155,6 @@ class AlgebraIntegralFactory extends stateful_event_subscriber_1.StatefulEventSu
159
155
  });
160
156
  }
161
157
  }
162
- async updatePoolsTvl() {
163
- if (this.pools.length === 0)
164
- return;
165
- const decodeBalance = (data) => BigInt(data || 0);
166
- // Build multicall to fetch token balances for all pools
167
- const balanceCalls = this.pools.flatMap(pool => [
168
- {
169
- target: pool.token0,
170
- callData: this.erc20Interface.encodeFunctionData('balanceOf', [
171
- pool.poolAddress,
172
- ]),
173
- decodeFunction: decodeBalance,
174
- },
175
- {
176
- target: pool.token1,
177
- callData: this.erc20Interface.encodeFunctionData('balanceOf', [
178
- pool.poolAddress,
179
- ]),
180
- decodeFunction: decodeBalance,
181
- },
182
- ]);
183
- const balanceResults = await this.dexHelper.multiWrapper.tryAggregate(false, balanceCalls);
184
- // Build token amounts for USD conversion
185
- const tokenAmounts = this.pools.flatMap((pool, i) => {
186
- const balance0 = balanceResults[i * 2].success
187
- ? balanceResults[i * 2].returnData
188
- : 0n;
189
- const balance1 = balanceResults[i * 2 + 1].success
190
- ? balanceResults[i * 2 + 1].returnData
191
- : 0n;
192
- return [
193
- [
194
- pool.token0 === constants_1.NULL_ADDRESS.toLowerCase()
195
- ? constants_1.ETHER_ADDRESS
196
- : pool.token0,
197
- balance0,
198
- ],
199
- [
200
- pool.token1 === constants_1.NULL_ADDRESS.toLowerCase()
201
- ? constants_1.ETHER_ADDRESS
202
- : pool.token1,
203
- balance1,
204
- ],
205
- ];
206
- });
207
- // Get USD values
208
- const usdValues = await this.dexHelper.getUsdTokenAmounts(tokenAmounts);
209
- // Update pool TVL
210
- this.pools.forEach((pool, i) => {
211
- const tvl0 = usdValues[i * 2] || 0;
212
- const tvl1 = usdValues[i * 2 + 1] || 0;
213
- pool.tvlUSD = tvl0 + tvl1;
214
- });
215
- }
216
158
  }
217
159
  exports.AlgebraIntegralFactory = AlgebraIntegralFactory;
218
160
  //# sourceMappingURL=algebra-integral-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"algebra-integral-factory.js","sourceRoot":"","sources":["../../../src/dex/algebra-integral/algebra-integral-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"algebra-integral-factory.js","sourceRoot":"","sources":["../../../src/dex/algebra-integral/algebra-integral-factory.ts"],"names":[],"mappings":";;;;;;AAAA,4CAA+C;AAE/C,iHAA4E;AAE5E,+EAA0E;AAI1E,+CAAiE;AAEjE;;;GAGG;AACH,MAAa,sBAAuB,SAAQ,mDAAqC;IAUpE;IACC;IACA;IAEA;IACA;IACA;IAfZ,QAAQ,GAEJ,EAAE,CAAC;IAEP,UAAU,CAAoB;IAEtB,KAAK,GAAW,EAAE,CAAC;IAE3B,YACW,UAAkB,EACjB,OAAe,EACf,SAAqB,EAC/B,MAAc,EACJ,cAAuB,EACvB,WAAmB,EACnB,eAAe,IAAI,eAAS,CAAC,iCAAU,CAAC;QAElD,KAAK,CAAC,UAAU,EAAE,GAAG,UAAU,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAR5D,eAAU,GAAV,UAAU,CAAQ;QACjB,YAAO,GAAP,OAAO,CAAQ;QACf,cAAS,GAAT,SAAS,CAAY;QAErB,mBAAc,GAAd,cAAc,CAAS;QACvB,gBAAW,GAAX,WAAW,CAAQ;QACnB,iBAAY,GAAZ,YAAY,CAA4B;QAIlD,IAAI,CAAC,mBAAmB,GAAG,CAAC,cAAc,CAAC,CAAC;QAE5C,IAAI,CAAC,UAAU,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAEhE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,WAAmB;QAClC,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC;IAED,aAAa;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,CAA6B,EAC7B,GAAkB;QAElB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAEM,wBAAwB,CAC7B,QAAiB,EACjB,SAAkB,EAClB,WAAmB;QAEnB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE5D,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,GAAG;YAClC,SAAS,CAAC,WAAW,EAAE;YACvB,UAAU,CAAC,WAAW,EAAE;SACzB,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK;aACd,MAAM,CACL,IAAI,CAAC,EAAE,CACL,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,CAAC;YAC7D,CAAC,IAAI,CAAC,MAAM,KAAK,YAAY,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAChE;aACA,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACb,cAAc;YACd,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;YACpC,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;gBAClB,OAAO,OAAO,CAAC;YACjB,CAAC;YAED,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAAC,WAAmB;QACrD,MAAM,mBAAmB,GAAG,IAAI,CAAC;QACjC,IAAI,KAAK,GAAW,EAAE,CAAC;QACvB,IAAI,IAAI,GAAG,CAAC,CAAC;QAEb,IAAI,YAAY,GACd,MAAM,IAAI,CAAC,4CAA4C,CACrD,WAAW,EACX,IAAI,EACJ,mBAAmB,CACpB,CAAC;QACJ,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAEnC,OAAO,YAAY,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;YACnD,IAAI,IAAI,mBAAmB,CAAC;YAC5B,YAAY,GAAG,MAAM,IAAI,CAAC,4CAA4C,CACpE,WAAW,EACX,IAAI,EACJ,mBAAmB,CACpB,CAAC;YAEF,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,4CAA4C,CACxD,WAAmB,EACnB,IAAY,EACZ,KAAa,EACb,WAAW,GAAG,KAAK;QAEnB,MAAM,UAAU,GAAG;;UAEb,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,WAAW,IAAI;;;;;;;;;;;;;;;;MAgB1D,CAAC;QAEH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,aAAa,CAYxD,IAAI,CAAC,WAAW,EAChB;YACE,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE;gBACT,IAAI;gBACJ,KAAK,EAAE,KAAK;aACb;SACF,EACD,EAAE,OAAO,EAAE,4BAAgB,EAAE,CAC9B,CAAC;QAEF,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACpC,IACE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAC/C,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EACnD,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,IAAI,CAAC,UAAU,4CAA4C,CAC/D,CAAC;gBACF,OAAO,IAAI,CAAC,4CAA4C,CACtD,WAAW,EACX,IAAI,EACJ,KAAK,EACL,IAAI,CACL,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE;YAClC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE;YACpC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE;YACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE;YACrC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;SAClD,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAAqB;QACvC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,wBAAY,CAAC,CAAC,8CAA8C;QAE7E,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACzD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBACd,WAAW;gBACX,MAAM;gBACN,MAAM;gBACN,QAAQ;gBACR,MAAM,EAAE,CAAC;aACV,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAAqB;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAEnD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACzD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBACd,WAAW;gBACX,MAAM;gBACN,MAAM;gBACN,QAAQ;gBACR,MAAM,EAAE,CAAC;aACV,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AAvND,wDAuNC"}
@@ -16,7 +16,6 @@ export declare class AlgebraIntegral extends SimpleExchange implements IDex<Alge
16
16
  readonly needWrapNative = true;
17
17
  readonly isFeeOnTransferSupported = true;
18
18
  private readonly factory;
19
- private updatePoolsTvlTimer?;
20
19
  static dexKeysWithNetwork: {
21
20
  key: string;
22
21
  networks: Network[];
@@ -42,10 +41,8 @@ export declare class AlgebraIntegral extends SimpleExchange implements IDex<Alge
42
41
  getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: AlgebraIntegralData, side: SwapSide): DexExchangeParam;
43
42
  getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AlgebraIntegralData, side: SwapSide): AdapterExchangeParam;
44
43
  getTopPoolsForToken(tokenAddress: Address, limit: number): Promise<PoolLiquidity[]>;
45
- private _getPoolBalances;
46
44
  private _querySubgraph;
47
45
  private _encodePath;
48
46
  private _sortTokens;
49
47
  private _getLoweredAddresses;
50
- releaseResources(): void;
51
48
  }