@1delta/margin-fetcher 0.0.46 → 0.0.47

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 (412) hide show
  1. package/dist/_esm-GM6SX2RK.js +55 -0
  2. package/dist/abis/aave/AaveOracle.d.ts +50 -0
  3. package/dist/abis/aave/AaveOracle.d.ts.map +1 -0
  4. package/dist/abis/aave/AavePoolAndDataProvider.d.ts +1618 -0
  5. package/dist/abis/aave/AavePoolAndDataProvider.d.ts.map +1 -0
  6. package/dist/abis/aave/AavePoolV3Upgraded.d.ts +1134 -0
  7. package/dist/abis/aave/AavePoolV3Upgraded.d.ts.map +1 -0
  8. package/dist/abis/aave/AaveV3ProtocolDataProvider.d.ts +420 -0
  9. package/dist/abis/aave/AaveV3ProtocolDataProvider.d.ts.map +1 -0
  10. package/dist/abis/aave/VariableDebtToken.d.ts +635 -0
  11. package/dist/abis/aave/VariableDebtToken.d.ts.map +1 -0
  12. package/dist/abis/aave-v2/ProtocolDataProvider.d.ts +238 -0
  13. package/dist/abis/aave-v2/ProtocolDataProvider.d.ts.map +1 -0
  14. package/dist/abis/aave-v2/YLDR.d.ts +209 -0
  15. package/dist/abis/aave-v2/YLDR.d.ts.map +1 -0
  16. package/dist/abis/aave-v3/AavePoolDataProviderLegacy.d.ts +406 -0
  17. package/dist/abis/aave-v3/AavePoolDataProviderLegacy.d.ts.map +1 -0
  18. package/dist/abis/aave-v3/AavePoolLegacy.d.ts +819 -0
  19. package/dist/abis/aave-v3/AavePoolLegacy.d.ts.map +1 -0
  20. package/dist/abis/aave-v3/YLDR.d.ts +36 -0
  21. package/dist/abis/aave-v3/YLDR.d.ts.map +1 -0
  22. package/dist/abis/aurelius/Rewarder.d.ts +90 -0
  23. package/dist/abis/aurelius/Rewarder.d.ts.map +1 -0
  24. package/dist/abis/compound-v2/CompoundLens.d.ts +656 -0
  25. package/dist/abis/compound-v2/CompoundLens.d.ts.map +1 -0
  26. package/dist/abis/compound-v2/Comptroller.d.ts +1615 -0
  27. package/dist/abis/compound-v2/Comptroller.d.ts.map +1 -0
  28. package/dist/abis/compound-v3/Comet.d.ts +1382 -0
  29. package/dist/abis/compound-v3/Comet.d.ts.map +1 -0
  30. package/dist/abis/compound-v3/CometExt.d.ts +411 -0
  31. package/dist/abis/compound-v3/CometExt.d.ts.map +1 -0
  32. package/dist/abis/compound-v3/CometLens.d.ts +152 -0
  33. package/dist/abis/compound-v3/CometLens.d.ts.map +1 -0
  34. package/dist/abis/compound-v3/CometRewards.d.ts +253 -0
  35. package/dist/abis/compound-v3/CometRewards.d.ts.map +1 -0
  36. package/dist/abis/compound-v3/IrGetter.d.ts +24 -0
  37. package/dist/abis/compound-v3/IrGetter.d.ts.map +1 -0
  38. package/dist/abis/flashloan-united/flashAbi.d.ts +54 -0
  39. package/dist/abis/flashloan-united/flashAbi.d.ts.map +1 -0
  40. package/dist/abis/init/InitLens.d.ts +158 -0
  41. package/dist/abis/init/InitLens.d.ts.map +1 -0
  42. package/dist/abis/lendle/IncentivesController.d.ts +404 -0
  43. package/dist/abis/lendle/IncentivesController.d.ts.map +1 -0
  44. package/dist/abis/lendle/MultiFeeDistribution.d.ts +624 -0
  45. package/dist/abis/lendle/MultiFeeDistribution.d.ts.map +1 -0
  46. package/dist/abis/meridian/PullRewardsIncentivesController.d.ts +74 -0
  47. package/dist/abis/meridian/PullRewardsIncentivesController.d.ts.map +1 -0
  48. package/dist/abis/morpho/blue.d.ts +76 -0
  49. package/dist/abis/morpho/blue.d.ts.map +1 -0
  50. package/dist/abis/morpho/lens.d.ts +39 -0
  51. package/dist/abis/morpho/lens.d.ts.map +1 -0
  52. package/dist/abis/multicall/Multicall.d.ts +80 -0
  53. package/dist/abis/multicall/Multicall.d.ts.map +1 -0
  54. package/dist/abis/oracle/AaveOracle.d.ts +50 -0
  55. package/dist/abis/oracle/AaveOracle.d.ts.map +1 -0
  56. package/dist/abis/oracle/Api3Oracle.d.ts +48 -0
  57. package/dist/abis/oracle/Api3Oracle.d.ts.map +1 -0
  58. package/dist/abis/oracle/ChainLinkAggregator.d.ts +372 -0
  59. package/dist/abis/oracle/ChainLinkAggregator.d.ts.map +1 -0
  60. package/dist/abis/oracle/ProxyOracle.d.ts +12 -0
  61. package/dist/abis/oracle/ProxyOracle.d.ts.map +1 -0
  62. package/dist/abis/oracle/RWADynamicOracle.d.ts +12 -0
  63. package/dist/abis/oracle/RWADynamicOracle.d.ts.map +1 -0
  64. package/dist/abis/oracle/UniV3.d.ts +50 -0
  65. package/dist/abis/oracle/UniV3.d.ts.map +1 -0
  66. package/dist/abis/oracle/UniswapV2Pair.d.ts +513 -0
  67. package/dist/abis/oracle/UniswapV2Pair.d.ts.map +1 -0
  68. package/dist/assets/index.d.ts +15 -0
  69. package/dist/assets/index.d.ts.map +1 -0
  70. package/dist/assets/liquidityThresholds.d.ts +39 -0
  71. package/dist/assets/liquidityThresholds.d.ts.map +1 -0
  72. package/dist/ccip-DSCWXCSY-PT2JGHUX.js +13 -0
  73. package/dist/ccip-QOODCD4F.js +14 -0
  74. package/dist/chunk-3CGLGAGR.js +407 -0
  75. package/dist/chunk-4VNS5WPM.js +42 -0
  76. package/dist/chunk-5UWY3SMD.js +3977 -0
  77. package/dist/chunk-CLG3VWWF.js +3620 -0
  78. package/dist/chunk-TQZVAE5Q.js +4337 -0
  79. package/dist/flash-liquidity/assets.d.ts +21 -0
  80. package/dist/flash-liquidity/assets.d.ts.map +1 -0
  81. package/dist/flash-liquidity/fetchLiquidity.d.ts +4 -0
  82. package/dist/flash-liquidity/fetchLiquidity.d.ts.map +1 -0
  83. package/dist/flash-liquidity/index.d.ts +3 -0
  84. package/dist/flash-liquidity/index.d.ts.map +1 -0
  85. package/dist/flash-liquidity/types.d.ts +24 -0
  86. package/dist/flash-liquidity/types.d.ts.map +1 -0
  87. package/dist/flash-liquidity/utils.d.ts +12 -0
  88. package/dist/flash-liquidity/utils.d.ts.map +1 -0
  89. package/dist/index.d.ts +8 -0
  90. package/dist/index.d.ts.map +1 -0
  91. package/dist/index.js +84377 -0
  92. package/dist/lending/aave-v2-type/misc.d.ts +8 -0
  93. package/dist/lending/aave-v2-type/misc.d.ts.map +1 -0
  94. package/dist/lending/aave-v2-type/publicCallBuild.d.ts +7 -0
  95. package/dist/lending/aave-v2-type/publicCallBuild.d.ts.map +1 -0
  96. package/dist/lending/aave-v2-type/publicCallParse.d.ts +8 -0
  97. package/dist/lending/aave-v2-type/publicCallParse.d.ts.map +1 -0
  98. package/dist/lending/aave-v3-type/publicCallBuild.d.ts +4 -0
  99. package/dist/lending/aave-v3-type/publicCallBuild.d.ts.map +1 -0
  100. package/dist/lending/aave-v3-type/publicCallParse.d.ts +9 -0
  101. package/dist/lending/aave-v3-type/publicCallParse.d.ts.map +1 -0
  102. package/dist/lending/addresses/aave.d.ts +10 -0
  103. package/dist/lending/addresses/aave.d.ts.map +1 -0
  104. package/dist/lending/addresses/aaveV2.d.ts +6 -0
  105. package/dist/lending/addresses/aaveV2.d.ts.map +1 -0
  106. package/dist/lending/addresses/aurelius.d.ts +12 -0
  107. package/dist/lending/addresses/aurelius.d.ts.map +1 -0
  108. package/dist/lending/addresses/compoundV3.d.ts +9 -0
  109. package/dist/lending/addresses/compoundV3.d.ts.map +1 -0
  110. package/dist/lending/addresses/contracts.d.ts +4 -0
  111. package/dist/lending/addresses/contracts.d.ts.map +1 -0
  112. package/dist/lending/addresses/hana.d.ts +6 -0
  113. package/dist/lending/addresses/hana.d.ts.map +1 -0
  114. package/dist/lending/addresses/index.d.ts +2 -0
  115. package/dist/lending/addresses/index.d.ts.map +1 -0
  116. package/dist/lending/addresses/init.d.ts +4 -0
  117. package/dist/lending/addresses/init.d.ts.map +1 -0
  118. package/dist/lending/addresses/lendle.d.ts +12 -0
  119. package/dist/lending/addresses/lendle.d.ts.map +1 -0
  120. package/dist/lending/addresses/meridian.d.ts +15 -0
  121. package/dist/lending/addresses/meridian.d.ts.map +1 -0
  122. package/dist/lending/addresses/takotako.d.ts +12 -0
  123. package/dist/lending/addresses/takotako.d.ts.map +1 -0
  124. package/dist/lending/compound-v3/publicCallBuild.d.ts +3 -0
  125. package/dist/lending/compound-v3/publicCallBuild.d.ts.map +1 -0
  126. package/dist/lending/compound-v3/publicCallParse.d.ts +8 -0
  127. package/dist/lending/compound-v3/publicCallParse.d.ts.map +1 -0
  128. package/dist/lending/fetchLender.d.ts +9 -0
  129. package/dist/lending/fetchLender.d.ts.map +1 -0
  130. package/dist/lending/fetchLenderAll.d.ts +9 -0
  131. package/dist/lending/fetchLenderAll.d.ts.map +1 -0
  132. package/dist/lending/fetchLenderExt.d.ts +9 -0
  133. package/dist/lending/fetchLenderExt.d.ts.map +1 -0
  134. package/dist/lending/index.d.ts +6 -0
  135. package/dist/lending/index.d.ts.map +1 -0
  136. package/dist/lending/init/publicCallBuild.d.ts +7 -0
  137. package/dist/lending/init/publicCallBuild.d.ts.map +1 -0
  138. package/dist/lending/init/publicCallParse.d.ts +11 -0
  139. package/dist/lending/init/publicCallParse.d.ts.map +1 -0
  140. package/dist/lending/meta/index.d.ts +19 -0
  141. package/dist/lending/meta/index.d.ts.map +1 -0
  142. package/dist/lending/morpho/chainsConfigs.d.ts +21 -0
  143. package/dist/lending/morpho/chainsConfigs.d.ts.map +1 -0
  144. package/dist/lending/morpho/constants/markets.d.ts +4 -0
  145. package/dist/lending/morpho/constants/markets.d.ts.map +1 -0
  146. package/dist/lending/morpho/convertPublic.d.ts +7 -0
  147. package/dist/lending/morpho/convertPublic.d.ts.map +1 -0
  148. package/dist/lending/morpho/fetchPublic.d.ts +3 -0
  149. package/dist/lending/morpho/fetchPublic.d.ts.map +1 -0
  150. package/dist/lending/morpho/getMarketsFromChain.d.ts +8 -0
  151. package/dist/lending/morpho/getMarketsFromChain.d.ts.map +1 -0
  152. package/dist/lending/morpho/publicCallBuild.d.ts +10 -0
  153. package/dist/lending/morpho/publicCallBuild.d.ts.map +1 -0
  154. package/dist/lending/morpho/utils/evmParser.d.ts +22 -0
  155. package/dist/lending/morpho/utils/evmParser.d.ts.map +1 -0
  156. package/dist/lending/morpho/utils/mathLib.d.ts +125 -0
  157. package/dist/lending/morpho/utils/mathLib.d.ts.map +1 -0
  158. package/dist/lending/morpho/utils/parsers.d.ts +10 -0
  159. package/dist/lending/morpho/utils/parsers.d.ts.map +1 -0
  160. package/dist/lending/user-data/aave-v2-type/userCallBuild.d.ts +4 -0
  161. package/dist/lending/user-data/aave-v2-type/userCallBuild.d.ts.map +1 -0
  162. package/dist/lending/user-data/aave-v2-type/userCallParse.d.ts +8 -0
  163. package/dist/lending/user-data/aave-v2-type/userCallParse.d.ts.map +1 -0
  164. package/dist/lending/user-data/aave-v3-type/userCallBuild.d.ts +4 -0
  165. package/dist/lending/user-data/aave-v3-type/userCallBuild.d.ts.map +1 -0
  166. package/dist/lending/user-data/aave-v3-type/userCallParse.d.ts +8 -0
  167. package/dist/lending/user-data/aave-v3-type/userCallParse.d.ts.map +1 -0
  168. package/dist/lending/user-data/aave-v3-type/userCallParseYldr.d.ts +9 -0
  169. package/dist/lending/user-data/aave-v3-type/userCallParseYldr.d.ts.map +1 -0
  170. package/dist/lending/user-data/abis.d.ts +9200 -0
  171. package/dist/lending/user-data/abis.d.ts.map +1 -0
  172. package/dist/lending/user-data/compound-v3/index.d.ts +3 -0
  173. package/dist/lending/user-data/compound-v3/index.d.ts.map +1 -0
  174. package/dist/lending/user-data/compound-v3/userCallBuild.d.ts +4 -0
  175. package/dist/lending/user-data/compound-v3/userCallBuild.d.ts.map +1 -0
  176. package/dist/lending/user-data/compound-v3/userCallParse.d.ts +8 -0
  177. package/dist/lending/user-data/compound-v3/userCallParse.d.ts.map +1 -0
  178. package/dist/lending/user-data/fetchUserData.d.ts +28 -0
  179. package/dist/lending/user-data/fetchUserData.d.ts.map +1 -0
  180. package/dist/lending/user-data/index.d.ts +2 -0
  181. package/dist/lending/user-data/index.d.ts.map +1 -0
  182. package/dist/lending/user-data/init/userCallBuild.d.ts +8 -0
  183. package/dist/lending/user-data/init/userCallBuild.d.ts.map +1 -0
  184. package/dist/lending/user-data/init/userCallParse.d.ts +8 -0
  185. package/dist/lending/user-data/init/userCallParse.d.ts.map +1 -0
  186. package/dist/lending/user-data/morpho/decoder.d.ts +21 -0
  187. package/dist/lending/user-data/morpho/decoder.d.ts.map +1 -0
  188. package/dist/lending/user-data/morpho/morphoLib.d.ts +5 -0
  189. package/dist/lending/user-data/morpho/morphoLib.d.ts.map +1 -0
  190. package/dist/lending/user-data/morpho/types.d.ts +12 -0
  191. package/dist/lending/user-data/morpho/types.d.ts.map +1 -0
  192. package/dist/lending/user-data/morpho/userCallBuild.d.ts +8 -0
  193. package/dist/lending/user-data/morpho/userCallBuild.d.ts.map +1 -0
  194. package/dist/lending/user-data/morpho/userCallParse.d.ts +10 -0
  195. package/dist/lending/user-data/morpho/userCallParse.d.ts.map +1 -0
  196. package/dist/lending/user-data/utils/createGeneralUserState.d.ts +45 -0
  197. package/dist/lending/user-data/utils/createGeneralUserState.d.ts.map +1 -0
  198. package/dist/lending/user-data/utils/createMultiAccountStyleUserState.d.ts +16 -0
  199. package/dist/lending/user-data/utils/createMultiAccountStyleUserState.d.ts.map +1 -0
  200. package/dist/lending/user-data/utils/formatting/generalFormatters.d.ts +55 -0
  201. package/dist/lending/user-data/utils/formatting/generalFormatters.d.ts.map +1 -0
  202. package/dist/lending/user-data/utils/formatting/index.d.ts +2 -0
  203. package/dist/lending/user-data/utils/formatting/index.d.ts.map +1 -0
  204. package/dist/lending/user-data/utils/index.d.ts +8 -0
  205. package/dist/lending/user-data/utils/index.d.ts.map +1 -0
  206. package/dist/lending-pairs/computeLendingPairs.d.ts +52 -0
  207. package/dist/lending-pairs/computeLendingPairs.d.ts.map +1 -0
  208. package/dist/lending-pairs/index.d.ts +2 -0
  209. package/dist/lending-pairs/index.d.ts.map +1 -0
  210. package/dist/prices/defillama/index.d.ts +3 -0
  211. package/dist/prices/defillama/index.d.ts.map +1 -0
  212. package/dist/prices/index.d.ts +4 -0
  213. package/dist/prices/index.d.ts.map +1 -0
  214. package/dist/prices/main-prices/addresses/api3.d.ts +6 -0
  215. package/dist/prices/main-prices/addresses/api3.d.ts.map +1 -0
  216. package/dist/prices/main-prices/addresses/chainlink.d.ts +740 -0
  217. package/dist/prices/main-prices/addresses/chainlink.d.ts.map +1 -0
  218. package/dist/prices/main-prices/fetchOracleData.d.ts +17 -0
  219. package/dist/prices/main-prices/fetchOracleData.d.ts.map +1 -0
  220. package/dist/prices/main-prices/index.d.ts +2 -0
  221. package/dist/prices/main-prices/index.d.ts.map +1 -0
  222. package/dist/prices/pendle/fetchPendlePrices.d.ts +7 -0
  223. package/dist/prices/pendle/fetchPendlePrices.d.ts.map +1 -0
  224. package/dist/prices/pendle/index.d.ts +2 -0
  225. package/dist/prices/pendle/index.d.ts.map +1 -0
  226. package/dist/secp256k1-WKIOWUKN.js +2246 -0
  227. package/dist/types/apiReturnType.d.ts +72 -0
  228. package/dist/types/apiReturnType.d.ts.map +1 -0
  229. package/dist/types/general.d.ts +18 -0
  230. package/dist/types/general.d.ts.map +1 -0
  231. package/dist/types/index.d.ts +6 -0
  232. package/dist/types/index.d.ts.map +1 -0
  233. package/dist/types/lender/aave-v2-types.d.ts +80 -0
  234. package/dist/types/lender/aave-v2-types.d.ts.map +1 -0
  235. package/dist/types/lender/aave-v3-types.d.ts +158 -0
  236. package/dist/types/lender/aave-v3-types.d.ts.map +1 -0
  237. package/dist/types/lender/compound-v3-types.d.ts +32 -0
  238. package/dist/types/lender/compound-v3-types.d.ts.map +1 -0
  239. package/dist/types/lender/init-types.d.ts +40 -0
  240. package/dist/types/lender/init-types.d.ts.map +1 -0
  241. package/dist/types/lender/morpho-types.d.ts +110 -0
  242. package/dist/types/lender/morpho-types.d.ts.map +1 -0
  243. package/dist/types/lenderTypes.d.ts +229 -0
  244. package/dist/types/lenderTypes.d.ts.map +1 -0
  245. package/dist/types/misc.d.ts +47 -0
  246. package/dist/types/misc.d.ts.map +1 -0
  247. package/dist/types/providers.d.ts +12 -0
  248. package/dist/types/providers.d.ts.map +1 -0
  249. package/dist/utils/constants.d.ts +7 -0
  250. package/dist/utils/constants.d.ts.map +1 -0
  251. package/dist/utils/index.d.ts +20 -0
  252. package/dist/utils/index.d.ts.map +1 -0
  253. package/dist/utils/multicall.d.ts +6 -0
  254. package/dist/utils/multicall.d.ts.map +1 -0
  255. package/dist/utils/parsing.d.ts +17 -0
  256. package/dist/utils/parsing.d.ts.map +1 -0
  257. package/dist/yields/index.d.ts +21 -0
  258. package/dist/yields/index.d.ts.map +1 -0
  259. package/dist/yields/yieldTypes.d.ts +76 -0
  260. package/dist/yields/yieldTypes.d.ts.map +1 -0
  261. package/package.json +4 -1
  262. package/src/abis/aave/AaveOracle.ts +0 -66
  263. package/src/abis/aave/AavePoolAndDataProvider.ts +0 -2080
  264. package/src/abis/aave/AavePoolV3Upgraded.ts +0 -1474
  265. package/src/abis/aave/AaveV3ProtocolDataProvider.ts +0 -553
  266. package/src/abis/aave/VariableDebtToken.ts +0 -820
  267. package/src/abis/aave-v2/ProtocolDataProvider.ts +0 -312
  268. package/src/abis/aave-v2/YLDR.ts +0 -227
  269. package/src/abis/aave-v3/AavePoolDataProviderLegacy.ts +0 -459
  270. package/src/abis/aave-v3/AavePoolLegacy.ts +0 -1060
  271. package/src/abis/aave-v3/YLDR.ts +0 -46
  272. package/src/abis/aurelius/Rewarder.ts +0 -118
  273. package/src/abis/compound-v2/CompoundLens.ts +0 -851
  274. package/src/abis/compound-v2/Comptroller.ts +0 -2104
  275. package/src/abis/compound-v3/Comet.ts +0 -1804
  276. package/src/abis/compound-v3/CometExt.ts +0 -536
  277. package/src/abis/compound-v3/CometLens.ts +0 -194
  278. package/src/abis/compound-v3/CometRewards.ts +0 -330
  279. package/src/abis/compound-v3/IrGetter.ts +0 -31
  280. package/src/abis/flashloan-united/flashAbi.ts +0 -72
  281. package/src/abis/init/InitLens.ts +0 -203
  282. package/src/abis/lendle/IncentivesController.ts +0 -525
  283. package/src/abis/lendle/MultiFeeDistribution.ts +0 -820
  284. package/src/abis/meridian/PullRewardsIncentivesController.ts +0 -98
  285. package/src/abis/morpho/blue.ts +0 -99
  286. package/src/abis/morpho/lens.ts +0 -41
  287. package/src/abis/multicall/Multicall.ts +0 -101
  288. package/src/abis/oracle/AaveOracle.ts +0 -66
  289. package/src/abis/oracle/Api3Oracle.ts +0 -62
  290. package/src/abis/oracle/ChainLinkAggregator.ts +0 -480
  291. package/src/abis/oracle/ProxyOracle.ts +0 -15
  292. package/src/abis/oracle/RWADynamicOracle.ts +0 -15
  293. package/src/abis/oracle/UniV3.ts +0 -63
  294. package/src/abis/oracle/UniswapV2Pair.ts +0 -659
  295. package/src/assets/index.ts +0 -61
  296. package/src/assets/liquidityThresholds.ts +0 -114
  297. package/src/flash-liquidity/assets.ts +0 -86
  298. package/src/flash-liquidity/fetchLiquidity.ts +0 -337
  299. package/src/flash-liquidity/index.ts +0 -2
  300. package/src/flash-liquidity/types.ts +0 -21
  301. package/src/flash-liquidity/utils.ts +0 -28
  302. package/src/index.ts +0 -7
  303. package/src/lending/aave-v2-type/misc.ts +0 -13
  304. package/src/lending/aave-v2-type/publicCallBuild.ts +0 -30
  305. package/src/lending/aave-v2-type/publicCallParse.ts +0 -190
  306. package/src/lending/aave-v3-type/publicCallBuild.ts +0 -154
  307. package/src/lending/aave-v3-type/publicCallParse.ts +0 -600
  308. package/src/lending/addresses/aave.ts +0 -12
  309. package/src/lending/addresses/aaveV2.ts +0 -8
  310. package/src/lending/addresses/aurelius.ts +0 -13
  311. package/src/lending/addresses/compoundV3.ts +0 -52
  312. package/src/lending/addresses/contracts.ts +0 -34
  313. package/src/lending/addresses/hana.ts +0 -7
  314. package/src/lending/addresses/index.ts +0 -1
  315. package/src/lending/addresses/init.ts +0 -37
  316. package/src/lending/addresses/lendle.ts +0 -13
  317. package/src/lending/addresses/meridian.ts +0 -16
  318. package/src/lending/addresses/takotako.ts +0 -14
  319. package/src/lending/compound-v3/publicCallBuild.ts +0 -74
  320. package/src/lending/compound-v3/publicCallParse.ts +0 -202
  321. package/src/lending/fetchLender.ts +0 -206
  322. package/src/lending/fetchLenderAll.ts +0 -51
  323. package/src/lending/fetchLenderExt.ts +0 -82
  324. package/src/lending/index.ts +0 -5
  325. package/src/lending/init/publicCallBuild.ts +0 -29
  326. package/src/lending/init/publicCallParse.ts +0 -109
  327. package/src/lending/meta/index.ts +0 -124
  328. package/src/lending/morpho/chainsConfigs.ts +0 -268
  329. package/src/lending/morpho/constants/markets.ts +0 -94
  330. package/src/lending/morpho/convertPublic.ts +0 -148
  331. package/src/lending/morpho/fetchPublic.ts +0 -115
  332. package/src/lending/morpho/getMarketsFromChain.ts +0 -401
  333. package/src/lending/morpho/publicCallBuild.ts +0 -32
  334. package/src/lending/morpho/utils/evmParser.ts +0 -122
  335. package/src/lending/morpho/utils/mathLib.ts +0 -434
  336. package/src/lending/morpho/utils/parsers.ts +0 -53
  337. package/src/lending/user-data/aave-v2-type/userCallBuild.ts +0 -35
  338. package/src/lending/user-data/aave-v2-type/userCallParse.ts +0 -139
  339. package/src/lending/user-data/aave-v3-type/userCallBuild.ts +0 -44
  340. package/src/lending/user-data/aave-v3-type/userCallParse.ts +0 -141
  341. package/src/lending/user-data/aave-v3-type/userCallParseYldr.ts +0 -127
  342. package/src/lending/user-data/abis.ts +0 -53
  343. package/src/lending/user-data/compound-v3/index.ts +0 -2
  344. package/src/lending/user-data/compound-v3/userCallBuild.ts +0 -49
  345. package/src/lending/user-data/compound-v3/userCallParse.ts +0 -129
  346. package/src/lending/user-data/fetchUserData.ts +0 -218
  347. package/src/lending/user-data/index.ts +0 -1
  348. package/src/lending/user-data/init/userCallBuild.ts +0 -30
  349. package/src/lending/user-data/init/userCallParse.ts +0 -115
  350. package/src/lending/user-data/morpho/decoder.ts +0 -71
  351. package/src/lending/user-data/morpho/morphoLib.ts +0 -61
  352. package/src/lending/user-data/morpho/types.ts +0 -12
  353. package/src/lending/user-data/morpho/userCallBuild.ts +0 -72
  354. package/src/lending/user-data/morpho/userCallParse.ts +0 -251
  355. package/src/lending/user-data/utils/createGeneralUserState.ts +0 -142
  356. package/src/lending/user-data/utils/createMultiAccountStyleUserState.ts +0 -113
  357. package/src/lending/user-data/utils/formatting/generalFormatters.ts +0 -121
  358. package/src/lending/user-data/utils/formatting/index.ts +0 -1
  359. package/src/lending/user-data/utils/index.ts +0 -19
  360. package/src/lending-pairs/computeLendingPairs.ts +0 -457
  361. package/src/lending-pairs/index.ts +0 -1
  362. package/src/prices/defillama/index.ts +0 -394
  363. package/src/prices/index.ts +0 -3
  364. package/src/prices/main-prices/addresses/api3.ts +0 -10
  365. package/src/prices/main-prices/addresses/chainlink.ts +0 -775
  366. package/src/prices/main-prices/fetchOracleData.ts +0 -707
  367. package/src/prices/main-prices/index.ts +0 -1
  368. package/src/prices/pendle/fetchPendlePrices.ts +0 -208
  369. package/src/prices/pendle/index.ts +0 -1
  370. package/src/types/apiReturnType.ts +0 -76
  371. package/src/types/general.ts +0 -16
  372. package/src/types/index.ts +0 -5
  373. package/src/types/lender/aave-v2-types.ts +0 -96
  374. package/src/types/lender/aave-v3-types.ts +0 -185
  375. package/src/types/lender/compound-v3-types.ts +0 -43
  376. package/src/types/lender/init-types.ts +0 -51
  377. package/src/types/lender/morpho-types.ts +0 -129
  378. package/src/types/lenderTypes.ts +0 -303
  379. package/src/types/misc.ts +0 -40
  380. package/src/types/providers.ts +0 -27
  381. package/src/utils/constants.ts +0 -82
  382. package/src/utils/index.ts +0 -128
  383. package/src/utils/multicall.ts +0 -72
  384. package/src/utils/parsing.ts +0 -114
  385. package/src/yields/index.ts +0 -632
  386. package/src/yields/yieldTypes.ts +0 -80
  387. package/test/data.ts +0 -47979
  388. package/test/dataMainnet.ts +0 -45256
  389. package/test/flashLiquidity.test.ts +0 -47
  390. package/test/index.test.ts +0 -116
  391. package/test/lenderData.test.ts +0 -85
  392. package/test/lenderDataBasic.test.ts +0 -43
  393. package/test/mainPriceMB.test.ts +0 -46
  394. package/test/mainPrices.test.ts +0 -22
  395. package/test/mbChain.test.ts +0 -43
  396. package/test/morpho.test.ts +0 -20
  397. package/test/morpho.ts +0 -66
  398. package/test/morphoPrice.test.ts +0 -31
  399. package/test/userData.test.ts +0 -285
  400. package/test/userDataAave.test.ts +0 -68
  401. package/test/userDataAaveMainnet.test.ts +0 -101
  402. package/test/userDataAaveTelos.test.ts +0 -85
  403. package/test/userDataAll.test.ts +0 -71
  404. package/test/userDataCompound.test.ts +0 -97
  405. package/test/userDataMorpho.test.ts +0 -271
  406. package/test/userDataMorphoEthereum.test.ts +0 -76
  407. package/test/userDataMorphoKatana.test.ts +0 -75
  408. package/test/utils.ts +0 -23
  409. package/test/yields.test.ts +0 -27
  410. package/tsconfig.dts.json +0 -10
  411. package/tsconfig.json +0 -29
  412. package/tsup.config.ts +0 -12
@@ -1,218 +0,0 @@
1
- import {
2
- Call,
3
- MULTICALL_DEFAULT_BATCH_SIZE,
4
- multicallViemAbiArray,
5
- } from '../../utils/multicall'
6
- import { Lender } from '@1delta/lender-registry'
7
- import {
8
- isAaveV2Type,
9
- isAaveV3Type,
10
- isInit,
11
- isMorphoType,
12
- isMultiMarket,
13
- isYLDR,
14
- } from '../../utils'
15
- import { LenderUserQuery, organizeUserQueries } from '../../types/lenderTypes'
16
- import { GetEvmClientFunction } from '../../types'
17
- import { buildAaveV2UserCall } from './aave-v2-type/userCallBuild'
18
- import { buildAaveV3UserCall } from './aave-v3-type/userCallBuild'
19
- import { buildInitUserCall } from './init/userCallBuild'
20
- import { buildCompoundV3UserCall } from './compound-v3/userCallBuild'
21
- import { getAbi } from './abis'
22
- import { getAaveV2UserDataConverter } from './aave-v2-type/userCallParse'
23
- import { getAaveV3UserDataConverter } from './aave-v3-type/userCallParse'
24
- import { getInitUserDataConverter } from './init/userCallParse'
25
- import { getCompoundV3UserDataConverter } from './compound-v3/userCallParse'
26
- import { getYldrUserDataConverter } from './aave-v3-type/userCallParseYldr'
27
- import { buildMorphoUserCallWithLens } from './morpho/userCallBuild'
28
- import { getMorphoUserDataConverterWithlens } from './morpho/userCallParse'
29
-
30
- function buildUserCall(
31
- chainId: string,
32
- lender: Lender,
33
- account: string,
34
- params?: any,
35
- assets?: any[],
36
- ) {
37
- if (isAaveV2Type(lender))
38
- return buildAaveV2UserCall(chainId, lender, account, assets)
39
- if (isAaveV3Type(lender))
40
- return buildAaveV3UserCall(chainId, lender, account, assets)
41
- if (isInit(lender)) return buildInitUserCall(chainId, lender, account)
42
- if (isMorphoType(lender))
43
- return buildMorphoUserCallWithLens(chainId, account, lender, params)
44
- return buildCompoundV3UserCall(chainId, lender, account, assets)
45
- }
46
-
47
- function getUserDataConverter(
48
- lender: Lender,
49
- chainId: string,
50
- account: string,
51
- prices: { [a: string]: number },
52
- pricesHist: { [a: string]: number },
53
- lenderPublicState: any,
54
- params?: any,
55
- ) {
56
- if (isYLDR(lender))
57
- return getYldrUserDataConverter(
58
- lender,
59
- chainId,
60
- account,
61
- prices,
62
- pricesHist,
63
- lenderPublicState?.data?.[lender]?.data,
64
- )
65
- if (isAaveV2Type(lender))
66
- return getAaveV2UserDataConverter(
67
- lender,
68
- chainId,
69
- account,
70
- prices,
71
- pricesHist,
72
- lenderPublicState?.data?.[lender]?.data,
73
- )
74
- if (isAaveV3Type(lender))
75
- return getAaveV3UserDataConverter(
76
- lender,
77
- chainId,
78
- account,
79
- prices,
80
- pricesHist,
81
- lenderPublicState?.data?.[lender]?.data,
82
- )
83
- if (isInit(lender))
84
- return getInitUserDataConverter(
85
- lender,
86
- chainId,
87
- account,
88
- prices,
89
- pricesHist,
90
- lenderPublicState?.data?.[lender]?.data,
91
- )
92
- if (isMorphoType(lender))
93
- return getMorphoUserDataConverterWithlens(
94
- lender,
95
- chainId,
96
- account,
97
- params,
98
- prices,
99
- pricesHist,
100
- lenderPublicState?.data,
101
- )
102
- return getCompoundV3UserDataConverter(
103
- lender,
104
- chainId,
105
- account,
106
- prices,
107
- pricesHist,
108
- lenderPublicState?.data?.[lender]?.data,
109
- )
110
- }
111
-
112
- /**
113
- * Builds the multicall calls for the given queries and returns the raw results
114
- * @param chainId - The chain ID
115
- * @param queries - The queries to fetch data for
116
- * @param getEvmClient - Injected function to get EVM client
117
- * @param allowFailure - multicall can fail in single call, default is true - note that this might mess with the retries as it will never error
118
- * @param batchSize - multicall batch size, default is 4096
119
- * @param logs - show multicall error logs, default is false
120
- * @param lenderData - optional public lender data to dynamically use pols and assets provided externally
121
- * @returns The raw results from the multicall, "0x" for failures
122
- */
123
- export const getLenderUserDataResult = async (
124
- chainId: string,
125
- queriesRaw: LenderUserQuery[],
126
- getEvmClient: GetEvmClientFunction,
127
- allowFailure = true,
128
- batchSize = MULTICALL_DEFAULT_BATCH_SIZE,
129
- retries = 3,
130
- logs = false,
131
- ): Promise<any[]> => {
132
- let calls: {
133
- call: Call
134
- abi: any
135
- }[] = []
136
-
137
- const queries = organizeUserQueries(queriesRaw)
138
-
139
- for (const query of queries) {
140
- const abi = getAbi(query.lender)
141
- const callData = buildUserCall(
142
- chainId,
143
- query.lender,
144
- query.account,
145
- query.params,
146
- query.assets,
147
- )
148
- const mappedCalls = callData.map((call) => ({ call, abi }))
149
- calls = [...calls, ...mappedCalls]
150
- }
151
- return await multicallViemAbiArray(
152
- chainId,
153
- calls.map((call) => call.abi),
154
- calls.map((call) => call.call),
155
- getEvmClient,
156
- true,
157
- 0,
158
- retries,
159
- allowFailure,
160
- batchSize,
161
- logs,
162
- )
163
- }
164
-
165
- /**
166
- * Converts the raw results into the desired format
167
- * @param chainId - The chain ID
168
- * @param queries - The queries to fetch data for
169
- * @param rawResults - The raw results from the multicall (getLenderUserDataResult)
170
- * @param prices - The prices for the assets
171
- * @param pricesHist - The historical prices for the assets
172
- * @param lenderState - The state of the lender
173
- * @returns The converted data
174
- */
175
- export const convertLenderUserDataResult = (
176
- chainId: string,
177
- queriesRaw: LenderUserQuery[],
178
- rawResults: any[],
179
- prices: any,
180
- pricesHist: any,
181
- lenderState: any,
182
- ): { [lender: string]: any } => {
183
- const queries = organizeUserQueries(queriesRaw)
184
- const lenderData: { [lender: string]: any } = {}
185
- let currentSlice = 0
186
- for (const query of queries) {
187
- const [converter, sliceLength] = getUserDataConverter(
188
- query.lender,
189
- chainId,
190
- query.account,
191
- prices,
192
- pricesHist,
193
- lenderState[chainId],
194
- query.params,
195
- )
196
- try {
197
- const data = rawResults.slice(currentSlice, currentSlice + sliceLength)
198
- const convertedData = converter(data)
199
- if (convertedData) {
200
- if (isMultiMarket(query.lender)) {
201
- Object.keys(convertedData).forEach((market) => {
202
- lenderData[market] = {
203
- // @ts-ignore
204
- [query.account.toLowerCase()]: convertedData[market],
205
- }
206
- })
207
- } else {
208
- // map it to the user address
209
- lenderData[query.lender] = {
210
- [query.account.toLowerCase()]: convertedData,
211
- }
212
- }
213
- }
214
- } catch (e) {}
215
- currentSlice += sliceLength
216
- }
217
- return lenderData
218
- }
@@ -1 +0,0 @@
1
- export * from "./fetchUserData"
@@ -1,30 +0,0 @@
1
- import { Chain } from '@1delta/chain-registry'
2
- import { Lender } from '@1delta/lender-registry'
3
- import { Call } from '../../../utils/multicall'
4
- import { getInitLensAddress } from '../../addresses/init'
5
-
6
- export const initBrokerAddresses = {
7
- [Chain.MANTLE]: '0xc08BFef7E778f3519D79E96780b77066F5d4FCC0',
8
- }
9
-
10
- export function getInitFlashAggregatorAddress(chainId?: string) {
11
- if (!chainId) return undefined
12
- return initBrokerAddresses[chainId as keyof typeof initBrokerAddresses]
13
- }
14
-
15
- export const buildInitUserCall = (
16
- chainId: string,
17
- lender: Lender,
18
- account: string,
19
- ): Call[] => {
20
- const lensContract = getInitLensAddress(chainId)
21
- const brokerAddress = getInitFlashAggregatorAddress(chainId)
22
-
23
- const call: Call = {
24
- address: lensContract,
25
- name: 'getUserPositionData',
26
- params: [account, brokerAddress],
27
- }
28
-
29
- return [call]
30
- }
@@ -1,115 +0,0 @@
1
- import { Lender } from '@1delta/lender-registry'
2
- import { InitUserReserveResponse } from "../../../types/lenderTypes"
3
- import { getInitFlashAggregatorAddress } from "./userCallBuild"
4
- import { getLenderAssets } from "../../../utils"
5
- import { toOracleKey } from "../../../assets"
6
- import { parseRawAmount } from "../../../utils/parsing"
7
- import { createMultiAccountTypeUserState } from "../utils/createMultiAccountStyleUserState"
8
- import { InitGetUserPositionDataIndexes } from '../../../types/lender/init-types'
9
-
10
- export const getInitUserDataConverter = (
11
- lender: Lender,
12
- chainId: string,
13
- account: string,
14
- prices: { [asset: string]: number },
15
- pricesHist: { [asset: string]: number },
16
- lenderData: any
17
- ): [(data: any[]) => InitUserReserveResponse | undefined, number] => {
18
- const validOwner = account.toLowerCase()
19
- const brokerAddress = getInitFlashAggregatorAddress(chainId) ?? ''
20
- const expectedNumberOfCalls = 1
21
- return [
22
- (_data: any[]) => {
23
- if (_data.length !== expectedNumberOfCalls) {
24
- return undefined
25
- }
26
- const [data] = _data
27
- // filter for owner
28
- const indexes = data[InitGetUserPositionDataIndexes.posMeta].map(
29
- (e: any, i: number) => { return { e, i } }
30
- ).filter((a: any) => a.e.owner.toLowerCase() === validOwner).map((a: any) => a.i)
31
- const assets = getLenderAssets(chainId, lender)
32
-
33
- let histData: any = {}
34
-
35
- // map data
36
- const result: any = Object.assign(
37
- {},
38
- ...indexes.map((index: any) => {
39
- const entry = data[InitGetUserPositionDataIndexes.posMeta][index]
40
- const mode = entry.mode
41
- const id = entry.posId.toString()
42
- const collatData = Object.assign({}, ...data[InitGetUserPositionDataIndexes.collaterals][index].map((c: any) => {
43
- const asset = c.underlying.toLowerCase()
44
- const decimals = lenderData[asset].asset?.decimals ?? 18
45
- const depositsRaw = c.amount.toString()
46
- return { [asset]: { deposits: parseRawAmount(depositsRaw, decimals), depositsRaw } }
47
- })
48
- )
49
- const debtData = Object.assign({}, ...data[InitGetUserPositionDataIndexes.debts][index].map((c: any) => {
50
- const asset = c.underlying.toLowerCase()
51
- const decimals = lenderData[asset]?.asset?.decimals ?? 18
52
- return { [asset]: { debt: parseRawAmount(c.amount.toString(), decimals) } }
53
- })
54
- )
55
- // sub account to asset data
56
- return {
57
- [id]: {
58
- mode,
59
- ...Object.assign({}, ...assets.map(a => {
60
- const ams = toOracleKey(lenderData[a]?.asset?.assetGroup!)
61
- const price = prices[ams] ?? 1
62
- const priceHist = pricesHist?.[ams] ?? price
63
- if (!histData[id]) histData[id] = {
64
- totalDebt24h: 0,
65
- totalDeposits24h: 0,
66
- }
67
- const debt = debtData[a]?.debt ?? 0
68
- const deposits = collatData[a]?.deposits ?? 0
69
- const depositsRaw = collatData[a]?.depositsRaw ?? "0"
70
-
71
- histData[id].totalDebt24h += Number(debt) * priceHist
72
- histData[id].totalDeposits24h += Number(deposits) * priceHist
73
-
74
- // asset to data
75
- return {
76
- [a]: {
77
- poolId: a,
78
- underlying: a,
79
- deposits: deposits,
80
- depositsRaw,
81
- debt: debt,
82
- debtStable: "0",
83
- debtStableUSD: 0,
84
- depositsUSD: price * Number(deposits),
85
- debtUSD: price * Number(debt),
86
- collateralActive: true,
87
- isAllowed: entry.approved.toLowerCase() === brokerAddress.toLowerCase(),
88
- }
89
- }
90
- })
91
- )
92
- }
93
- }
94
- })
95
- )
96
-
97
- const payload = {
98
- chainId,
99
- lendingPositions: result,
100
- account
101
- }
102
-
103
- const userState = createMultiAccountTypeUserState(
104
- { ...payload, assets },
105
- lenderData,
106
- histData
107
- )
108
- return {
109
- ...payload,
110
- ...userState
111
- } as any
112
- },
113
- expectedNumberOfCalls,
114
- ]
115
- }
@@ -1,71 +0,0 @@
1
- export interface BalanceInfo {
2
- index: number; // uint16 (2 bytes)
3
- supplyShares: bigint; // uint256 (32 bytes)
4
- borrowShares: bigint; // uint128 (16 bytes)
5
- supplyAssets: bigint; // uint256 (32 bytes)
6
- borrowAssets: bigint; // uint256 (32 bytes)
7
- collateral: bigint; // uint128 (16 bytes)
8
- }
9
-
10
- const WORD = 32;
11
- const HALF = 16;
12
-
13
- /** Read `len` bytes at `off` as a big‐endian BigInt. */
14
- function readBigIntBE(buf: Uint8Array, off: number, len: number): bigint {
15
- let v = 0n;
16
- for (let i = 0; i < len; i++) {
17
- v = (v << 8n) | BigInt(buf[off + i]);
18
- }
19
- return v;
20
- }
21
-
22
- /**
23
- * Decode:
24
- * [ uint256 count (32 bytes) ]
25
- * then for each of `count` records:
26
- * uint16 index (2 bytes),
27
- * uint256 supplyShares (32 bytes),
28
- * uint128 borrowShares (16 bytes),
29
- * uint256 supplyAssets (32 bytes),
30
- * uint256 borrowAssets (32 bytes),
31
- * uint128 collateral (16 bytes)
32
- */
33
- export function decodePackedDataset(hex: string): BalanceInfo[] {
34
- if (hex.startsWith("0x")) hex = hex.slice(2);
35
- const buf = Uint8Array.from(hex.match(/.{1,2}/g)!.map((b) => parseInt(b, 16)));
36
-
37
- // 1) count (uint256)
38
- const count = Number(readBigIntBE(buf, 0, 2));
39
- const out: BalanceInfo[] = [];
40
-
41
- let off = 2;
42
- for (let i = 0; i < count; i++) {
43
- // 2) index (uint16)
44
- const index = Number(readBigIntBE(buf, off, 2));
45
- off += 2;
46
-
47
- // 3) supplyShares (uint256)
48
- const supplyShares = readBigIntBE(buf, off, WORD);
49
- off += WORD;
50
-
51
- // 4) borrowShares (uint128)
52
- const borrowShares = readBigIntBE(buf, off, HALF);
53
- off += HALF;
54
-
55
- // 5) supplyAssets (uint256)
56
- const supplyAssets = readBigIntBE(buf, off, WORD);
57
- off += WORD;
58
-
59
- // 6) borrowAssets (uint256)
60
- const borrowAssets = readBigIntBE(buf, off, WORD);
61
- off += WORD;
62
-
63
- // 7) collateral (uint128)
64
- const collateral = readBigIntBE(buf, off, HALF);
65
- off += HALF;
66
-
67
- out.push({ index, supplyShares, borrowShares, supplyAssets, borrowAssets, collateral });
68
- }
69
-
70
- return out;
71
- }
@@ -1,61 +0,0 @@
1
- // Constants
2
- const VIRTUAL_SHARES = 10n ** 6n;
3
- const VIRTUAL_ASSETS = 1n;
4
-
5
-
6
- function mulDivDown(x: bigint, y: bigint, d: bigint): bigint {
7
- return (x * y) / d;
8
- }
9
-
10
- function mulDivUp(x: bigint, y: bigint, d: bigint): bigint {
11
- return (x * y + (d - 1n)) / d;
12
- }
13
-
14
-
15
- export function toSharesDown(
16
- assets: bigint,
17
- totalAssets: bigint,
18
- totalShares: bigint
19
- ): bigint {
20
- return mulDivDown(
21
- assets,
22
- totalShares + VIRTUAL_SHARES,
23
- totalAssets + VIRTUAL_ASSETS
24
- );
25
- }
26
-
27
- export function toAssetsDown(
28
- shares: bigint,
29
- totalAssets: bigint,
30
- totalShares: bigint
31
- ): bigint {
32
- return mulDivDown(
33
- shares,
34
- totalAssets + VIRTUAL_ASSETS,
35
- totalShares + VIRTUAL_SHARES
36
- );
37
- }
38
-
39
- export function toSharesUp(
40
- assets: bigint,
41
- totalAssets: bigint,
42
- totalShares: bigint
43
- ): bigint {
44
- return mulDivUp(
45
- assets,
46
- totalShares + VIRTUAL_SHARES,
47
- totalAssets + VIRTUAL_ASSETS
48
- );
49
- }
50
-
51
- export function toAssetsUp(
52
- shares: bigint,
53
- totalAssets: bigint,
54
- totalShares: bigint
55
- ): bigint {
56
- return mulDivUp(
57
- shares,
58
- totalAssets + VIRTUAL_ASSETS,
59
- totalShares + VIRTUAL_SHARES
60
- );
61
- }
@@ -1,12 +0,0 @@
1
- export enum MorphoPositionParams {
2
- supplyShares = 0,
3
- borrowShares,
4
- collateral,
5
- }
6
-
7
- export enum MorphoMarketParams {
8
- totalSupplyAssets = 0,
9
- totalSupplyShares,
10
- totalBorrowAssets,
11
- totalBorrowShares,
12
- }
@@ -1,72 +0,0 @@
1
- import { Lender } from '@1delta/lender-registry'
2
- import { Chain } from '@1delta/chain-registry'
3
- import { Call } from '../../../utils/multicall'
4
- import { chunk } from 'lodash'
5
- import { morphoPools } from '@1delta/data-sdk'
6
-
7
- export const MORPHO_LENS: { [c: string]: string } = {
8
- [Chain.HEMI_NETWORK]: '0x1170Ef5B1A7f9c4F0ce34Ddf66CC0e6090Fd107E',
9
- [Chain.BASE]: '0x05f3f58716a88A52493Be45aA0871c55b3748f18',
10
- [Chain.POLYGON_MAINNET]: '0x04102873b1A80647879Aa8B8a119F07aE08f457a',
11
- [Chain.OP_MAINNET]: '0x61895aEB0a42679E2Df8EE64334C405a8d47D244',
12
- [Chain.ARBITRUM_ONE]: '0xeaC918F73Ba5b11D21D31a72BD00ca4A22865C3f',
13
- [Chain.KATANA]: '0xCe434378adacC51d54312c872113D687Ac19B516',
14
- [Chain.HYPEREVM]: '0x6Bc6aCB905c1216B0119C87Bf9E178ce298310FA',
15
- [Chain.SONEIUM]: '0x4b5458BB47dCBC1a41B31b41e1a8773dE312BE9d',
16
- [Chain.ETHEREUM_MAINNET]: '0x4b5458BB47dCBC1a41B31b41e1a8773dE312BE9d',
17
- [Chain.PLASMA_MAINNET]: '0xcB6Eb8df68153cebF60E1872273Ef52075a5C297',
18
- }
19
-
20
- const getBaseMorphoCalls = (
21
- lender: string,
22
- chainId: string,
23
- account: string,
24
- marketsToQuery: string[],
25
- ) => {
26
- const mbPool = morphoPools()?.[lender]?.[chainId]
27
- return marketsToQuery.flatMap((id) => [
28
- {
29
- // @ts-ignore
30
- address: mbPool,
31
- name: 'position',
32
- params: ['0x' + id.split('_')[1], account],
33
- },
34
- {
35
- // @ts-ignore
36
- address: mbPool,
37
- name: 'market',
38
- params: ['0x' + id.split('_')[1]],
39
- },
40
- ])
41
- }
42
-
43
- export const buildMorphoUserCall = (
44
- chainId: string,
45
- account: string,
46
- lender: Lender,
47
- marketsToQuery: string[],
48
- ): Call[] => {
49
- const calls = getBaseMorphoCalls(lender, chainId, account, marketsToQuery)
50
-
51
- return calls
52
- }
53
-
54
- export const buildMorphoUserCallWithLens = (
55
- chainId: string,
56
- account: string,
57
- lender: Lender,
58
- marketsToQuery: string[],
59
- ): Call[] => {
60
- // 100 per call
61
- const marketSlices = chunk(marketsToQuery, 100)
62
- return marketSlices.flatMap((marketsInChunk) => ({
63
- address: MORPHO_LENS[chainId],
64
- name: 'getUserDataCompact',
65
- params: [
66
- marketsInChunk.map((a) => a.replace('MORPHO_BLUE_', '0x')),
67
- account,
68
- // @ts-ignore
69
- morphoPools()?.[lender]?.[chainId],
70
- ],
71
- }))
72
- }