@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,124 +0,0 @@
1
- import { Lender } from "@1delta/asset-registry"
2
- import { getAaveAssets, getAssetMeta, toGenericPriceKey, toOracleKey } from "../../../assets"
3
- import { AaveV3UserReserveResponse } from "../types"
4
- import { createBaseTypeUserState } from "../utils"
5
- import { YldrTypeGetUserReserveIndexes } from "../../aave-v3-type/types"
6
- import { parseRawAmount } from "../../../utils/parsing"
7
-
8
- /** Like Aave V3, not stable debt data and no emode */
9
- export const getYldrUserDataConverter = (
10
- lender: Lender,
11
- chainId: string,
12
- account: string,
13
- prices: { [asset: string]: number },
14
- pricesHist: { [asset: string]: number },
15
- lenderData: any
16
- ): [(data: any[]) => AaveV3UserReserveResponse | undefined, number] => {
17
-
18
- const assetsToQuery = getAaveAssets(chainId, lender)
19
- const expectedNumberOfCalls = assetsToQuery.length
20
- return [
21
- (data: any[]) => {
22
- if (data.length !== expectedNumberOfCalls) {
23
- return undefined
24
- }
25
- const lendingPositions: { [asset: string]: any } = {}
26
-
27
- let totalDebt24h = 0
28
- let totalDeposits24h = 0
29
-
30
- for (let i = 0; i < assetsToQuery.length; i++) {
31
- const asset = assetsToQuery[i]
32
- const {
33
- dataForAsset,
34
- addedDebt,
35
- addedDeposits
36
- } = createAaveV3Entry(
37
- i,
38
- data,
39
- chainId,
40
- asset,
41
- prices,
42
- pricesHist,
43
- )
44
- if (!dataForAsset) continue;
45
- totalDebt24h += addedDebt
46
- totalDeposits24h += addedDeposits
47
- lendingPositions[asset] = dataForAsset
48
- }
49
-
50
- const payload = {
51
- chainId,
52
- account,
53
- lendingPositions: { "0": lendingPositions },
54
- rewards: {},
55
- userEMode: 0,
56
- }
57
-
58
- const userData = createBaseTypeUserState(payload, lenderData, totalDeposits24h, totalDebt24h)
59
- return {
60
- ...payload,
61
- ...userData
62
- }
63
- },
64
- expectedNumberOfCalls,
65
- ]
66
- }
67
-
68
- function createAaveV3Entry(
69
- i: number,
70
- data: any[],
71
- chainId: string,
72
- asset: string,
73
- prices: any,
74
- pricesHist: any,
75
- ) {
76
- const reserveData = data[i]
77
-
78
- const currentATokenBalanceRaw = reserveData[YldrTypeGetUserReserveIndexes.currentYTokenBalance]?.toString()
79
- const currentVariableDebtRaw = reserveData[YldrTypeGetUserReserveIndexes.currentVariableDebt]?.toString()
80
-
81
-
82
- if (
83
- currentATokenBalanceRaw === "0" &&
84
- currentVariableDebtRaw === "0") {
85
- return {
86
- dataForAsset: undefined,
87
- addedDeposits: 0,
88
- addedDebt: 0
89
- }
90
- }
91
-
92
- const assetMeta = getAssetMeta(chainId, asset)
93
- const decimals = assetMeta?.decimals ?? 18
94
-
95
- const currentATokenBalance = parseRawAmount(currentATokenBalanceRaw, decimals)
96
- const currentVariableDebt = parseRawAmount(currentVariableDebtRaw, decimals)
97
-
98
-
99
- const key = toOracleKey(assetMeta?.assetGroup) ?? toGenericPriceKey(asset, chainId)
100
- // prices
101
- const price = prices[key] ?? 1
102
- const priceHist = pricesHist?.[key] ?? price
103
-
104
- const dataForAsset = {
105
- poolId: asset,
106
- underlying: asset,
107
- deposits: currentATokenBalance,
108
- depositsRaw: currentATokenBalanceRaw,
109
- debtStable: "0",
110
- debt: currentVariableDebt,
111
- depositsUSD: Number(currentATokenBalance) * price,
112
- debtStableUSD: 0,
113
- debtUSD: Number(currentVariableDebt) * price,
114
- stableBorrowRate: 0,
115
- collateralActive: Boolean(reserveData[YldrTypeGetUserReserveIndexes.usageAsCollateralEnabled]),
116
- claimableRewards: 0,
117
- }
118
-
119
- return {
120
- dataForAsset,
121
- addedDeposits: Number(currentATokenBalance) * priceHist,
122
- addedDebt: Number(currentVariableDebt) * priceHist
123
- }
124
- }
@@ -1,53 +0,0 @@
1
- import { Lender } from "@1delta/asset-registry"
2
- import { isAaveV2Type, isAaveV3Type, isCompoundV3, isInit, isAaveV32Type, isYLDR, isMorphoType } from "../../utils"
3
- import { IncentivesControllerAbi } from "../../abis/lendle/IncentivesController"
4
- import { RewarderAbi } from "../../abis/aurelius/Rewarder"
5
- import { AavePoolV3UpgradedAbi } from "../../abis/aave/AavePoolV3Upgraded"
6
- import { AaveV3ProtocolDataProviderAbi } from "../../abis/aave/AaveV3ProtocolDataProvider"
7
- import { InitLensAbi } from "../../abis/init/InitLens"
8
- import { CometAbi } from "../../abis/compound-v3/Comet"
9
- import { CometExtAbi } from "../../abis/compound-v3/CometExt"
10
- import { AavePoolLegacyAbi } from "../../abis/aave-v3/AavePoolLegacy"
11
- import { AavePoolDataProviderLegacyAbi } from "../../abis/aave-v3/AavePoolDataProviderLegacy"
12
- import { AavePoolAndDataProviderAbi } from "../../abis/aave/AavePoolAndDataProvider"
13
- import { VariableDebtTokenAbi } from "../../abis/aave/VariableDebtToken"
14
- import { MultiFeeDistributionAbi } from "../../abis/lendle/MultiFeeDistribution"
15
- import { PullRewardsIncentivesController } from "../../abis/meridian/PullRewardsIncentivesController"
16
- import { CometRewardsAbi } from "../../abis/compound-v3/CometRewards"
17
- import { YLDRAbi } from "../../abis/aave-v3/YLDR"
18
- import { MorphoBlueAbi } from "../../abis/morpho/blue"
19
- import { MorphoLensAbi } from "../../abis/morpho/lens"
20
-
21
- export const getAbi = (lender: Lender) => {
22
- if (isAaveV2Type(lender as any)) return [
23
- ...AavePoolAndDataProviderAbi,
24
- ...VariableDebtTokenAbi,
25
- ...RewarderAbi,
26
- ...PullRewardsIncentivesController,
27
- ...IncentivesControllerAbi,
28
- ...MultiFeeDistributionAbi
29
- ]
30
- if (isYLDR(lender as any)) return [
31
- ...VariableDebtTokenAbi,
32
- ...YLDRAbi
33
- ]
34
-
35
- if (isAaveV32Type(lender as any)) return [
36
- ...AavePoolV3UpgradedAbi,
37
- ...AaveV3ProtocolDataProviderAbi
38
- ]
39
-
40
- if (isAaveV3Type(lender as any)) return [
41
- ...AavePoolLegacyAbi,
42
- ...VariableDebtTokenAbi,
43
- ...AavePoolDataProviderLegacyAbi
44
- ]
45
- if (isCompoundV3(lender as any)) return [
46
- ...CometAbi,
47
- ...CometExtAbi,
48
- ...CometRewardsAbi,
49
- ]
50
- if(isMorphoType(lender)) return [...MorphoBlueAbi, ...MorphoLensAbi]
51
- if (isInit(lender as any)) return InitLensAbi
52
- return []
53
- }
@@ -1,59 +0,0 @@
1
- import {
2
- Chain,
3
- COMETS_PER_CHAIN_MAP,
4
- COMPOUND_BASE_TOKENS,
5
- Lender,
6
- SWAYLEND_BASE_TOKENS,
7
- } from "@1delta/asset-registry";
8
-
9
- export function getCompoundV3CometAddress(
10
- chainId: string,
11
- lender = Lender.COMPOUND_V3_USDCE
12
- ): string | undefined {
13
- return COMETS_PER_CHAIN_MAP[chainId]?.[lender];
14
- }
15
-
16
- export function getCompoundV3CometRewardsAddress(chainId: string) {
17
- return addressesCompoundV3.cometRewards[
18
- chainId as keyof typeof addressesCompoundV3.cometRewards
19
- ];
20
- }
21
-
22
- export function getCompoundV3CometIRGetterAddress(chainId: string) {
23
- return addressesCompoundV3.lens[
24
- chainId as keyof typeof addressesCompoundV3.lens
25
- ];
26
- }
27
-
28
- export function getCompoundV3CometLens(chainId: string) {
29
- return addressesCompoundV3.lens[
30
- chainId as keyof typeof addressesCompoundV3.lens
31
- ];
32
- }
33
-
34
- const addressesCompoundV3 = {
35
- lens: {
36
- [Chain.POLYGON_MAINNET]: "0x4eDA401658c5286d16c4d342884F32280B4E8b1b",
37
- [Chain.MANTLE]: "0x32B31A066c8dd3F7b77283Ba1d89Ddaf6DA0a8aE",
38
- [Chain.ARBITRUM_ONE]: "0x13D9c35f4901491Ac4FFebd3100238BBfFBD7181",
39
- [Chain.BASE]: "0x7e2D250E4FD0EeD6BD2cB3DC525A2b9f12508152",
40
- [Chain.OP_MAINNET]: "0xA453ba397c61B0c292EA3959A858821145B2707F",
41
- },
42
- cometRewards: {
43
- [Chain.POLYGON_MAINNET]: "0x45939657d1CA34A8FA39A924B71D28Fe8431e581",
44
- [Chain.MANTLE]: "0xCd83CbBFCE149d141A5171C3D6a0F0fCCeE225Ab",
45
- [Chain.ARBITRUM_ONE]: "0x88730d254A2f7e6AC8388c3198aFd694bA9f7fae",
46
- [Chain.BASE]: "0x123964802e6ABabBE1Bc9547D72Ef1B69B00A6b1",
47
- [Chain.OP_MAINNET]: "0x443EA0340cb75a160F31A440722dec7b5bc3C2E9",
48
- },
49
- };
50
-
51
- export function getCompoundV3BaseAsset(
52
- lender: Lender | string,
53
- chainId: string
54
- ) {
55
- return (
56
- COMPOUND_BASE_TOKENS[lender]?.[chainId] ??
57
- SWAYLEND_BASE_TOKENS[lender]?.[chainId]
58
- );
59
- }
@@ -1,3 +0,0 @@
1
- export * from "./userCallBuild"
2
- export * from "./userCallParse"
3
- export * from "./addresses"
@@ -1,53 +0,0 @@
1
- import { Lender } from "@1delta/asset-registry"
2
- import { Call } from "../../../utils/multicall"
3
- import { getComposerAddress, getLenderAssets } from "../../../utils"
4
- import { getCompoundV3BaseAsset, getCompoundV3CometAddress, getCompoundV3CometRewardsAddress } from "./addresses"
5
-
6
- export const buildCompoundV3UserCall = (chainId: string, lender: Lender, account: string): Call[] => {
7
-
8
- const baseAsset = getCompoundV3BaseAsset(lender, chainId).baseAsset
9
- const cometContractAddress = getCompoundV3CometAddress(chainId, lender)!
10
- const assets = getLenderAssets(chainId, lender)
11
- const assetsNoBase = assets.filter(a => a !== baseAsset)
12
-
13
- const allowedCall = {
14
- address: cometContractAddress,
15
- name: 'isAllowed',
16
- params: [account, getComposerAddress(chainId)],
17
- }
18
-
19
- const baseCalls = [
20
- {
21
- address: cometContractAddress,
22
- name: 'balanceOf',
23
- params: [account],
24
- },
25
- {
26
- address: cometContractAddress,
27
- name: 'borrowBalanceOf',
28
- params: [account],
29
- }
30
- ]
31
-
32
- const callsNonBase: Call[] = assetsNoBase.map((tk) => {
33
- return {
34
- address: cometContractAddress,
35
- name: 'userCollateral',
36
- params: [account, tk],
37
- }
38
- })
39
-
40
- const callEarnedBalances = {
41
- address: getCompoundV3CometRewardsAddress(chainId),
42
- name: 'getRewardOwed',
43
- params: [cometContractAddress, account],
44
- }
45
- const calls = [
46
- ...callsNonBase,
47
- ...baseCalls,
48
- allowedCall,
49
- callEarnedBalances
50
- ]
51
- return calls
52
-
53
- }
@@ -1,126 +0,0 @@
1
- import { Lender } from "@1delta/asset-registry"
2
- import { CompoundV3UserReserveResponse } from "../types"
3
- import { getAssetMeta, getCompoundV3Assets, toGenericPriceKey, toOracleKey } from "../../../assets"
4
- import { getCompoundV3BaseAsset } from "./addresses"
5
- import { parseRawAmount } from "../../../utils/parsing"
6
- import { Asset as SupportedAssets } from "@1delta/asset-registry"
7
- import { createBaseTypeUserState } from "../utils"
8
-
9
- export const getCompoundV3UserDataConverter = (
10
- lender: Lender,
11
- chainId: string,
12
- account: string,
13
- prices: { [asset: string]: number },
14
- pricesHist: { [asset: string]: number },
15
- lenderData: any
16
- ): [(data: any[]) => CompoundV3UserReserveResponse | undefined, number] => {
17
-
18
- const assetAddresses = getCompoundV3Assets(chainId, lender)
19
- const baseAsset = getCompoundV3BaseAsset(lender, chainId).baseAsset
20
- const assetsNoBase = assetAddresses.filter(a => a !== baseAsset)
21
- const expectedNumberOfCalls = assetsNoBase.length + 2 + 1 + 1
22
- return [
23
- (data: any[]) => {
24
- if (data.length !== expectedNumberOfCalls) {
25
- return undefined
26
- }
27
-
28
- const isAllowed = Boolean(data[expectedNumberOfCalls - 2])
29
-
30
- let totalDebt24h = 0
31
- let totalDeposits24h = 0
32
-
33
- let result: { [asset: string]: any } = {}
34
- for (let i = 0; i < assetsNoBase.length; i++) {
35
- const asset = assetsNoBase[i]
36
- const assetMeta = getAssetMeta(chainId, asset)
37
- const decimals = assetMeta?.decimals ?? 18
38
- const depositsRaw = data[i][0]?.toString()
39
- if(depositsRaw === "0") continue;
40
- const deposits = parseRawAmount(depositsRaw, decimals)
41
- const key = toOracleKey(assetMeta?.assetGroup) ?? toGenericPriceKey(asset, chainId)
42
- const price = prices[key] ?? 1
43
-
44
- const priceHist = pricesHist?.[key] ?? price
45
-
46
- // accure
47
- totalDeposits24h += Number(deposits) * priceHist
48
-
49
- result[asset] = {
50
- poolId: asset,
51
- underlying: asset,
52
- deposits,
53
- depositsUSD: Number(deposits) * price,
54
- debtStableUSD: 0,
55
- debt: "0",
56
- debtStable: "0",
57
- debtUSD: 0,
58
- collateralActive: true,
59
- // user depos raw
60
- depositsRaw,
61
- // flag for allowance
62
- isAllowed,
63
- }
64
- }
65
-
66
- const depositsRaw = data[assetsNoBase.length]?.toString()
67
- const debtRaw = data[assetsNoBase.length + 1]?.toString()
68
- const baseMeta = getAssetMeta(chainId, baseAsset)
69
- const baseDecimals = baseMeta.decimals ?? 18
70
- const deposits = parseRawAmount(depositsRaw, baseDecimals)
71
- const debt = parseRawAmount(debtRaw, baseDecimals)
72
- const oracleKeyBase = toOracleKey(baseMeta?.assetGroup) ?? toGenericPriceKey(baseMeta.baseAsset, chainId)
73
- const priceBase = prices[oracleKeyBase]
74
- const priceBaseHist = pricesHist?.[oracleKeyBase] ?? priceBase
75
-
76
- // accrue base data
77
- totalDebt24h += Number(debt) * priceBaseHist
78
- totalDeposits24h += Number(deposits) * priceBaseHist
79
-
80
- const resultBase = {
81
- [baseAsset]: {
82
- poolId: baseAsset,
83
- underlying: baseAsset,
84
- deposits,
85
- debt,
86
- depositsUSD: Number(deposits) * priceBase,
87
- debtUSD: Number(debt) * priceBase,
88
- // populate values for totals
89
- debtStable: "0",
90
- debtStableUSD: 0,
91
- collateralActive: true,
92
- // user depos raw
93
- depositsRaw,
94
- // flag for allowance
95
- isAllowed,
96
- },
97
- }
98
-
99
-
100
- // the result is an array: [tokenAddress, owedAmount] (tokenAddress should be always COMP)
101
- // so we take [1] to get the owedAmount
102
- const earnedBalances = data[expectedNumberOfCalls - 1]
103
-
104
- const compRewards = Number(parseRawAmount(earnedBalances?.owed?.toString(), 18))
105
- const payload = {
106
- lendingPositions: { [0]: { ...result, ...resultBase } },
107
- chainId,
108
- baseAsset,
109
- rewards: {
110
- [SupportedAssets.COMP]: {
111
- totalRewards: compRewards,
112
- claimableRewards: compRewards
113
- }
114
- },
115
- account
116
- }
117
-
118
- const userData = createBaseTypeUserState(payload, lenderData, totalDeposits24h, totalDebt24h)
119
- return {
120
- ...payload,
121
- ...userData
122
- }
123
- },
124
- expectedNumberOfCalls,
125
- ]
126
- }
@@ -1,205 +0,0 @@
1
- import { Call, multicallViemAbiArray } from '../../utils/multicall'
2
- import { Lender } from '@1delta/asset-registry'
3
- import {
4
- isAaveV2Type,
5
- isAaveV3Type,
6
- isInit,
7
- isMorphoType,
8
- isMultiMarket,
9
- isYLDR,
10
- } from '../../utils'
11
- import { LenderUserQuery, organizeUserQueries } from './types'
12
- import { GetEvmClientFunction } from '../../types'
13
- import { buildAaveV2UserCall } from './aave-v2-type/userCallBuild'
14
- import { buildAaveV3UserCall } from './aave-v3-type/userCallBuild'
15
- import { buildInitUserCall } from './init/userCallBuild'
16
- import { buildCompoundV3UserCall } from './compound-v3/userCallBuild'
17
- import { getAbi } from './abis'
18
- import { getAaveV2UserDataConverter } from './aave-v2-type/userCallParse'
19
- import { getAaveV3UserDataConverter } from './aave-v3-type/userCallParse'
20
- import { getInitUserDataConverter } from './init/userCallParse'
21
- import { getCompoundV3UserDataConverter } from './compound-v3/userCallParse'
22
- import { getYldrUserDataConverter } from './aave-v3-type/userCallParseYldr'
23
- import { buildMorphoUserCallWithLens } from './morpho/userCallBuild'
24
- import { getMorphoUserDataConverterWithlens } from './morpho/userCallParse'
25
-
26
- function buildUserCall(
27
- chainId: string,
28
- lender: Lender,
29
- account: string,
30
- params?: any,
31
- ) {
32
- if (isAaveV2Type(lender)) return buildAaveV2UserCall(chainId, lender, account)
33
- if (isAaveV3Type(lender)) return buildAaveV3UserCall(chainId, lender, account)
34
- if (isInit(lender)) return buildInitUserCall(chainId, lender, account)
35
- if (isMorphoType(lender))
36
- return buildMorphoUserCallWithLens(chainId, account, lender, params)
37
- return buildCompoundV3UserCall(chainId, lender, account)
38
- }
39
-
40
- function getUserDataConverter(
41
- lender: Lender,
42
- chainId: string,
43
- account: string,
44
- prices: { [a: string]: number },
45
- pricesHist: { [a: string]: number },
46
- lenderPublicState: any,
47
- params?: any,
48
- ) {
49
- if (isYLDR(lender))
50
- return getYldrUserDataConverter(
51
- lender,
52
- chainId,
53
- account,
54
- prices,
55
- pricesHist,
56
- lenderPublicState?.data?.[lender]?.data,
57
- )
58
- if (isAaveV2Type(lender))
59
- return getAaveV2UserDataConverter(
60
- lender,
61
- chainId,
62
- account,
63
- prices,
64
- pricesHist,
65
- lenderPublicState?.data?.[lender]?.data,
66
- )
67
- if (isAaveV3Type(lender))
68
- return getAaveV3UserDataConverter(
69
- lender,
70
- chainId,
71
- account,
72
- prices,
73
- pricesHist,
74
- lenderPublicState?.data?.[lender]?.data,
75
- )
76
- if (isInit(lender))
77
- return getInitUserDataConverter(
78
- lender,
79
- chainId,
80
- account,
81
- prices,
82
- pricesHist,
83
- lenderPublicState?.data?.[lender]?.data,
84
- )
85
- if (isMorphoType(lender))
86
- return getMorphoUserDataConverterWithlens(
87
- lender,
88
- chainId,
89
- account,
90
- params,
91
- prices,
92
- pricesHist,
93
- lenderPublicState?.data,
94
- )
95
- return getCompoundV3UserDataConverter(
96
- lender,
97
- chainId,
98
- account,
99
- prices,
100
- pricesHist,
101
- lenderPublicState?.data?.[lender]?.data,
102
- )
103
- }
104
-
105
- /**
106
- * Builds the multicall calls for the given queries and returns the raw results
107
- * @param chainId - The chain ID
108
- * @param queries - The queries to fetch data for
109
- * @param getEvmClient - Injected function to get EVM client
110
- * @returns The raw results from the multicall
111
- */
112
- export const getLenderUserDataResult = async (
113
- chainId: string,
114
- queriesRaw: LenderUserQuery[],
115
- getEvmClient: GetEvmClientFunction,
116
- ): Promise<any[]> => {
117
- let calls: {
118
- call: Call
119
- abi: any
120
- }[] = []
121
-
122
- const queries = organizeUserQueries(queriesRaw)
123
- for (const query of queries) {
124
- const abi = getAbi(query.lender)
125
- const callData = buildUserCall(
126
- chainId,
127
- query.lender,
128
- query.account,
129
- query.params,
130
- )
131
- const mappedCalls = callData.map((call) => ({ call, abi }))
132
- calls = [...calls, ...mappedCalls]
133
- }
134
-
135
- return await multicallViemAbiArray(
136
- chainId,
137
- calls.map((call) => call.abi),
138
- calls.map((call) => call.call),
139
- getEvmClient,
140
- true,
141
- 0,
142
- 3,
143
- )
144
- }
145
-
146
- /**
147
- * Converts the raw results into the desired format
148
- * @param chainId - The chain ID
149
- * @param queries - The queries to fetch data for
150
- * @param rawResults - The raw results from the multicall (getLenderUserDataResult)
151
- * @param prices - The prices for the assets
152
- * @param pricesHist - The historical prices for the assets
153
- * @param lenderState - The state of the lender
154
- * @returns The converted data
155
- */
156
- export const convertLenderUserDataResult = (
157
- chainId: string,
158
- queriesRaw: LenderUserQuery[],
159
- rawResults: any[],
160
- prices: any,
161
- pricesHist: any,
162
- lenderState: any,
163
- ): { [lender: string]: any } => {
164
- const queries = organizeUserQueries(queriesRaw)
165
-
166
- const lenderData: { [lender: string]: any } = {}
167
- let currentSlice = 0
168
- for (const query of queries) {
169
- const [converter, sliceLength] = getUserDataConverter(
170
- query.lender,
171
- chainId,
172
- query.account,
173
- prices,
174
- pricesHist,
175
- lenderState[chainId],
176
- query.params,
177
- )
178
-
179
- try {
180
- const data = rawResults.slice(currentSlice, currentSlice + sliceLength)
181
- const convertedData = converter(data)
182
-
183
- if (convertedData) {
184
- if (isMultiMarket(query.lender)) {
185
- Object.keys(convertedData).forEach((market) => {
186
- lenderData[market] = {
187
- // @ts-ignore
188
- [query.account.toLowerCase()]: convertedData[market],
189
- }
190
- })
191
- } else {
192
- // map it to the user address
193
- lenderData[query.lender] = {
194
- [query.account.toLowerCase()]: convertedData,
195
- }
196
- }
197
- }
198
- } catch (e) {
199
- console.log('Error parsing for', query.lender, 'on', chainId, e)
200
- }
201
- currentSlice += sliceLength
202
- }
203
-
204
- return lenderData
205
- }
@@ -1,2 +0,0 @@
1
- export * from "./fetchUserData"
2
- export * from "./types"
@@ -1,26 +0,0 @@
1
- import { Chain, Lender } from "@1delta/asset-registry"
2
- import { Call } from "../../../utils/multicall"
3
- import { getInitLensAddress } from "../../addresses/init"
4
-
5
- export const initBrokerAddresses = {
6
- [Chain.MANTLE]: '0xc08BFef7E778f3519D79E96780b77066F5d4FCC0'
7
- }
8
-
9
- export function getInitFlashAggregatorAddress(chainId?: string) {
10
- if (!chainId) return undefined
11
- return initBrokerAddresses[chainId as keyof typeof initBrokerAddresses]
12
- }
13
-
14
- export const buildInitUserCall = (chainId: string, lender: Lender, account: string): Call[] => {
15
- const lensContract = getInitLensAddress(chainId)
16
- const brokerAddress = getInitFlashAggregatorAddress(chainId)
17
-
18
- const call: Call = {
19
- address: lensContract,
20
- name: 'getUserPositionData',
21
- params: [account, brokerAddress],
22
- }
23
-
24
- return [call]
25
-
26
- }