@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,54 +0,0 @@
1
- import { addressesAaveV2Core } from "./aaveV2";
2
- import { addressesAaveCore } from "./aave";
3
- import { addressesLendleCore } from "./lendle";
4
- import { addressesAureliusCore } from "./aurelius";
5
- import { addressesMeridianCore } from "./meridian";
6
- import { addressesTakoTakoCore } from "./takotako";
7
- import { zeroAddress } from "viem";
8
- import { Lender } from "@1delta/asset-registry";
9
-
10
- export function getAaveTypeOracleAddress(chainId: string, lender: Lender) {
11
- switch (lender) {
12
- // @ts-ignore
13
- case Lender.AAVE_V2: return addressesAaveV2Core.AaveOracle[chainId]
14
- // @ts-ignore
15
- case Lender.AAVE_V3: return addressesAaveCore.AaveOracle[chainId]
16
- // @ts-ignore
17
- case Lender.LENDLE: return addressesLendleCore.AaveOracle[chainId]
18
- // @ts-ignore
19
- case Lender.AURELIUS: return addressesAureliusCore.AaveOracle[chainId]
20
- // @ts-ignore
21
- case Lender.MERIDIAN: return addressesMeridianCore.AaveOracle[chainId]
22
- // @ts-ignore
23
- case Lender.TAKOTAKO: return addressesTakoTakoCore.AaveOracle[chainId]
24
- default: return zeroAddress
25
- }
26
- }
27
-
28
-
29
-
30
- export function getAaveTypeIncentivesControllerAddress(chainId: string, lender: Lender) {
31
- switch (lender) {
32
- // @ts-ignore
33
- case Lender.AAVE_V2: return addressesAaveV2Core.IncentivesController[chainId]
34
- // @ts-ignore
35
- case Lender.AAVE_V3: return addressesAaveCore.IncentivesController[chainId]
36
- // @ts-ignore
37
- case Lender.LENDLE: return addressesLendleCore.IncentivesController[chainId]
38
- // @ts-ignore
39
- case Lender.AURELIUS: return addressesAureliusCore.IncentivesController[chainId]
40
- // @ts-ignore
41
- case Lender.MERIDIAN: return addressesMeridianCore.IncentivesController[chainId]
42
- // @ts-ignore
43
- case Lender.TAKOTAKO: return addressesTakoTakoCore.IncentivesController[chainId]
44
- default: return zeroAddress
45
- }
46
- }
47
-
48
- export function getAaveTypeMultiFeeDistribution(chainId: string, lender: Lender) {
49
- switch (lender) {
50
- // @ts-ignore
51
- case Lender.LENDLE: return addressesLendleCore.MultiFeeDistribution[chainId]
52
- default: return zeroAddress
53
- }
54
- }
@@ -1,7 +0,0 @@
1
- import { Chain } from "@1delta/asset-registry";
2
-
3
- export const addressesHanaCore = {
4
- AaveOracle: {
5
- [Chain.TAIKO_ALETHIA]: '0x47bD9d96B420709B2C6270da99459de9B3550Ea1',
6
- },
7
- }
@@ -1 +0,0 @@
1
- export * from './contracts'
@@ -1,37 +0,0 @@
1
- import { Chain } from "@1delta/asset-registry"
2
-
3
- export function getInitPosManagerAddress(chainId: string) {
4
- // @ts-ignore
5
- return addressesInitCore.PosManager[chainId]
6
- }
7
-
8
- export function getInitCoreAddress(chainId: string) {
9
- // @ts-ignore
10
- return addressesInitCore.Core[chainId]
11
- }
12
-
13
- export function getInitLensAddress(chainId: string) {
14
- // @ts-ignore
15
- return addressesInitCore.PublicLens[chainId]
16
- }
17
-
18
- const addressesInitCore = {
19
- InitOracle: {
20
- [Chain.MANTLE]: '0x4E195A32b2f6eBa9c4565bA49bef34F23c2C0350'
21
- },
22
- Core: {
23
- [Chain.MANTLE]: '0x972BcB0284cca0152527c4f70f8F689852bCAFc5'
24
- },
25
- Config: {
26
- [Chain.MANTLE]: '0x007F91636E0f986068Ef27c950FA18734BA553Ac'
27
- },
28
- PosManager: {
29
- [Chain.MANTLE]: '0x0e7401707CD08c03CDb53DAEF3295DDFb68BBa92'
30
- },
31
- Lens: {
32
- [Chain.MANTLE]: '0x7d2b278b8ef87bEb83AeC01243ff2Fed57456042'
33
- },
34
- PublicLens: {
35
- [Chain.MANTLE]: '0xDf75fF0452eDf4897B051A54b406eB384503Ac39'
36
- },
37
- }
@@ -1,13 +0,0 @@
1
- import { Chain } from "@1delta/asset-registry";
2
-
3
- export const addressesLendleCore = {
4
- AaveOracle: {
5
- [Chain.MANTLE]: '0x870c9692Ab04944C86ec6FEeF63F261226506EfC'
6
- },
7
- IncentivesController: {
8
- [Chain.MANTLE]: '0x79e2fd1c484EB9EE45001A98Ce31F28918F27C41'
9
- },
10
- MultiFeeDistribution: {
11
- [Chain.MANTLE]: '0x5C75A733656c3E42E44AFFf1aCa1913611F49230'
12
- },
13
- }
@@ -1,13 +0,0 @@
1
- import { Chain } from "@1delta/asset-registry";
2
-
3
- export const addressesMeridianCore = {
4
- AaveOracle: {
5
- [Chain.TAIKO_ALETHIA]: '0xd79417be2cE02fc22F2E520869b1DfC02a677751',
6
- },
7
- IncentivesController: {
8
- [Chain.TAIKO_ALETHIA]: '0xb3020EbFD800B488B64E92A8717E826cBf0d63E2'
9
- },
10
- MultiFeeDistribution: {
11
- [Chain.TAIKO_ALETHIA]: '0xb0e103e2A80489Ba697D882EEd0Ba552389Ca31E'
12
- }
13
- }
@@ -1,14 +0,0 @@
1
- import { Chain } from "@1delta/asset-registry";
2
-
3
-
4
- export const addressesTakoTakoCore = {
5
- AaveOracle: {
6
- [Chain.TAIKO_ALETHIA]: '0x4Feb232c357F5Fb11A6Ff43FC46808BebC2f55b5'
7
- },
8
- IncentivesController: {
9
- [Chain.TAIKO_ALETHIA]: '0x'
10
- },
11
- MultiFeeDistribution: {
12
- [Chain.TAIKO_ALETHIA]: '0x'
13
- },
14
- }
@@ -1,74 +0,0 @@
1
- import { Lender } from "@1delta/asset-registry"
2
- import { getCompoundV3Assets } from "../../assets"
3
- import { getCompoundV3BaseAsset, getCompoundV3CometAddress, getCompoundV3CometIRGetterAddress } from "../addresses/compoundV3"
4
- import { Call } from "../../utils/multicall"
5
-
6
- export const buildCompoundV3StyleLenderReserveCall = (chainId: string, lender: Lender) => {
7
-
8
- const baseAssetData = getCompoundV3BaseAsset(lender, chainId)
9
- const underlyingArray = getCompoundV3Assets(chainId, lender)
10
- const cometContractAddress = getCompoundV3CometAddress(chainId, lender)!
11
- const assetsToQuery = underlyingArray
12
- const tokensNoBase = assetsToQuery.filter(a => a !== baseAssetData.baseAsset)
13
-
14
- const callsAssetInfoAndTotals: Call[] = tokensNoBase.flatMap((tk) => {
15
- return [
16
- {
17
- address: cometContractAddress,
18
- name: 'getAssetInfoByAddress',
19
- params: [tk],
20
- },
21
- {
22
- address: cometContractAddress,
23
- name: 'totalsCollateral',
24
- params: [tk],
25
- }
26
- ]
27
- })
28
-
29
- const callSupplyRewards: Call = {
30
- address: cometContractAddress,
31
- name: 'baseTrackingSupplySpeed',
32
- params: [],
33
- }
34
-
35
- const callBorrowRewards: Call = {
36
- address: cometContractAddress,
37
- name: 'baseTrackingBorrowSpeed',
38
- params: [],
39
- }
40
-
41
- const callIndexScale: Call = {
42
- address: cometContractAddress,
43
- name: 'baseIndexScale',
44
- params: [],
45
- }
46
-
47
- const callSupply: Call = {
48
- address: cometContractAddress,
49
- name: 'totalSupply',
50
- params: [],
51
- }
52
-
53
- const callBorrow: Call = {
54
- address: cometContractAddress,
55
- name: 'totalBorrow',
56
- params: [],
57
- }
58
-
59
- const callInterest: Call = {
60
- address: getCompoundV3CometIRGetterAddress(chainId),
61
- name: 'getCometInterest',
62
- params: [cometContractAddress],
63
- }
64
- const calls = [
65
- ...callsAssetInfoAndTotals,
66
- callSupplyRewards,
67
- callBorrowRewards,
68
- callIndexScale, // rewards data
69
- callSupply,
70
- callBorrow, // supply / borrow
71
- callInterest
72
- ]
73
- return calls
74
- }
@@ -1,202 +0,0 @@
1
- import { Lender } from '@1delta/asset-registry'
2
- import { AdditionalYields } from '../../types'
3
- import {
4
- CometInterestRateIndexes,
5
- CompoundV3GeneralPublicResponse,
6
- } from './types'
7
- import {
8
- getAssetMeta,
9
- getCompoundV3Assets,
10
- LENDER_MODE_NO_MODE,
11
- toGenericPriceKey,
12
- toOracleKey,
13
- } from '../../assets'
14
- import { getCompoundV3BaseAsset } from '../addresses/compoundV3'
15
- import { calculateRateForCompound, parseRawAmount } from '../../utils/parsing'
16
- import { GenericTokenList } from '../types'
17
-
18
- const COMET_RISK_DECIMALS = 18
19
- const SECONDS_PER_DAY = 3600 * 24
20
- const DAYS_IN_YEAR = 365
21
-
22
- export const getCompoundV3ReservesDataConverter = (
23
- lender: Lender,
24
- chainId: string,
25
- prices: { [asset: string]: number },
26
- additionalYields: AdditionalYields,
27
- tokenList: GenericTokenList = {},
28
- ): [(data: any[]) => CompoundV3GeneralPublicResponse | undefined, number] => {
29
- const assetsToQuery = getCompoundV3Assets(chainId, lender)
30
- const baseAssetData = getCompoundV3BaseAsset(lender, chainId)
31
- const tokensNoBase = assetsToQuery.filter(
32
- (a) => a !== baseAssetData.baseAsset,
33
- )
34
-
35
- const baseLength = tokensNoBase.length * 2
36
- const expectedNumberOfCalls = baseLength + 6
37
- return [
38
- (data: any[]) => {
39
- if (data.length !== expectedNumberOfCalls) {
40
- return undefined
41
- }
42
- let result: any = {}
43
- for (let i = 0; i < tokensNoBase.length; i++) {
44
- const asset = tokensNoBase[i]
45
- const resultsAssetInfo = data[i * 2]
46
- const resultsTotals = data[i * 2 + 1]
47
- const assetMeta = tokenList[asset] ?? {
48
- ...getAssetMeta(chainId, asset),
49
- address: asset,
50
- }
51
- const decimals = assetMeta?.decimals ?? 18
52
- const totals = parseRawAmount(resultsTotals[0], decimals)
53
- const oracleKey =
54
- toOracleKey(assetMeta?.assetGroup) ??
55
- toGenericPriceKey(asset, chainId)
56
- result[asset] = {
57
- poolId: asset,
58
- underlying: asset,
59
- asset: assetMeta,
60
- config: {
61
- [LENDER_MODE_NO_MODE]: {
62
- category: LENDER_MODE_NO_MODE,
63
- // collateral factors
64
- borrowCollateralFactor: parseRawAmount(
65
- resultsAssetInfo.borrowCollateralFactor.toString(),
66
- COMET_RISK_DECIMALS,
67
- ),
68
- collateralFactor: parseRawAmount(
69
- resultsAssetInfo.liquidateCollateralFactor.toString(),
70
- COMET_RISK_DECIMALS,
71
- ),
72
- borrowFactor: 1,
73
- },
74
- },
75
- supplyCap: parseRawAmount(
76
- resultsAssetInfo.supplyCap.toString(),
77
- decimals,
78
- ),
79
-
80
- // interest rates
81
- variableBorrowRate: 0,
82
- stableBorrowRate: 0,
83
- depositRate: 0,
84
- stakingYield: additionalYields.intrinsicYields[oracleKey] ?? 0,
85
-
86
- utilization: 0,
87
- // debt and liquidity are zero
88
- totalDebt: 0,
89
- totalDebtUSD: 0,
90
- totalLiquidity: 0,
91
- totalLiquidityUSD: 0,
92
- // deposits are different outputs for base asset and others
93
- totalDeposits: totals,
94
- totalDepositsUSD: Number(totals) * (prices[oracleKey] ?? 1),
95
- // rewards
96
- rewards: {},
97
- borrowingEnabled: false,
98
- }
99
- }
100
-
101
- const baseMeta = tokenList[baseAssetData.baseAsset] ?? {
102
- ...getAssetMeta(chainId, baseAssetData.baseAsset),
103
- address: baseAssetData.baseAsset,
104
- }
105
-
106
- // parse data for rewards calculation
107
- const decimals = baseMeta?.decimals ?? 18
108
- const resultsSupplyRewards = Number(data[baseLength]?.toString())
109
- const resultsBorrowRewards = Number(data[baseLength + 1]?.toString())
110
- const resultsIndexScale = data[baseLength + 2]?.toString()
111
- const resultsSupply = parseRawAmount(
112
- data[baseLength + 3]?.toString(),
113
- decimals,
114
- )
115
- const resultsBorrow = parseRawAmount(
116
- data[baseLength + 4]?.toString(),
117
- decimals,
118
- )
119
-
120
- const compToSuppliersPerDay =
121
- (resultsSupplyRewards / Number(resultsIndexScale)) * SECONDS_PER_DAY
122
- const compToBorrowersPerDay =
123
- (resultsBorrowRewards / Number(resultsIndexScale)) * SECONDS_PER_DAY
124
-
125
- const resultsInterest = data[baseLength + 5]
126
-
127
- const oracleKeyBase =
128
- toOracleKey(baseMeta?.assetGroup) ??
129
- toGenericPriceKey(baseAssetData.baseAsset, chainId)
130
- const price = prices[oracleKeyBase] ?? 1
131
- const liquidity = Number(resultsSupply) - Number(resultsBorrow)
132
- const compPrice = prices['COMP']
133
-
134
- const baseData = {
135
- [baseAssetData.baseAsset]: {
136
- poolId: baseAssetData.baseAsset,
137
- underlying: baseAssetData.baseAsset,
138
- asset: baseMeta,
139
- // collateral factots
140
- borrowCollateralFactor: 0,
141
- collateralFactor: 0,
142
- supplyCap: 0,
143
-
144
- config: {
145
- [LENDER_MODE_NO_MODE]: {
146
- category: LENDER_MODE_NO_MODE,
147
- // collateral factors
148
- borrowCollateralFactor: 0,
149
- collateralFactor: 0,
150
- borrowFactor: 1,
151
- },
152
- },
153
- // interest rates
154
- variableBorrowRate: calculateRateForCompound(
155
- resultsInterest[CometInterestRateIndexes.borrowRate].toString(),
156
- chainId,
157
- lender,
158
- ),
159
- depositRate: calculateRateForCompound(
160
- resultsInterest[CometInterestRateIndexes.supplyRate].toString(),
161
- chainId,
162
- lender,
163
- ),
164
- stableBorrowRate: 0,
165
- utilization: parseRawAmount(
166
- resultsInterest[CometInterestRateIndexes.utilization].toString(),
167
- COMET_RISK_DECIMALS,
168
- ),
169
-
170
- totalLiquidity: liquidity,
171
- totalLiquidityUSD: liquidity * price,
172
-
173
- totalDebt: resultsBorrow,
174
- totalDeposits: resultsSupply,
175
-
176
- totalDebtUSD: Number(resultsBorrow) * price,
177
- totalDepositsUSD: Number(resultsSupply) * price,
178
- // rewards
179
- rewards: {
180
- COMP: {
181
- depositRate:
182
- (((compPrice * compToSuppliersPerDay) / Number(resultsSupply)) *
183
- DAYS_IN_YEAR *
184
- 100) /
185
- price,
186
- variableBorrowRate:
187
- (((compPrice * compToBorrowersPerDay) / Number(resultsBorrow)) *
188
- DAYS_IN_YEAR *
189
- 100) /
190
- price,
191
- stableBorrowRate: 0,
192
- },
193
- },
194
- borrowingEnabled: true,
195
- stakingYield: additionalYields.intrinsicYields[oracleKeyBase] ?? 0,
196
- },
197
- }
198
- return { data: { ...result, ...baseData }, chainId }
199
- },
200
- expectedNumberOfCalls,
201
- ]
202
- }
@@ -1,45 +0,0 @@
1
- import { RewardsMap } from "../aave-v3-type/types";
2
- import { GenericCurrency } from "../types";
3
-
4
-
5
-
6
- export enum CometInterestRateIndexes {
7
- borrowRate = 0,
8
- supplyRate = 1,
9
- utilization = 2
10
- }
11
-
12
- export interface CompoundV3GeneralPublicResponse {
13
- data: {
14
- [tokenSymbol: string]: {
15
- asset: GenericCurrency
16
-
17
- config: {
18
- [0]: {
19
- category: 0,
20
- // collateral factors
21
- borrowCollateralFactor: number,
22
- collateralFactor: number,
23
- borrowFactor: 1
24
- }
25
- }
26
-
27
- liquidationFactor: string;
28
- supplyCap: number;
29
-
30
- // interest rates
31
- variableBorrowRate: number;
32
- depositRate: number;
33
-
34
- utilization: number;
35
-
36
- totalDebt: number;
37
- // deposits are different outputs for base asset and others
38
- totalDeposits: number;
39
-
40
- // rewards
41
- rewards?: RewardsMap
42
- }
43
- },
44
- chainId: string;
45
- }
@@ -1,181 +0,0 @@
1
- // aave v2 style
2
- import { ProtocolDataProviderAbi } from '../abis/aave-v2/ProtocolDataProvider'
3
- import { IncentivesControllerAbi } from '../abis/lendle/IncentivesController'
4
- import { RewarderAbi } from '../abis/aurelius/Rewarder'
5
- import { UniswapV2PairAbi } from '../abis/uniswap/UniswapV2Pair'
6
-
7
- // aave v3 style
8
- import { AavePoolV3UpgradedAbi } from '../abis/aave/AavePoolV3Upgraded'
9
- import { AaveV3ProtocolDataProviderAbi } from '../abis/aave/AaveV3ProtocolDataProvider'
10
-
11
- // init
12
- import { InitLensAbi } from '../abis/init/InitLens'
13
-
14
- // compound v3
15
- import { CometAbi } from '../abis/compound-v3/Comet'
16
- import { CometExtAbi } from '../abis/compound-v3/CometExt'
17
- import { IrgetterAbi } from '../abis/compound-v3/IrGetter'
18
-
19
- import {
20
- isAaveV2Type,
21
- isAaveV3Original,
22
- isAaveV3Type,
23
- isCompoundV3,
24
- isInit,
25
- } from '../utils'
26
- import { AdditionalYields, MulticallRetryFunction } from '../types'
27
- import { buildAaveV2StyleLenderReserveCall } from './aave-v2-type/publicCallBuild'
28
- import { buildAaveV3StyleLenderReserveCall } from './aave-v3-type/publicCallBuild'
29
- import { buildInitStyleLenderReserveCall } from './init/publicCallBuild'
30
- import { buildCompoundV3StyleLenderReserveCall } from './compound-v3/publicCallBuild'
31
- import { getAaveV2ReservesDataConverter } from './aave-v2-type/publicCallParse'
32
- import { getAaveV3ReservesDataConverter } from './aave-v3-type/publicCallParse'
33
- import { getInitReservesDataConverter } from './init/publicCallParse'
34
- import { getCompoundV3ReservesDataConverter } from './compound-v3/publicCallParse'
35
- import { AavePoolLegacyAbi } from '../abis/aave-v3/AavePoolLegacy'
36
- import { AavePoolDataProviderLegacyAbi } from '../abis/aave-v3/AavePoolDataProviderLegacy'
37
- import { Lender } from '@1delta/asset-registry'
38
- import { Call } from 'viem'
39
- import { YLDRProtocolDataProviderAbi } from '../abis/aave-v2/YLDR'
40
- import { GenericTokenList } from './types'
41
-
42
- function buildLenderCall(chainId: string, lender: Lender) {
43
- if (isAaveV2Type(lender))
44
- return buildAaveV2StyleLenderReserveCall(chainId, lender)
45
- if (isAaveV3Type(lender))
46
- return buildAaveV3StyleLenderReserveCall(chainId, lender)
47
- if (isCompoundV3(lender))
48
- return buildCompoundV3StyleLenderReserveCall(chainId, lender)
49
- if (isInit(lender)) return buildInitStyleLenderReserveCall(chainId, lender)
50
- return []
51
- }
52
-
53
- function getLenderDataConverter(
54
- lender: Lender,
55
- chainId: string,
56
- prices: { [a: string]: number },
57
- additionalYields: AdditionalYields,
58
- tokenList: GenericTokenList = {},
59
- ) {
60
- if (isAaveV2Type(lender))
61
- return getAaveV2ReservesDataConverter(
62
- lender,
63
- chainId,
64
- prices,
65
- additionalYields,
66
- tokenList,
67
- )
68
- if (isAaveV3Type(lender))
69
- return getAaveV3ReservesDataConverter(
70
- lender,
71
- chainId,
72
- prices,
73
- additionalYields,
74
- tokenList,
75
- )
76
- if (isCompoundV3(lender))
77
- return getCompoundV3ReservesDataConverter(
78
- lender,
79
- chainId,
80
- prices,
81
- additionalYields,
82
- tokenList,
83
- )
84
-
85
- if (isInit(lender))
86
- return getInitReservesDataConverter(
87
- lender,
88
- chainId,
89
- prices,
90
- additionalYields,
91
- tokenList,
92
- )
93
- return [() => null, 0] as any
94
- }
95
-
96
- const getAbi = (lender: string) => {
97
- if (isAaveV2Type(lender))
98
- return [
99
- ...ProtocolDataProviderAbi,
100
- ...UniswapV2PairAbi,
101
- ...RewarderAbi,
102
- ...IncentivesControllerAbi,
103
- ]
104
-
105
- if (isAaveV3Original(lender))
106
- return [...AavePoolV3UpgradedAbi, ...AaveV3ProtocolDataProviderAbi]
107
- if (lender === Lender.YLDR) return [...YLDRProtocolDataProviderAbi]
108
-
109
- if (isAaveV3Type(lender))
110
- return [...AavePoolLegacyAbi, ...AavePoolDataProviderLegacyAbi]
111
-
112
- if (isCompoundV3(lender)) return [...IrgetterAbi, ...CometAbi, ...CometExtAbi]
113
-
114
- if (isInit(lender)) return InitLensAbi
115
-
116
- return []
117
- }
118
-
119
- export const getLenderPublicData = async (
120
- chainId: string,
121
- lenders: Lender[],
122
- prices: { [asset: string]: number },
123
- additionalYields: AdditionalYields,
124
- multicallRetry: MulticallRetryFunction,
125
- tokenList: () => Promise<GenericTokenList> = async () => {
126
- return {}
127
- },
128
- ): Promise<{ [lender: string]: any }> => {
129
- let calls: {
130
- call: Call
131
- abi: any
132
- }[] = []
133
-
134
- for (const lender of lenders) {
135
- const abi = getAbi(lender)
136
- const callData = buildLenderCall(chainId, lender)
137
- const mappedCalls = callData.map((call) => ({ call, abi }))
138
- // @ts-ignore
139
- calls = [...calls, ...mappedCalls]
140
- }
141
- /** fetch list and on-chainData */
142
- const [rawResults, list] = await Promise.all([
143
- multicallRetry(
144
- chainId,
145
- calls.map((call) => call.call) as any[],
146
- calls.map((call) => call.abi),
147
- // default size
148
- // retries = 3
149
- // provider = 0
150
- // allowFailure = false
151
- ),
152
- await tokenList(),
153
- ])
154
-
155
- const invalidLenders: string[] = []
156
- const lenderData: { [lender: string]: any } = {}
157
-
158
- let currentSlice = 0
159
- for (const lender of lenders) {
160
- const [converter, sliceLength] = getLenderDataConverter(
161
- lender,
162
- chainId,
163
- prices,
164
- additionalYields,
165
- list,
166
- )
167
- if (sliceLength > 0) {
168
- const data = rawResults.slice(currentSlice, currentSlice + sliceLength)
169
- const convertedData = converter(data)
170
- if (!convertedData) {
171
- invalidLenders.push(lender)
172
- } else {
173
- lenderData[lender] = convertedData
174
- }
175
-
176
- currentSlice += sliceLength
177
- }
178
- }
179
-
180
- return lenderData
181
- }
@@ -1,30 +0,0 @@
1
- import { AdditionalYields, MulticallRetryFunction } from '../types'
2
- import { Lender } from '@1delta/asset-registry'
3
- import { getLenderPublicData } from './fetchLender'
4
- import { getLenderPublicDataViaApi } from './fetchLenderExt'
5
- import { GenericTokenList } from './types'
6
-
7
- const LENDERS_VIA_API: string[] = [Lender.MORPHO_BLUE]
8
-
9
- export const getLenderPublicDataAll = async (
10
- chainId: string,
11
- lenders: Lender[],
12
- prices: { [asset: string]: number },
13
- additionalYields: AdditionalYields,
14
- multicallRetry: MulticallRetryFunction,
15
- tokenList?: () => Promise<GenericTokenList>
16
- ): Promise<{ [lender: string]: any }> => {
17
-
18
- const lendersApi = lenders.filter(l => LENDERS_VIA_API.includes(l))
19
-
20
- const lendersOnChain = lenders.filter(l => !LENDERS_VIA_API.includes(l))
21
-
22
- const onChain = getLenderPublicData(chainId, lendersOnChain, prices, additionalYields, multicallRetry, tokenList)
23
-
24
- const api = getLenderPublicDataViaApi(chainId, lendersApi, prices, additionalYields, tokenList)
25
-
26
- const [onChainRes, apiRes] = await Promise.all([onChain, api])
27
-
28
- return { ...onChainRes, ...apiRes }
29
-
30
- }