@1delta/margin-fetcher 0.0.14 → 0.0.15-0.2

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 (510) hide show
  1. package/dist/_esm-2UAQOYNJ.js +3898 -0
  2. package/dist/_esm-2UAQOYNJ.js.map +1 -0
  3. package/dist/abis/aave-v2/YLDR.d.ts.map +1 -1
  4. package/dist/abis/aave-v3/AavePoolDataProviderLegacy.d.ts.map +1 -1
  5. package/dist/abis/compound-v2/CollateralToken.d.ts +58 -0
  6. package/dist/abis/compound-v2/CollateralToken.d.ts.map +1 -0
  7. package/dist/abis/compound-v2/Comptroller.d.ts +1 -1600
  8. package/dist/abis/compound-v2/Comptroller.d.ts.map +1 -1
  9. package/dist/abis/compound-v2/VenusLens.d.ts +1007 -0
  10. package/dist/abis/{aave/AavePoolV3.d.ts.map → compound-v2/VenusLens.d.ts.map} +1 -1
  11. package/dist/abis/compound-v2/VenusLensLegacy.d.ts +109 -0
  12. package/dist/abis/compound-v2/VenusLensLegacy.d.ts.map +1 -0
  13. package/dist/abis/compound-v3/Comet.d.ts +0 -20
  14. package/dist/abis/compound-v3/Comet.d.ts.map +1 -1
  15. package/dist/abis/morpho/lens.d.ts +127 -15
  16. package/dist/abis/morpho/lens.d.ts.map +1 -1
  17. package/dist/abis/multicall/Multicall.d.ts.map +1 -1
  18. package/dist/abis/oracle/ChainLinkAggregator.d.ts +5 -223
  19. package/dist/abis/oracle/ChainLinkAggregator.d.ts.map +1 -1
  20. package/dist/abis/oracle/ProxyOracle.d.ts +26 -0
  21. package/dist/abis/oracle/ProxyOracle.d.ts.map +1 -0
  22. package/dist/abis/oracle/UniV3.d.ts +12 -0
  23. package/dist/abis/oracle/UniV3.d.ts.map +1 -0
  24. package/dist/assets/index.d.ts +3 -8
  25. package/dist/assets/index.d.ts.map +1 -1
  26. package/dist/assets/liquidityThresholds.d.ts +10 -0
  27. package/dist/assets/liquidityThresholds.d.ts.map +1 -1
  28. package/dist/ccip-MNAQZE7H.js +5 -0
  29. package/dist/ccip-MNAQZE7H.js.map +1 -0
  30. package/dist/chunk-BYTNVMX7.js +369 -0
  31. package/dist/chunk-BYTNVMX7.js.map +1 -0
  32. package/dist/chunk-GXAEO4DI.js +4133 -0
  33. package/dist/chunk-GXAEO4DI.js.map +1 -0
  34. package/dist/chunk-PR4QN5HX.js +39 -0
  35. package/dist/chunk-PR4QN5HX.js.map +1 -0
  36. package/dist/flash-liquidity/assets.d.ts +2 -2
  37. package/dist/flash-liquidity/assets.d.ts.map +1 -1
  38. package/dist/flash-liquidity/fetchLiquidity.d.ts +3 -3
  39. package/dist/flash-liquidity/fetchLiquidity.d.ts.map +1 -1
  40. package/dist/flash-liquidity/index.d.ts +2 -2
  41. package/dist/flash-liquidity/types.d.ts +1 -0
  42. package/dist/flash-liquidity/types.d.ts.map +1 -1
  43. package/dist/flash-liquidity/utils.d.ts +3 -2
  44. package/dist/flash-liquidity/utils.d.ts.map +1 -1
  45. package/dist/index.d.ts +9 -7
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +23868 -6
  48. package/dist/index.js.map +1 -0
  49. package/dist/lending/aave-v2-type/misc.d.ts +3 -9
  50. package/dist/lending/aave-v2-type/misc.d.ts.map +1 -1
  51. package/dist/lending/aave-v2-type/publicCallBuild.d.ts +3 -4
  52. package/dist/lending/aave-v2-type/publicCallBuild.d.ts.map +1 -1
  53. package/dist/lending/aave-v2-type/publicCallParse.d.ts +4 -5
  54. package/dist/lending/aave-v2-type/publicCallParse.d.ts.map +1 -1
  55. package/dist/lending/aave-v3-type/publicCallBuild.d.ts +3 -3
  56. package/dist/lending/aave-v3-type/publicCallBuild.d.ts.map +1 -1
  57. package/dist/lending/aave-v3-type/publicCallParse.d.ts +5 -6
  58. package/dist/lending/aave-v3-type/publicCallParse.d.ts.map +1 -1
  59. package/dist/lending/addresses/aave.d.ts.map +1 -1
  60. package/dist/lending/addresses/aaveV2.d.ts.map +1 -1
  61. package/dist/lending/addresses/compoundV2.d.ts +13 -0
  62. package/dist/lending/addresses/compoundV2.d.ts.map +1 -0
  63. package/dist/lending/addresses/compoundV3.d.ts +2 -4
  64. package/dist/lending/addresses/compoundV3.d.ts.map +1 -1
  65. package/dist/lending/addresses/meridian.d.ts +3 -0
  66. package/dist/lending/addresses/meridian.d.ts.map +1 -1
  67. package/dist/lending/addresses/takotako.d.ts.map +1 -1
  68. package/dist/lending/compound-v2/getters/moonwell.d.ts +32 -0
  69. package/dist/lending/compound-v2/getters/moonwell.d.ts.map +1 -0
  70. package/dist/lending/compound-v2/getters/types.d.ts +12 -0
  71. package/dist/lending/compound-v2/getters/types.d.ts.map +1 -0
  72. package/dist/lending/compound-v2/getters/venus.d.ts +86 -0
  73. package/dist/lending/compound-v2/getters/venus.d.ts.map +1 -0
  74. package/dist/lending/compound-v2/publicCallBuild.d.ts +2 -0
  75. package/dist/lending/compound-v2/publicCallBuild.d.ts.map +1 -0
  76. package/dist/lending/compound-v2/publicCallParse.d.ts +6 -0
  77. package/dist/lending/compound-v2/publicCallParse.d.ts.map +1 -0
  78. package/dist/lending/compound-v3/publicCallBuild.d.ts +1 -2
  79. package/dist/lending/compound-v3/publicCallBuild.d.ts.map +1 -1
  80. package/dist/lending/compound-v3/publicCallParse.d.ts +3 -4
  81. package/dist/lending/compound-v3/publicCallParse.d.ts.map +1 -1
  82. package/dist/lending/fetchLender.d.ts +5 -3
  83. package/dist/lending/fetchLender.d.ts.map +1 -1
  84. package/dist/lending/fetchLenderAll.d.ts +2 -2
  85. package/dist/lending/fetchLenderAll.d.ts.map +1 -1
  86. package/dist/lending/fetchLenderExt.d.ts +2 -2
  87. package/dist/lending/fetchLenderExt.d.ts.map +1 -1
  88. package/dist/lending/index.d.ts +6 -5
  89. package/dist/lending/index.d.ts.map +1 -1
  90. package/dist/lending/init/publicCallBuild.d.ts +1 -1
  91. package/dist/lending/init/publicCallBuild.d.ts.map +1 -1
  92. package/dist/lending/init/publicCallParse.d.ts +4 -4
  93. package/dist/lending/init/publicCallParse.d.ts.map +1 -1
  94. package/dist/lending/lista/getMarketsFromChain.d.ts +4 -0
  95. package/dist/lending/lista/getMarketsFromChain.d.ts.map +1 -0
  96. package/dist/lending/lista/getMarketsOnChain.d.ts +6 -0
  97. package/dist/lending/lista/getMarketsOnChain.d.ts.map +1 -0
  98. package/dist/lending/lista/publicCallBuild.d.ts +10 -0
  99. package/dist/lending/lista/publicCallBuild.d.ts.map +1 -0
  100. package/dist/lending/meta/index.d.ts +20 -0
  101. package/dist/lending/meta/index.d.ts.map +1 -0
  102. package/dist/lending/morpho/convertPublic.d.ts +2 -2
  103. package/dist/lending/morpho/convertPublic.d.ts.map +1 -1
  104. package/dist/lending/morpho/fetchPublic.d.ts.map +1 -1
  105. package/dist/lending/morpho/getMarketsFromChain.d.ts +4 -0
  106. package/dist/lending/morpho/getMarketsFromChain.d.ts.map +1 -0
  107. package/dist/lending/morpho/index.d.ts +3 -0
  108. package/dist/lending/morpho/index.d.ts.map +1 -0
  109. package/dist/lending/morpho/publicCallBuild.d.ts +12 -2
  110. package/dist/lending/morpho/publicCallBuild.d.ts.map +1 -1
  111. package/dist/lending/morpho/utils/evmParser.d.ts +48 -0
  112. package/dist/lending/morpho/utils/evmParser.d.ts.map +1 -0
  113. package/dist/lending/morpho/utils/mathLib.d.ts +125 -0
  114. package/dist/lending/morpho/utils/mathLib.d.ts.map +1 -0
  115. package/dist/lending/morpho/utils/parsers.d.ts +10 -0
  116. package/dist/lending/morpho/utils/parsers.d.ts.map +1 -0
  117. package/dist/lending/user-data/aave-v2-type/userCallBuild.d.ts +3 -3
  118. package/dist/lending/user-data/aave-v2-type/userCallBuild.d.ts.map +1 -1
  119. package/dist/lending/user-data/aave-v2-type/userCallParse.d.ts +2 -2
  120. package/dist/lending/user-data/aave-v2-type/userCallParse.d.ts.map +1 -1
  121. package/dist/lending/user-data/aave-v3-type/userCallBuild.d.ts +3 -3
  122. package/dist/lending/user-data/aave-v3-type/userCallBuild.d.ts.map +1 -1
  123. package/dist/lending/user-data/aave-v3-type/userCallParse.d.ts +2 -2
  124. package/dist/lending/user-data/aave-v3-type/userCallParse.d.ts.map +1 -1
  125. package/dist/lending/user-data/aave-v3-type/userCallParseYldr.d.ts +2 -2
  126. package/dist/lending/user-data/aave-v3-type/userCallParseYldr.d.ts.map +1 -1
  127. package/dist/lending/user-data/abis.d.ts +179 -34
  128. package/dist/lending/user-data/abis.d.ts.map +1 -1
  129. package/dist/lending/user-data/compound-v2/index.d.ts +3 -0
  130. package/dist/lending/user-data/compound-v2/index.d.ts.map +1 -0
  131. package/dist/lending/user-data/compound-v2/userCallBuild.d.ts +4 -0
  132. package/dist/lending/user-data/compound-v2/userCallBuild.d.ts.map +1 -0
  133. package/dist/lending/user-data/compound-v2/userCallParse.d.ts +8 -0
  134. package/dist/lending/user-data/compound-v2/userCallParse.d.ts.map +1 -0
  135. package/dist/lending/user-data/compound-v3/index.d.ts +2 -3
  136. package/dist/lending/user-data/compound-v3/index.d.ts.map +1 -1
  137. package/dist/lending/user-data/compound-v3/userCallBuild.d.ts +3 -3
  138. package/dist/lending/user-data/compound-v3/userCallBuild.d.ts.map +1 -1
  139. package/dist/lending/user-data/compound-v3/userCallParse.d.ts +2 -2
  140. package/dist/lending/user-data/compound-v3/userCallParse.d.ts.map +1 -1
  141. package/dist/lending/user-data/fetchUserData.d.ts +114 -5
  142. package/dist/lending/user-data/fetchUserData.d.ts.map +1 -1
  143. package/dist/lending/user-data/index.d.ts +2 -2
  144. package/dist/lending/user-data/index.d.ts.map +1 -1
  145. package/dist/lending/user-data/init/userCallBuild.d.ts +2 -2
  146. package/dist/lending/user-data/init/userCallBuild.d.ts.map +1 -1
  147. package/dist/lending/user-data/init/userCallParse.d.ts +2 -2
  148. package/dist/lending/user-data/init/userCallParse.d.ts.map +1 -1
  149. package/dist/lending/user-data/morpho/decoder.d.ts +20 -1
  150. package/dist/lending/user-data/morpho/decoder.d.ts.map +1 -1
  151. package/dist/lending/user-data/morpho/index.d.ts +4 -0
  152. package/dist/lending/user-data/morpho/index.d.ts.map +1 -0
  153. package/dist/lending/user-data/morpho/morphoLib.d.ts.map +1 -1
  154. package/dist/lending/user-data/morpho/types.d.ts.map +1 -1
  155. package/dist/lending/user-data/morpho/userCallBuild.d.ts +6 -3
  156. package/dist/lending/user-data/morpho/userCallBuild.d.ts.map +1 -1
  157. package/dist/lending/user-data/morpho/userCallParse.d.ts +16 -2
  158. package/dist/lending/user-data/morpho/userCallParse.d.ts.map +1 -1
  159. package/dist/lending/user-data/utils/createGeneralUserState.d.ts +4 -1
  160. package/dist/lending/user-data/utils/createGeneralUserState.d.ts.map +1 -1
  161. package/dist/lending/user-data/utils/createMultiAccountStyleUserState.d.ts +1 -1
  162. package/dist/lending/user-data/utils/createMultiAccountStyleUserState.d.ts.map +1 -1
  163. package/dist/lending/user-data/utils/formatting/generalFormatters.d.ts +1 -1
  164. package/dist/lending/user-data/utils/formatting/generalFormatters.d.ts.map +1 -1
  165. package/dist/lending/user-data/utils/formatting/index.d.ts +1 -1
  166. package/dist/lending/user-data/utils/index.d.ts +4 -4
  167. package/dist/lending/user-data/utils/index.d.ts.map +1 -1
  168. package/dist/lending-pairs/computeLendingPairs.d.ts +10 -1
  169. package/dist/lending-pairs/computeLendingPairs.d.ts.map +1 -1
  170. package/dist/lending-pairs/index.d.ts +1 -1
  171. package/dist/lending-pairs/index.d.ts.map +1 -1
  172. package/dist/lending-pools/computeLenderDataFromPools.d.ts +10 -0
  173. package/dist/lending-pools/computeLenderDataFromPools.d.ts.map +1 -0
  174. package/dist/lending-pools/computeLendingPools.d.ts +23 -0
  175. package/dist/lending-pools/computeLendingPools.d.ts.map +1 -0
  176. package/dist/lending-pools/index.d.ts +3 -0
  177. package/dist/lending-pools/index.d.ts.map +1 -0
  178. package/dist/prices/defillama/index.d.ts.map +1 -1
  179. package/dist/prices/index.d.ts +3 -2
  180. package/dist/prices/index.d.ts.map +1 -1
  181. package/dist/prices/main-prices/addresses/api3.d.ts.map +1 -1
  182. package/dist/prices/main-prices/addresses/chainlink.d.ts +0 -7
  183. package/dist/prices/main-prices/addresses/chainlink.d.ts.map +1 -1
  184. package/dist/prices/main-prices/fetchOracleData.d.ts +9 -3
  185. package/dist/prices/main-prices/fetchOracleData.d.ts.map +1 -1
  186. package/dist/prices/main-prices/index.d.ts +1 -1
  187. package/dist/prices/main-prices/index.d.ts.map +1 -1
  188. package/dist/prices/pendle/fetchPendlePrices.d.ts +47 -0
  189. package/dist/prices/pendle/fetchPendlePrices.d.ts.map +1 -0
  190. package/dist/prices/pendle/index.d.ts +2 -0
  191. package/dist/prices/pendle/index.d.ts.map +1 -0
  192. package/dist/secp256k1-XP7IUONI.js +2208 -0
  193. package/dist/secp256k1-XP7IUONI.js.map +1 -0
  194. package/dist/types/apiReturnType.d.ts +4 -4
  195. package/dist/types/apiReturnType.d.ts.map +1 -1
  196. package/dist/{lending/types/index.d.ts → types/general.d.ts} +1 -1
  197. package/dist/types/general.d.ts.map +1 -0
  198. package/dist/types/index.d.ts +5 -41
  199. package/dist/types/index.d.ts.map +1 -1
  200. package/dist/{lending/aave-v2-type/types.d.ts → types/lender/aave-v2-types.d.ts} +5 -9
  201. package/dist/types/lender/aave-v2-types.d.ts.map +1 -0
  202. package/dist/{lending/aave-v3-type/types.d.ts → types/lender/aave-v3-types.d.ts} +5 -9
  203. package/dist/types/lender/aave-v3-types.d.ts.map +1 -0
  204. package/dist/types/lender/compound-v2-types.d.ts +41 -0
  205. package/dist/types/lender/compound-v2-types.d.ts.map +1 -0
  206. package/dist/{lending/compound-v3/types.d.ts → types/lender/compound-v3-types.d.ts} +5 -9
  207. package/dist/types/lender/compound-v3-types.d.ts.map +1 -0
  208. package/dist/{lending/init/types.d.ts → types/lender/init-types.d.ts} +5 -9
  209. package/dist/types/lender/init-types.d.ts.map +1 -0
  210. package/dist/{lending/morpho/types.d.ts → types/lender/morpho-types.d.ts} +12 -2
  211. package/dist/types/lender/morpho-types.d.ts.map +1 -0
  212. package/dist/{lending/user-data/types.d.ts → types/lenderTypes.d.ts} +30 -20
  213. package/dist/types/lenderTypes.d.ts.map +1 -0
  214. package/dist/types/misc.d.ts +47 -0
  215. package/dist/types/misc.d.ts.map +1 -0
  216. package/dist/types/providers.d.ts +1 -9
  217. package/dist/types/providers.d.ts.map +1 -1
  218. package/dist/utils/constants.d.ts +0 -23
  219. package/dist/utils/constants.d.ts.map +1 -1
  220. package/dist/utils/index.d.ts +6 -7
  221. package/dist/utils/index.d.ts.map +1 -1
  222. package/dist/utils/multicall.d.ts +2 -1
  223. package/dist/utils/multicall.d.ts.map +1 -1
  224. package/dist/utils/parsing.d.ts +6 -3
  225. package/dist/utils/parsing.d.ts.map +1 -1
  226. package/dist/yields/index.d.ts.map +1 -1
  227. package/dist/yields/yieldTypes.d.ts +76 -0
  228. package/dist/yields/yieldTypes.d.ts.map +1 -0
  229. package/package.json +16 -8
  230. package/dist/abis/aave/AToken.d.ts +0 -526
  231. package/dist/abis/aave/AToken.d.ts.map +0 -1
  232. package/dist/abis/aave/AToken.js +0 -686
  233. package/dist/abis/aave/AaveOracle.js +0 -66
  234. package/dist/abis/aave/AavePoolAndDataProvider.js +0 -2080
  235. package/dist/abis/aave/AavePoolV3.d.ts +0 -819
  236. package/dist/abis/aave/AavePoolV3.js +0 -1060
  237. package/dist/abis/aave/AavePoolV3Upgraded.js +0 -1474
  238. package/dist/abis/aave/AaveV3ProtocolDataProvider.js +0 -553
  239. package/dist/abis/aave/VariableDebtToken.js +0 -820
  240. package/dist/abis/aave-v2/ProtocolDataProvider.js +0 -312
  241. package/dist/abis/aave-v2/YLDR.js +0 -199
  242. package/dist/abis/aave-v3/AavePoolDataProviderLegacy.js +0 -460
  243. package/dist/abis/aave-v3/AavePoolLegacy.js +0 -1060
  244. package/dist/abis/aave-v3/YLDR.js +0 -46
  245. package/dist/abis/aurelius/Rewarder.js +0 -118
  246. package/dist/abis/compound-v2/CompoundLens.js +0 -851
  247. package/dist/abis/compound-v2/Comptroller.js +0 -2104
  248. package/dist/abis/compound-v3/Comet.js +0 -1829
  249. package/dist/abis/compound-v3/CometExt.js +0 -536
  250. package/dist/abis/compound-v3/CometLens.js +0 -194
  251. package/dist/abis/compound-v3/CometRewards.js +0 -330
  252. package/dist/abis/compound-v3/IrGetter.js +0 -31
  253. package/dist/abis/flashloan-united/flashAbi.js +0 -72
  254. package/dist/abis/init/Core.d.ts +0 -523
  255. package/dist/abis/init/Core.d.ts.map +0 -1
  256. package/dist/abis/init/Core.js +0 -681
  257. package/dist/abis/init/InitFlashAggregator.d.ts +0 -624
  258. package/dist/abis/init/InitFlashAggregator.d.ts.map +0 -1
  259. package/dist/abis/init/InitFlashAggregator.js +0 -795
  260. package/dist/abis/init/InitLens.js +0 -203
  261. package/dist/abis/init/PosManager.d.ts +0 -802
  262. package/dist/abis/init/PosManager.d.ts.map +0 -1
  263. package/dist/abis/init/PosManager.js +0 -1055
  264. package/dist/abis/lendle/IncentivesController.js +0 -525
  265. package/dist/abis/lendle/MultiFeeDistribution.js +0 -820
  266. package/dist/abis/meridian/PullRewardsIncentivesController.js +0 -98
  267. package/dist/abis/morpho/blue.js +0 -99
  268. package/dist/abis/morpho/lens.js +0 -31
  269. package/dist/abis/multicall/Multicall.js +0 -101
  270. package/dist/abis/oracle/AaveOracle.js +0 -66
  271. package/dist/abis/oracle/Api3Oracle.js +0 -62
  272. package/dist/abis/oracle/ChainLinkAggregator.js +0 -480
  273. package/dist/abis/oracle/RWADynamicOracle.js +0 -15
  274. package/dist/abis/oracle/UniswapV2Pair.js +0 -659
  275. package/dist/abis/uniswap/FeeOnTransferDetector.d.ts +0 -102
  276. package/dist/abis/uniswap/FeeOnTransferDetector.d.ts.map +0 -1
  277. package/dist/abis/uniswap/FeeOnTransferDetector.js +0 -133
  278. package/dist/abis/uniswap/UniswapV2Pair.d.ts +0 -513
  279. package/dist/abis/uniswap/UniswapV2Pair.d.ts.map +0 -1
  280. package/dist/abis/uniswap/UniswapV2Pair.js +0 -659
  281. package/dist/assets/index.js +0 -54
  282. package/dist/assets/liquidityThresholds.js +0 -51
  283. package/dist/flash-liquidity/assets.js +0 -45
  284. package/dist/flash-liquidity/fetchLiquidity.js +0 -235
  285. package/dist/flash-liquidity/index.js +0 -2
  286. package/dist/flash-liquidity/types.js +0 -8
  287. package/dist/flash-liquidity/utils.js +0 -17
  288. package/dist/lending/aave-v2-type/misc.js +0 -8
  289. package/dist/lending/aave-v2-type/publicCallBuild.js +0 -102
  290. package/dist/lending/aave-v2-type/publicCallParse.js +0 -257
  291. package/dist/lending/aave-v2-type/types.d.ts.map +0 -1
  292. package/dist/lending/aave-v2-type/types.js +0 -46
  293. package/dist/lending/aave-v3-type/publicCallBuild.js +0 -123
  294. package/dist/lending/aave-v3-type/publicCallParse.js +0 -307
  295. package/dist/lending/aave-v3-type/types.d.ts.map +0 -1
  296. package/dist/lending/aave-v3-type/types.js +0 -98
  297. package/dist/lending/addresses/aave.js +0 -10
  298. package/dist/lending/addresses/aaveV2.js +0 -6
  299. package/dist/lending/addresses/aurelius.js +0 -12
  300. package/dist/lending/addresses/compoundV3.js +0 -36
  301. package/dist/lending/addresses/contracts.d.ts +0 -5
  302. package/dist/lending/addresses/contracts.d.ts.map +0 -1
  303. package/dist/lending/addresses/contracts.js +0 -49
  304. package/dist/lending/addresses/hana.js +0 -6
  305. package/dist/lending/addresses/index.d.ts +0 -2
  306. package/dist/lending/addresses/index.d.ts.map +0 -1
  307. package/dist/lending/addresses/index.js +0 -1
  308. package/dist/lending/addresses/init.js +0 -33
  309. package/dist/lending/addresses/lendle.js +0 -12
  310. package/dist/lending/addresses/meridian.js +0 -12
  311. package/dist/lending/addresses/takotako.js +0 -12
  312. package/dist/lending/compound-v3/publicCallBuild.js +0 -63
  313. package/dist/lending/compound-v3/publicCallParse.js +0 -135
  314. package/dist/lending/compound-v3/types.d.ts.map +0 -1
  315. package/dist/lending/compound-v3/types.js +0 -6
  316. package/dist/lending/fetchLender.js +0 -104
  317. package/dist/lending/fetchLenderAll.js +0 -12
  318. package/dist/lending/fetchLenderExt.js +0 -42
  319. package/dist/lending/index.js +0 -5
  320. package/dist/lending/init/publicCallBuild.js +0 -21
  321. package/dist/lending/init/publicCallParse.js +0 -76
  322. package/dist/lending/init/types.d.ts.map +0 -1
  323. package/dist/lending/init/types.js +0 -6
  324. package/dist/lending/morpho/convertPublic.js +0 -119
  325. package/dist/lending/morpho/fetchPublic.js +0 -72
  326. package/dist/lending/morpho/publicCallBuild.js +0 -6
  327. package/dist/lending/morpho/types.d.ts.map +0 -1
  328. package/dist/lending/morpho/types.js +0 -1
  329. package/dist/lending/types/index.d.ts.map +0 -1
  330. package/dist/lending/types/index.js +0 -1
  331. package/dist/lending/user-data/aave-v2-type/userCallBuild.js +0 -87
  332. package/dist/lending/user-data/aave-v2-type/userCallParse.js +0 -239
  333. package/dist/lending/user-data/aave-v3-type/userCallBuild.js +0 -26
  334. package/dist/lending/user-data/aave-v3-type/userCallParse.js +0 -84
  335. package/dist/lending/user-data/aave-v3-type/userCallParseYldr.js +0 -81
  336. package/dist/lending/user-data/abis.js +0 -56
  337. package/dist/lending/user-data/compound-v3/addresses.d.ts +0 -10
  338. package/dist/lending/user-data/compound-v3/addresses.d.ts.map +0 -1
  339. package/dist/lending/user-data/compound-v3/addresses.js +0 -33
  340. package/dist/lending/user-data/compound-v3/index.js +0 -3
  341. package/dist/lending/user-data/compound-v3/userCallBuild.js +0 -44
  342. package/dist/lending/user-data/compound-v3/userCallParse.js +0 -103
  343. package/dist/lending/user-data/fetchUserData.js +0 -100
  344. package/dist/lending/user-data/index.js +0 -2
  345. package/dist/lending/user-data/init/userCallBuild.js +0 -20
  346. package/dist/lending/user-data/init/userCallParse.js +0 -88
  347. package/dist/lending/user-data/morpho/decoder.js +0 -52
  348. package/dist/lending/user-data/morpho/morphoLib.js +0 -21
  349. package/dist/lending/user-data/morpho/types.js +0 -13
  350. package/dist/lending/user-data/morpho/userCallBuild.js +0 -42
  351. package/dist/lending/user-data/morpho/userCallParse.js +0 -102
  352. package/dist/lending/user-data/morpho/userCallParseNoDeploy.d.ts +0 -11
  353. package/dist/lending/user-data/morpho/userCallParseNoDeploy.d.ts.map +0 -1
  354. package/dist/lending/user-data/morpho/userCallParseNoDeploy.js +0 -112
  355. package/dist/lending/user-data/types.d.ts.map +0 -1
  356. package/dist/lending/user-data/types.js +0 -38
  357. package/dist/lending/user-data/utils/createGeneralUserState.js +0 -105
  358. package/dist/lending/user-data/utils/createMultiAccountStyleUserState.js +0 -96
  359. package/dist/lending/user-data/utils/formatting/generalFormatters.js +0 -109
  360. package/dist/lending/user-data/utils/formatting/index.js +0 -1
  361. package/dist/lending/user-data/utils/index.js +0 -17
  362. package/dist/lending-pairs/computeLendingPairs.js +0 -259
  363. package/dist/lending-pairs/index.js +0 -1
  364. package/dist/prices/defillama/index.js +0 -269
  365. package/dist/prices/index.js +0 -2
  366. package/dist/prices/main-prices/addresses/aaveOracles.d.ts +0 -278
  367. package/dist/prices/main-prices/addresses/aaveOracles.d.ts.map +0 -1
  368. package/dist/prices/main-prices/addresses/aaveOracles.js +0 -277
  369. package/dist/prices/main-prices/addresses/api3.js +0 -9
  370. package/dist/prices/main-prices/addresses/chainlink.js +0 -744
  371. package/dist/prices/main-prices/fetchOracleData.js +0 -348
  372. package/dist/prices/main-prices/index.js +0 -1
  373. package/dist/types/apiReturnType.js +0 -1
  374. package/dist/types/index.js +0 -10
  375. package/dist/types/providers.js +0 -1
  376. package/dist/utils/constants.js +0 -97
  377. package/dist/utils/index.js +0 -106
  378. package/dist/utils/multicall.js +0 -30
  379. package/dist/utils/parsing.js +0 -66
  380. package/dist/yields/index.js +0 -164
  381. package/src/abis/aave/AToken.ts +0 -686
  382. package/src/abis/aave/AaveOracle.ts +0 -66
  383. package/src/abis/aave/AavePoolAndDataProvider.ts +0 -2080
  384. package/src/abis/aave/AavePoolV3.ts +0 -1060
  385. package/src/abis/aave/AavePoolV3Upgraded.ts +0 -1474
  386. package/src/abis/aave/AaveV3ProtocolDataProvider.ts +0 -553
  387. package/src/abis/aave/VariableDebtToken.ts +0 -820
  388. package/src/abis/aave-v2/ProtocolDataProvider.ts +0 -312
  389. package/src/abis/aave-v2/YLDR.ts +0 -199
  390. package/src/abis/aave-v3/AavePoolDataProviderLegacy.ts +0 -459
  391. package/src/abis/aave-v3/AavePoolLegacy.ts +0 -1060
  392. package/src/abis/aave-v3/YLDR.ts +0 -46
  393. package/src/abis/aurelius/Rewarder.ts +0 -118
  394. package/src/abis/compound-v2/CompoundLens.ts +0 -851
  395. package/src/abis/compound-v2/Comptroller.ts +0 -2104
  396. package/src/abis/compound-v3/Comet.ts +0 -1829
  397. package/src/abis/compound-v3/CometExt.ts +0 -536
  398. package/src/abis/compound-v3/CometLens.ts +0 -194
  399. package/src/abis/compound-v3/CometRewards.ts +0 -330
  400. package/src/abis/compound-v3/IrGetter.ts +0 -31
  401. package/src/abis/flashloan-united/flashAbi.ts +0 -72
  402. package/src/abis/init/Core.ts +0 -681
  403. package/src/abis/init/InitFlashAggregator.ts +0 -795
  404. package/src/abis/init/InitLens.ts +0 -203
  405. package/src/abis/init/PosManager.ts +0 -1055
  406. package/src/abis/lendle/IncentivesController.ts +0 -525
  407. package/src/abis/lendle/MultiFeeDistribution.ts +0 -820
  408. package/src/abis/meridian/PullRewardsIncentivesController.ts +0 -98
  409. package/src/abis/morpho/blue.ts +0 -99
  410. package/src/abis/morpho/lens.ts +0 -31
  411. package/src/abis/multicall/Multicall.ts +0 -101
  412. package/src/abis/oracle/AaveOracle.ts +0 -66
  413. package/src/abis/oracle/Api3Oracle.ts +0 -62
  414. package/src/abis/oracle/ChainLinkAggregator.ts +0 -480
  415. package/src/abis/oracle/RWADynamicOracle.ts +0 -15
  416. package/src/abis/oracle/UniswapV2Pair.ts +0 -659
  417. package/src/abis/uniswap/FeeOnTransferDetector.ts +0 -133
  418. package/src/abis/uniswap/UniswapV2Pair.ts +0 -659
  419. package/src/assets/index.ts +0 -101
  420. package/src/assets/liquidityThresholds.ts +0 -83
  421. package/src/flash-liquidity/assets.ts +0 -61
  422. package/src/flash-liquidity/fetchLiquidity.ts +0 -300
  423. package/src/flash-liquidity/index.ts +0 -2
  424. package/src/flash-liquidity/types.ts +0 -20
  425. package/src/flash-liquidity/utils.ts +0 -22
  426. package/src/index.ts +0 -7
  427. package/src/lending/aave-v2-type/misc.ts +0 -9
  428. package/src/lending/aave-v2-type/publicCallBuild.ts +0 -105
  429. package/src/lending/aave-v2-type/publicCallParse.ts +0 -305
  430. package/src/lending/aave-v2-type/types.ts +0 -100
  431. package/src/lending/aave-v3-type/publicCallBuild.ts +0 -148
  432. package/src/lending/aave-v3-type/publicCallParse.ts +0 -378
  433. package/src/lending/aave-v3-type/types.ts +0 -191
  434. package/src/lending/addresses/aave.ts +0 -12
  435. package/src/lending/addresses/aaveV2.ts +0 -8
  436. package/src/lending/addresses/aurelius.ts +0 -13
  437. package/src/lending/addresses/compoundV3.ts +0 -56
  438. package/src/lending/addresses/contracts.ts +0 -54
  439. package/src/lending/addresses/hana.ts +0 -7
  440. package/src/lending/addresses/index.ts +0 -1
  441. package/src/lending/addresses/init.ts +0 -37
  442. package/src/lending/addresses/lendle.ts +0 -13
  443. package/src/lending/addresses/meridian.ts +0 -13
  444. package/src/lending/addresses/takotako.ts +0 -14
  445. package/src/lending/compound-v3/publicCallBuild.ts +0 -74
  446. package/src/lending/compound-v3/publicCallParse.ts +0 -202
  447. package/src/lending/compound-v3/types.ts +0 -45
  448. package/src/lending/fetchLender.ts +0 -181
  449. package/src/lending/fetchLenderAll.ts +0 -30
  450. package/src/lending/fetchLenderExt.ts +0 -82
  451. package/src/lending/index.ts +0 -5
  452. package/src/lending/init/publicCallBuild.ts +0 -29
  453. package/src/lending/init/publicCallParse.ts +0 -93
  454. package/src/lending/init/types.ts +0 -53
  455. package/src/lending/morpho/convertPublic.ts +0 -153
  456. package/src/lending/morpho/fetchPublic.ts +0 -80
  457. package/src/lending/morpho/publicCallBuild.ts +0 -11
  458. package/src/lending/morpho/types.ts +0 -129
  459. package/src/lending/types/index.ts +0 -16
  460. package/src/lending/user-data/aave-v2-type/userCallBuild.ts +0 -118
  461. package/src/lending/user-data/aave-v2-type/userCallParse.ts +0 -343
  462. package/src/lending/user-data/aave-v3-type/userCallBuild.ts +0 -42
  463. package/src/lending/user-data/aave-v3-type/userCallParse.ts +0 -126
  464. package/src/lending/user-data/aave-v3-type/userCallParseYldr.ts +0 -124
  465. package/src/lending/user-data/abis.ts +0 -53
  466. package/src/lending/user-data/compound-v3/addresses.ts +0 -59
  467. package/src/lending/user-data/compound-v3/index.ts +0 -3
  468. package/src/lending/user-data/compound-v3/userCallBuild.ts +0 -53
  469. package/src/lending/user-data/compound-v3/userCallParse.ts +0 -126
  470. package/src/lending/user-data/fetchUserData.ts +0 -205
  471. package/src/lending/user-data/index.ts +0 -2
  472. package/src/lending/user-data/init/userCallBuild.ts +0 -26
  473. package/src/lending/user-data/init/userCallParse.ts +0 -115
  474. package/src/lending/user-data/morpho/decoder.ts +0 -71
  475. package/src/lending/user-data/morpho/morphoLib.ts +0 -61
  476. package/src/lending/user-data/morpho/types.ts +0 -12
  477. package/src/lending/user-data/morpho/userCallBuild.ts +0 -63
  478. package/src/lending/user-data/morpho/userCallParse.ts +0 -150
  479. package/src/lending/user-data/morpho/userCallParseNoDeploy.ts +0 -168
  480. package/src/lending/user-data/types.ts +0 -300
  481. package/src/lending/user-data/utils/createGeneralUserState.ts +0 -142
  482. package/src/lending/user-data/utils/createMultiAccountStyleUserState.ts +0 -113
  483. package/src/lending/user-data/utils/formatting/generalFormatters.ts +0 -121
  484. package/src/lending/user-data/utils/formatting/index.ts +0 -1
  485. package/src/lending/user-data/utils/index.ts +0 -19
  486. package/src/lending-pairs/computeLendingPairs.ts +0 -445
  487. package/src/lending-pairs/index.ts +0 -1
  488. package/src/prices/defillama/index.ts +0 -306
  489. package/src/prices/index.ts +0 -2
  490. package/src/prices/main-prices/addresses/aaveOracles.ts +0 -278
  491. package/src/prices/main-prices/addresses/api3.ts +0 -10
  492. package/src/prices/main-prices/addresses/chainlink.ts +0 -750
  493. package/src/prices/main-prices/fetchOracleData.ts +0 -496
  494. package/src/prices/main-prices/index.ts +0 -1
  495. package/src/types/apiReturnType.ts +0 -80
  496. package/src/types/index.ts +0 -38
  497. package/src/types/providers.ts +0 -26
  498. package/src/utils/constants.ts +0 -100
  499. package/src/utils/index.ts +0 -139
  500. package/src/utils/multicall.ts +0 -53
  501. package/src/utils/parsing.ts +0 -80
  502. package/src/yields/index.ts +0 -207
  503. package/test/index.test.ts +0 -112
  504. package/test/lenderData.test.ts +0 -13320
  505. package/test/mainPrices.test.ts +0 -23
  506. package/test/morpho.test.ts +0 -20
  507. package/test/userDataMorpho.test.ts +0 -79
  508. package/test/userdata.test.ts +0 -284
  509. package/test/utils.ts +0 -13
  510. package/tsconfig.json +0 -28
@@ -1,100 +0,0 @@
1
- import { Chain } from '@1delta/asset-registry'
2
-
3
- // Uniswap interface Multicalls
4
- const CELO_MULTICALL_ADDRESS = '0x633987602DE5C4F337e3DbF265303A1080324204'
5
- const BNB_MULTICALL_ADDRESS = '0x963Df249eD09c358A4819E39d9Cd5736c3087184'
6
- const MANTLE_MULTICALL_ADDRESS = '0x2A51f2F647E1883F88C992244dEd171238693107'
7
- const ARBITRUM_ONE_MULTICALL_ADDRESS = '0xadF885960B47eA2CD9B55E6DAc6B42b7Cb2806dB'
8
- const LINEA_MULTICALL_ADDRESS = '0xac1cE734566f390A94b00eb9bf561c2625BF44ea'
9
- const AVALANCHE_MULTICALL_ADDRESS = '0x0139141Cd4Ee88dF3Cdb65881D411bAE271Ef0C2'
10
- const BASE_MULTICALL_ADDRESS = '0x091e99cb1C49331a94dD62755D168E941AbD0693'
11
- const BLAST_MULTICALL_ADDRESS = '0xdC7f370de7631cE9e2c2e1DCDA6B3B5744Cf4705'
12
- const TAIKO_MULTICALL_ADDRESS = '0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201'
13
- const HEMI_MULTICALL_ADDRESS = '0x352A86168e6988A1aDF9A15Cb00017AAd3B67155'
14
- const GNOSIS_MULTICALL_ADDRESS = '0x4dfa9a980efE4802E969AC33968E3d6E59B8a19e'
15
- const MODE_MULTICALL_ADDRESS = '0xAB39cE30D98a59DFDa40A630b074170800bfF179'
16
- const FANTOM_MULTICALL_ADDRESS = '0xDb51CffFf3B989d0cB6b58AbF173371b6F2d0D24'
17
- const SCROLL_MULTICALL_ADDRESS = '0x3b615B1AC55bc34e51a81D3dea67467F32bcb8C2'
18
- const SHAPE_MULTICALL_ADDRESS = '0x356A450B32f5030ae7083702b86FaFbBe7490411'
19
- const SONIC_MULTICALL_ADDRESS = '0x5d6b0f5335ec95cD2aB7E52f2A0750dd86502435'
20
- const INK_MULTICALL_ADDRESS = '0xA0fCec583AeE6176527C07B198e5561722332014'
21
- const METIS_MULTICALL_ADDRESS = '0x7a59ddbB76521E8982Fa3A08598C9a83b14A6C07'
22
- const IOTA_MULTICALL_ADDRESS = '0x9683D433621A83aA7dd290106e1da85251317F55'
23
- const KAVA_MULTICALL_ADDRESS = '0x8B741B0D79BE80E135C880F7583d427B4D41F015'
24
- const CORN_MULTICALL_ADDRESS = '0x5d6b0f5335ec95cD2aB7E52f2A0750dd86502435'
25
- const SAGA_MULTICALL_ADDRESS = '0x743E03cceB4af2efA3CC76838f6E8B50B63F184c'
26
- const CYBER_MULTICALL_ADDRESS = '0x906d6eB9CF8f64e100e44f8f491b833a8d40B530'
27
- const METAL_MULTICALL_ADDRESS = '0x5d6b0f5335ec95cD2aB7E52f2A0750dd86502435'
28
- const ZERO_MULTICALL_ADDRESS = '0x9CA4dcb2505fbf536F6c54AA0a77C79f4fBC35C0'
29
- const BOB_MULTICALL_ADDRESS = '0x5d6b0f5335ec95cD2aB7E52f2A0750dd86502435'
30
- const WORLDCHAIN_MULTICALL_ADDRESS = '0x0a22c04215c97E3F532F4eF30e0aD9458792dAB9'
31
- const LISK_MULTICALL_ADDRESS = '0xE3dbcD53f4Ce1b06Ab200f4912BD35672e68f1FA'
32
- const REDSTONE_MULTICALL_ADDRESS = '0xd57B52452a0FDfE3ff8e0A40Bd10D00D0bfe0723'
33
- const MANTA_MULTICALL_ADDRESS = '0x52dFC0D9960F11A9Ca9FF616e791B91188446a60'
34
- const ZORA_MULTICALL_ADDRESS = '0xA51c76bEE6746cB487a7e9312E43e2b8f4A37C15'
35
- const CORE_MULTICALL_ADDRESS = '0xFe9F82D820757787895Da00B1dBD35c3B8b04894'
36
-
37
- /**
38
- * Uniswap Interface Multicall
39
- */
40
- export const MULTICALL_ADDRESS: { [c: string]: string } = {
41
- [Chain.OP_MAINNET]: '0x1F98415757620B543A52E61c46B32eB19261F984',
42
- [Chain.POLYGON_MAINNET]: '0x1F98415757620B543A52E61c46B32eB19261F984',
43
- [Chain.ETHEREUM_MAINNET]: '0x1F98415757620B543A52E61c46B32eB19261F984',
44
- [Chain.ARBITRUM_ONE]: ARBITRUM_ONE_MULTICALL_ADDRESS,
45
- [Chain.BASE]: BASE_MULTICALL_ADDRESS,
46
- [Chain.CELO_MAINNET]: CELO_MULTICALL_ADDRESS,
47
- [Chain.BNB_SMART_CHAIN_MAINNET]: BNB_MULTICALL_ADDRESS,
48
- [Chain.MANTLE]: MANTLE_MULTICALL_ADDRESS,
49
- [Chain.BLAST]: BLAST_MULTICALL_ADDRESS,
50
- [Chain.LINEA]: LINEA_MULTICALL_ADDRESS,
51
- [Chain.AVALANCHE_C_CHAIN]: AVALANCHE_MULTICALL_ADDRESS,
52
- [Chain.TAIKO_ALETHIA]: TAIKO_MULTICALL_ADDRESS,
53
- [Chain.HEMI_NETWORK]: HEMI_MULTICALL_ADDRESS,
54
- [Chain.GNOSIS]: GNOSIS_MULTICALL_ADDRESS,
55
- [Chain.CORE_BLOCKCHAIN_MAINNET]: CORE_MULTICALL_ADDRESS,
56
- [Chain.METIS_ANDROMEDA_MAINNET]: METIS_MULTICALL_ADDRESS,
57
- [Chain.MODE]: MODE_MULTICALL_ADDRESS,
58
- [Chain.INK]: INK_MULTICALL_ADDRESS,
59
- [Chain.IOTA_EVM]: IOTA_MULTICALL_ADDRESS,
60
- [Chain.CORN]: CORN_MULTICALL_ADDRESS,
61
- [Chain.SONIC_MAINNET]: SONIC_MULTICALL_ADDRESS,
62
- [Chain.FANTOM_OPERA]: FANTOM_MULTICALL_ADDRESS,
63
- [Chain.SCROLL]: SCROLL_MULTICALL_ADDRESS,
64
- [Chain.SHAPE]: SHAPE_MULTICALL_ADDRESS,
65
- [Chain.CYBER_MAINNET]: CYBER_MULTICALL_ADDRESS,
66
- [Chain.ZORA]: ZORA_MULTICALL_ADDRESS,
67
- [Chain.MANTA_PACIFIC_MAINNET]: MANTA_MULTICALL_ADDRESS,
68
- [Chain.REDSTONE]: REDSTONE_MULTICALL_ADDRESS,
69
- [Chain.KAVA]: KAVA_MULTICALL_ADDRESS,
70
- [Chain.METAL_L2]: METAL_MULTICALL_ADDRESS,
71
- [Chain.LISK]: LISK_MULTICALL_ADDRESS,
72
- [Chain.BOB]: BOB_MULTICALL_ADDRESS,
73
- [Chain.ZERO_NETWORK]: ZERO_MULTICALL_ADDRESS,
74
- [Chain.SAGA]: SAGA_MULTICALL_ADDRESS,
75
- [Chain.WORLD_CHAIN]: WORLDCHAIN_MULTICALL_ADDRESS,
76
- }
77
-
78
- /**
79
- * 1Delta Composer Addresses
80
- */
81
- export const COMPOSERS = {
82
- [Chain.ARBITRUM_ONE]: "0x05f3f58716a88A52493Be45aA0871c55b3748f18",
83
- [Chain.OP_MAINNET]: "0xCDef0A216fcEF809258aA4f341dB1A5aB296ea72",
84
- [Chain.POLYGON_MAINNET]: "0xFd245e732b40b6BF2038e42b476bD06580585326",
85
- [Chain.BASE]: "0xB7ea94340e65CC68d1274aE483dfBE593fD6f21e",
86
- [Chain.SONIC_MAINNET]: "0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201",
87
- [Chain.HEMI_NETWORK]: "0x79f4061BF049c5c6CAC6bfe2415c2460815F4ac7",
88
- [Chain.TAIKO_ALETHIA]: "0x594cE4B82A81930cC637f1A59afdFb0D70054232",
89
- [Chain.METIS_ANDROMEDA_MAINNET]: "0xCe434378adacC51d54312c872113D687Ac19B516",
90
- [Chain.GNOSIS]: "0xcb6eb8df68153cebf60e1872273ef52075a5c297",
91
- [Chain.AVALANCHE_C_CHAIN]: '0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201',
92
- [Chain.MODE]: '0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201',
93
- [Chain.SCROLL]: '0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201',
94
- [Chain.CORE_BLOCKCHAIN_MAINNET]: "0x816EBC5cb8A5651C902Cb06659907A93E574Db0B",
95
- [Chain.FANTOM_OPERA]: "0x816EBC5cb8A5651C902Cb06659907A93E574Db0B",
96
- [Chain.BNB_SMART_CHAIN_MAINNET]: "0x816EBC5cb8A5651C902Cb06659907A93E574Db0B",
97
- [Chain.MANTLE]: "0x5c019a146758287c614fe654caec1ba1caf05f4e",
98
- [Chain.LINEA]: "0x816EBC5cb8A5651C902Cb06659907A93E574Db0B",
99
- [Chain.BLAST]: "0x816EBC5cb8A5651C902Cb06659907A93E574Db0B",
100
- }
@@ -1,139 +0,0 @@
1
- import {
2
- AAVE_FORK_POOL_DATA,
3
- AAVE_STYLE_RESERVE_ASSETS,
4
- AAVE_V2_LENDERS,
5
- AAVE_V3_LENDERS,
6
- COMPOUND_BASE_TOKENS,
7
- COMPOUND_STYLE_RESERVE_ASSETS,
8
- INIT_STYLE_RESERVE_ASSETS,
9
- Lender,
10
- SWAYLEND_RESERVE_ASSETS,
11
- INIT_CONFIG_DATA,
12
- MORPHO_BLUE_POOL_DATA,
13
- } from "@1delta/asset-registry"
14
- import { uniq } from "lodash"
15
- import { COMPOSERS } from "./constants"
16
-
17
- const AAVE_V3_KEY = "AAVE_V3"
18
- const COMPOUND_V3_KEY = "COMPOUND_V3"
19
-
20
- export function isCompoundV3(lender: string) { return lender.startsWith(COMPOUND_V3_KEY) }
21
-
22
- export function isCompoundV3Type(lender: string) { return lender.startsWith(COMPOUND_V3_KEY) }
23
-
24
- export function isInit(lender: string) { return lender === Lender.INIT }
25
-
26
- export function isMorphoType(lender: string) {
27
- return [
28
- Lender.MORPHO_BLUE
29
- ].includes(lender as any)
30
- }
31
-
32
- const SWAYLEND_KEY = "SWAYLEND"
33
-
34
- export const AAVE_V3_2_PROTOCOLS = [Lender.AAVE_V3, Lender.AAVE_V3_ETHER_FI, Lender.AAVE_V3_PRIME]
35
-
36
- export function isAaveV3Type(lender: string) {
37
- return AAVE_V3_LENDERS.includes(lender as any)
38
- }
39
-
40
- export function isAaveV3Original(lender: string) {
41
- return lender.startsWith(AAVE_V3_KEY)
42
- }
43
-
44
- export function isAaveV2Type(lender: string) {
45
- return AAVE_V2_LENDERS.includes(lender as any)
46
- }
47
-
48
- export function isYLDR(lender: string) {
49
- return lender === Lender.YLDR
50
- }
51
-
52
- export function isAaveV32Type(lender: Lender) {
53
- return AAVE_V3_2_PROTOCOLS.includes(lender)
54
- }
55
-
56
- export function isAaveType(lender: string) {
57
- return [...AAVE_V3_LENDERS, ...AAVE_V2_LENDERS].includes(lender as any)
58
- }
59
-
60
- export function isSwaylend(lender: string) {
61
- return lender.startsWith(SWAYLEND_KEY)
62
- }
63
-
64
- export const getLendersForChain = (c: string) => {
65
- let lenders: string[] = []
66
- // aaves
67
- Object.entries(AAVE_FORK_POOL_DATA).forEach(([l, data]) => {
68
- const chains = Object.keys(data)
69
- if (chains.includes(c)) lenders.push(l)
70
- })
71
-
72
- // compound V3s
73
- Object.entries(COMPOUND_BASE_TOKENS).forEach(([l, data]) => {
74
- const chains = Object.keys(data)
75
- if (chains.includes(c)) lenders.push(l)
76
- })
77
-
78
- // init
79
- Object.entries(INIT_CONFIG_DATA).forEach(([l, data]) => {
80
- const chains = Object.keys(data)
81
- if (chains.includes(c)) lenders.push(l)
82
- })
83
-
84
- // morpho
85
- Object.entries(MORPHO_BLUE_POOL_DATA).forEach(([l, data]) => {
86
- const chains = Object.keys(data)
87
- if (chains.includes(c)) lenders.push(l)
88
- })
89
-
90
-
91
- return lenders
92
- }
93
-
94
- /** Filter lenders by protocol list */
95
- export const filterLendersByProtocol = (allLenders: string[], protocolList?: string[]): string[] => {
96
- // return all lenders if no filter is provided
97
- if (!protocolList || protocolList.length === 0) {
98
- return allLenders
99
- }
100
-
101
- const hasMorpho = protocolList.includes(Lender.MORPHO_BLUE)
102
- // Filter lenders based on protocol list
103
- return allLenders.filter((lender) => protocolList.includes(lender) || (hasMorpho && lender.startsWith("MORPHO_BLUE")))
104
- }
105
-
106
- const getAavesForChain = () => {
107
- let lenders: { [c: string]: string[] } = {}
108
- Object.entries(AAVE_FORK_POOL_DATA).forEach(([l, data]) => {
109
- Object.entries(data).forEach(([chain, data]) => {
110
- if (!lenders[chain]) lenders[chain] = []
111
- lenders[chain] = uniq([...lenders[chain], l])
112
- })
113
- })
114
- return lenders
115
- }
116
-
117
- /** All aave protocols per chain */
118
- export const AAVES_PER_CHAIN = getAavesForChain()
119
-
120
- export const getComposerAddress = (chainId: string): string => {
121
- return COMPOSERS[chainId as keyof typeof COMPOSERS]
122
- }
123
-
124
- export const getLenderAssets = (
125
- chainId: string | number | undefined,
126
- lendingProtocol = Lender.AAVE_V3
127
- ): string[] => {
128
- if (!chainId) return []
129
- if (isAaveType(lendingProtocol)) return AAVE_STYLE_RESERVE_ASSETS[lendingProtocol]?.[chainId] ?? []
130
- if (isCompoundV3(lendingProtocol)) return COMPOUND_STYLE_RESERVE_ASSETS[lendingProtocol]?.[chainId] ?? []
131
- if (isInit(lendingProtocol)) return INIT_STYLE_RESERVE_ASSETS[lendingProtocol]?.[chainId] ?? []
132
- if (isSwaylend(lendingProtocol)) return SWAYLEND_RESERVE_ASSETS[lendingProtocol]?.[chainId ?? 0] ?? []
133
- return []
134
- }
135
-
136
-
137
- export function isMultiMarket(lender: string) {
138
- return lender.startsWith("MORPHO_BLUE")
139
- }
@@ -1,53 +0,0 @@
1
- import { isArray } from 'lodash'
2
- import { GeneralCall, GetEvmClientFunction } from '../types'
3
-
4
- export type Call = GeneralCall
5
-
6
-
7
- interface ViemMulticallresult {
8
- result: any[],
9
- status: string
10
- }
11
-
12
- const MULTICALL_DEFAULT_BATCH_SIZE = 4096
13
-
14
- const maxRetries = 3
15
-
16
-
17
- /** Same as Multicall viem except that the abi param is supposed to be the abi per call */
18
- export const multicallViemAbiArray = async (
19
- chainId: string,
20
- abi: any[],
21
- calls: Call[],
22
- getEvmClient: GetEvmClientFunction,
23
- retry = true,
24
- providerId = 0,
25
- retries = maxRetries
26
- ): Promise<any[]> => {
27
- try {
28
- const provider = getEvmClient(chainId, providerId)
29
-
30
- const abiIsArray = isArray(abi[0])
31
- const returnData = await provider.multicall({
32
- allowFailure: true,
33
- batchSize: MULTICALL_DEFAULT_BATCH_SIZE,
34
- contracts: calls.map(({ address, name, params }, i) => ({
35
- abi: abiIsArray ? abi?.[i] as any : abi,
36
- address: address as any,
37
- functionName: name,
38
- args: params,
39
- })),
40
- })
41
- const res = (returnData as any[]).map(
42
- ({ result, status }: ViemMulticallresult) => status !== "success" ? '0x' : result
43
- );
44
- return res
45
- } catch (error: any) {
46
- console.log("error in multicall", error)
47
- retries--;
48
- if (retries < 0) throw new Error("Failed too often")
49
- providerId++;
50
-
51
- return multicallViemAbiArray(chainId, abi, calls, getEvmClient, retry, providerId, retries)
52
- }
53
- }
@@ -1,80 +0,0 @@
1
- import { Chain, Lender } from "@1delta/asset-registry";
2
- import { formatEther, formatUnits } from "viem";
3
- import { isCompoundV3 } from ".";
4
-
5
- export const BPS = 10000;
6
-
7
- export const parseRawAmount = (answer?: string, decimals = 18): string => {
8
- if (!answer || answer === "0x") return "0";
9
- try {
10
- return formatUnits(BigInt(answer ?? "0"), decimals ?? 18);
11
- } catch (e) {
12
- return "0";
13
- }
14
- };
15
-
16
- export enum TimeScale {
17
- BLOCK,
18
- MS,
19
- }
20
-
21
- const BLOCK_TIMES: { [chainId: string]: number } = {
22
- 5: 12,
23
- 1: 12,
24
- 56: 3,
25
- };
26
-
27
- // Converters from apy to apr and reversed
28
-
29
- const SECONDS_PER_YEAR = 31536000;
30
-
31
- export const aprToApy = (apr: number) => {
32
- return (1 + apr / SECONDS_PER_YEAR) ** SECONDS_PER_YEAR - 1;
33
- };
34
-
35
- export const apyToApr = (apy: number) => {
36
- return ((apy + 1) ** (1 / SECONDS_PER_YEAR) - 1) * SECONDS_PER_YEAR;
37
- };
38
-
39
- export const apyToAprPercent = (apy: number) => {
40
- return 100 * ((apy / 100 + 1) ** (1 / SECONDS_PER_YEAR) - 1) * SECONDS_PER_YEAR;
41
- };
42
-
43
-
44
- export const formatAaveYieldToNumber = (n?: string | bigint): number => {
45
- if (!n) return 0;
46
- return Number(formatEther(BigInt(n) / BigInt(1e7)));
47
- };
48
-
49
- export const calculateRateForCompound = (
50
- n: string,
51
- chainId: string,
52
- lender = Lender.COMPOUND_V3_USDCE
53
- ): number => {
54
- let scale = TimeScale.MS;
55
- if (isCompoundV3(lender) || Lender.COMPOUND_V2) {
56
- scale = TimeScale.BLOCK;
57
- } else if (chainId === Chain.BNB_SMART_CHAIN_MAINNET) {
58
- scale = TimeScale.BLOCK;
59
- }
60
- const rate = Number(formatEther(BigInt(n)));
61
- if (scale === TimeScale.BLOCK)
62
- return (
63
- (Math.pow((rate * 60 * 60 * 24) / (BLOCK_TIMES[chainId] ?? 1) + 1, 365) -
64
- 1) *
65
- 100
66
- );
67
-
68
- return (Math.pow(rate * 60 * 60 * 24 + 1, 365) - 1) * 100;
69
- };
70
- export const formatAaveRawApyToApr = (raw: bigint | string | undefined) => {
71
- const apy = formatAaveYieldToNumber(raw);
72
- return apyToApr(apy / 100) * 100;
73
- };
74
-
75
- // converts rate per second to rate per year
76
- export const convertRateToApr = (ratePerSecond: number | string) => {
77
- const rps = Number(ratePerSecond);
78
- if (isNaN(rps)) return 0;
79
- return rps * 3600 * 24 * 365 * 100;
80
- };
@@ -1,207 +0,0 @@
1
- import { apyToAprPercent, apyToApr } from "../utils/parsing"
2
-
3
- const FeedData = {
4
- WSTETH: 'https://eth-api.lido.fi/v1/protocol/steth/apr/sma',
5
- STMATIC: 'https://polygon.lido.fi/api/stats',
6
- CBETH: 'https://api.exchange.coinbase.com/wrapped-assets/cbeth',
7
- MATICX: 'https://universe.staderlabs.com/polygon/apy',
8
- METH: 'https://meth.mantle.xyz/api/stats/apy',
9
- SUSDE: 'https://yields.llama.fi/poolsEnriched?pool=66985a81-9c51-46ca-9977-42b4fe7bc6df',
10
- EZETH: 'https://app.renzoprotocol.com/api/stats?chainId=1',
11
- RETH: 'https://api.rocketpool.net/api/mainnet/payload',
12
- WEETH: 'https://www.ether.fi/api/apr',
13
- SAVAX: "https://api.benqi.fi/liquidstaking/apr",
14
- RSETH: "https://universe.kelpdao.xyz/rseth/totalApy",
15
- TRUMATIC: "https://api.trufin.io/staker/apy?staker=MATIC"
16
- }
17
-
18
- const LenderAPIs = {
19
- MERIDIAN: 'https://omnidex.bmaa3ajd1gjri.eu-west-2.cs.amazonlightsail.com/lending_yields'
20
- }
21
-
22
- enum MeridainNetwork {
23
- TAIKO = 'taiko'
24
- }
25
-
26
- function formatMeridianKey(k: string) {
27
- const _k = k.toUpperCase()
28
- if (_k === "USDT") return 'USDT.E'
29
- if (_k === "USDCE") return 'USDC.E'
30
- return _k
31
- }
32
-
33
- // Converters from apy to apr and reversed
34
-
35
- interface LenderAssetReward {
36
- deposit: number
37
- borrow: number
38
- additionalDepositData: any
39
- additionalBorrowData: any
40
- }
41
-
42
- export interface YieldDataWithTimestamp {
43
- intrinsicYields: { [asset: string]: number | undefined }
44
- lenderRewards: { [chainId: number]: { [lender: string]: { [asset: string]: LenderAssetReward } } }
45
- }
46
-
47
- const safeFetch = async <T>(label: string, fn: () => Promise<T>): Promise<T | undefined> => {
48
- try {
49
- return await fn()
50
- } catch (e) {
51
- console.error(`Error fetching ${label}:`, e)
52
- return undefined
53
- }
54
- }
55
-
56
-
57
- export const fetchGeneralYields = async () => {
58
- const wstethPromise = safeFetch('WSTETH', async () => {
59
- const res = await fetch(FeedData.WSTETH).then(r => r.json())
60
- return Number(res.data.aprs.at(-1).apr) * 0.9
61
- })
62
-
63
- const ezethPromise = safeFetch('EZETH', async () => {
64
- const res = await fetch(FeedData.EZETH).then(r => r.json())
65
- return Number(res.data.apr.data.rate)
66
- })
67
-
68
- const rethPromise = safeFetch('RETH', async () => {
69
- const res = await fetch(FeedData.RETH).then(r => r.json())
70
- return Number(res.rethAPR)
71
- })
72
-
73
- const weethPromise = safeFetch('WEETH', async () => {
74
- const wstethRes = await fetch(FeedData.WSTETH).then(r => r.json())
75
- const wstethApr = Number(wstethRes.data.aprs.at(-1).apr) * 0.9
76
- let aYield = 0
77
- try {
78
- const weethRes = await fetch(FeedData.WEETH).then(r => r.json())
79
- aYield = Number(weethRes.lrt2Apr)
80
- } catch (e) {
81
- aYield = 0.5
82
- }
83
- return aYield + wstethApr
84
- })
85
-
86
- const stmaticPromise = safeFetch('STMATIC', async () => {
87
- const res = await fetch(FeedData.STMATIC).then(r => r.json())
88
- return Number(res.apr) * 0.9
89
- })
90
-
91
- const savaxPromise = safeFetch('SAVAX', async () => {
92
- const res = await fetch(FeedData.SAVAX).then(r => r.json())
93
- return Number(res.apr) * 100
94
- })
95
-
96
- const methPromise = safeFetch('METH', async () => {
97
- const res = await fetch(FeedData.METH).then(r => r.json())
98
- return apyToApr(Number(res.data[0]?.OneDayAPY)) * 100
99
- })
100
-
101
- const maticxPromise = safeFetch('MATICX', async () => {
102
- const res = await fetch(FeedData.MATICX).then(r => r.json())
103
- return Number(res.value) * 0.9
104
- })
105
-
106
- const susdePromise = safeFetch('SUSDE', async () => {
107
- try {
108
- const res = await fetch(FeedData.SUSDE).then(r => r.json())
109
- return apyToAprPercent(res?.data[0]?.apy ?? 0)
110
- } catch (e) {
111
- return 0
112
- }
113
- })
114
-
115
- const rsethPromise = safeFetch('RSETH', async () => {
116
- const res = await fetch(FeedData.RSETH).then(r => r.json())
117
- return apyToAprPercent(res.totalAPY)
118
- })
119
-
120
- const trumaticPromise = safeFetch('TRUMATIC', async () => {
121
- const res = await fetch(FeedData.TRUMATIC).then(r => r.json())
122
- return apyToAprPercent(res.apy)
123
- })
124
-
125
- const cbethPromise = safeFetch('CBETH', async () => {
126
- try {
127
- const res = await fetch(FeedData.CBETH, {
128
- headers: {
129
- "User-Agent": "1delta/yields",
130
- "Content-Type": "application/json"
131
- }
132
- }).then(r => r.json())
133
- return apyToAprPercent(res.apy) * 100
134
- } catch (e) {
135
- console.log("CBETH failed", e)
136
- return 0
137
- }
138
- })
139
-
140
- const meridianPromise = safeFetch('MERIDIAN', async () => {
141
- const res = await fetch(LenderAPIs.MERIDIAN).then(r => r.json())
142
- const taikoData = res[MeridainNetwork.TAIKO]
143
- return Object.assign({}, ...Object.keys(taikoData).map(key => ({
144
- [formatMeridianKey(key)]: {
145
- deposit: taikoData[key].apy_reward,
146
- borrow: taikoData[key].apy_reward_borrow
147
- }
148
- })))
149
- })
150
-
151
- const [
152
- wstethData,
153
- ezethData,
154
- rethData,
155
- weethData,
156
- stmaticData,
157
- methData,
158
- maticXdata,
159
- susdeData,
160
- meridianData,
161
- savaxData,
162
- cbethData,
163
- rsethData,
164
- trumaticData
165
- ] = await Promise.all([
166
- wstethPromise,
167
- ezethPromise,
168
- rethPromise,
169
- weethPromise,
170
- stmaticPromise,
171
- methPromise,
172
- maticxPromise,
173
- susdePromise,
174
- meridianPromise,
175
- savaxPromise,
176
- cbethPromise,
177
- rsethPromise,
178
- trumaticPromise,
179
- ])
180
-
181
- const data: YieldDataWithTimestamp = {
182
- intrinsicYields: {
183
- MATICX: maticXdata,
184
- METH: methData,
185
- CMETH: methData,
186
- WSTETH: wstethData,
187
- EZETH: ezethData,
188
- RETH: rethData,
189
- WEETH: weethData,
190
- STMATIC: stmaticData,
191
- USDY: 4.35,
192
- USDE: 0,
193
- SUSDE: susdeData,
194
- SAVAX: savaxData,
195
- CBETH: cbethData,
196
- RSETH: rsethData,
197
- TRUMATIC: trumaticData,
198
- },
199
- lenderRewards: {
200
- "167000": {
201
- MERIDIAN: meridianData
202
- }
203
- }
204
- }
205
- return data
206
- }
207
-
@@ -1,112 +0,0 @@
1
- import { describe, it } from 'vitest'
2
- import { attachPricesToFlashLiquidity, fetchDefillamaData, fetchFlashLiquidityForChain, fetchGeneralYields, fetchMainPrices, getLenderPublicData } from "../src"
3
- import { getEvmClient, multicallRetry } from "@1delta/providers"
4
- import { Chain } from "@1delta/asset-registry"
5
- import { getLendersForChain } from '../src/utils'
6
-
7
-
8
- describe('find prices', () => {
9
- it('should return prices for valid tokens', async () => {
10
-
11
- const yields = await fetchGeneralYields()
12
-
13
- console.log("yields", yields)
14
-
15
- })
16
-
17
- it('should return prices for valid tokens', async () => {
18
-
19
- const yields = await fetchDefillamaData()
20
-
21
- console.log("yields", yields)
22
-
23
- })
24
- }, { timeout: 10000 })
25
-
26
- describe('find flash liquidity', () => {
27
- it('flash liquidity for chain', async () => {
28
-
29
- const chain = Chain.BASE
30
-
31
- const liquidity = await fetchFlashLiquidityForChain(chain, multicallRetry)
32
-
33
- console.log("liquidity", liquidity)
34
-
35
- const prices = await fetchMainPrices([chain], getEvmClient)
36
-
37
- console.log("prices", prices)
38
-
39
- const dataWithPrices = attachPricesToFlashLiquidity(chain, liquidity, prices)
40
-
41
- console.log(dataWithPrices)
42
-
43
- })
44
- }, { timeout: 10000 })
45
-
46
-
47
- describe('find lending data', () => {
48
- it('should return prices for valid tokens', async () => {
49
- const chainId = Chain.AVALANCHE_C_CHAIN
50
-
51
-
52
- const ps = [
53
- fetchDefillamaData(),
54
- fetchGeneralYields(),
55
- ]
56
-
57
- const [prices, yields] = await Promise.all(ps)
58
-
59
- // console.log("yields", yields)
60
- // console.log("prices", prices)
61
-
62
- const lenders = getLendersForChain(chainId) as any
63
- // console.log("lenders", lenders)
64
- const lendingData = await getLenderPublicData(
65
- chainId,
66
- lenders,
67
- prices as any,
68
- yields as any,
69
- multicallRetry
70
- )
71
-
72
- prettyPrint(lendingData)
73
-
74
- // console.log(JSON.stringify(list, null, 2))
75
- // const token = list.BRBTC.currencies.find(a => a.chainId === chainId)
76
-
77
- // const bases = [
78
- // ...list.WBTC.currencies.filter(a => a.chainId === chainId).map(a => ({ ...a, assetGroup: "WBTC" })),
79
- // ...list.UNIBTC.currencies.filter(a => a.chainId === chainId).map(a => ({ ...a, assetGroup: "BTCB" })),
80
- // ...list.USDC.currencies.filter(a => a.chainId === chainId).map(a => ({ ...a, assetGroup: "USDC" })),
81
- // { ...WRAPPED_NATIVE_INFO[chainId], chainId, assetGroup: "ETH" }
82
- // ]
83
-
84
- // const pools = await fetchV3StylePools(
85
- // // @ts-ignore
86
- // token,
87
- // bases
88
- // )
89
-
90
- // Object.entries(pools).map(([c, a]) => console.log(c, a))
91
-
92
- // const price = getTokenPrice(token!, pools)
93
- // console.log(token?.symbol, "price", price, "USD")
94
- // // expect(result.pricesMap[1]['0xbase']).toBe(5)
95
- // // expect(result.pricesMap[1]['0xquote']).toBeCloseTo(0.2) // 1 / 5
96
- // // expect(result.pricesUnavailable[1]).toBeUndefined()
97
- })
98
- }, { timeout: 10000 })
99
-
100
-
101
- function prettyPrint(obj: any) {
102
- for (const key in obj) {
103
- const value = obj[key]
104
- const keyStr = `\x1b[1m\x1b[36m${key}:\x1b[0m` // bold cyan
105
- if (typeof value === 'object' && value !== null) {
106
- console.log(`${keyStr}`)
107
- console.dir(value, { depth: null, colors: true })
108
- } else {
109
- console.log(`${keyStr} ${value}`)
110
- }
111
- }
112
- }