@1delta/margin-fetcher 0.0.13 → 0.0.15-0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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-NAPFCFLK.js +5 -0
  29. package/dist/ccip-NAPFCFLK.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-JJRW5HVN.js +4133 -0
  33. package/dist/chunk-JJRW5HVN.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 -261
  509. package/test/utils.ts +0 -13
  510. package/tsconfig.json +0 -28
@@ -1,259 +0,0 @@
1
- import { getAssetMeta, toGenericPriceKey, toOracleKey } from "../assets";
2
- import { getLiquidityThresholds, meetsLiquidityThresholds, } from "../assets/liquidityThresholds";
3
- import { isAaveV3Type, isInit } from "../utils";
4
- const isEMode = (longData, shortData) => Boolean(longData.eMode)
5
- ? Number(longData.eMode?.category) > 0 &&
6
- Number(longData.eMode?.category) === shortData.eMode?.category
7
- : false;
8
- const intersection = (a0, a1) => {
9
- return a0.filter((a) => a1.includes(a));
10
- };
11
- const LENDER_MODE_NO_MODE = 0;
12
- // calculate the maximum leverage for a given pair
13
- const getMaxLeverage = (lender, longData, shortData) => {
14
- // for Aave V3 we check for eModes
15
- if (isAaveV3Type(lender)) {
16
- const cf = isEMode(longData, shortData)
17
- ? longData.config[longData.eMode?.category ?? 0]?.borrowCollateralFactor
18
- : longData.config[LENDER_MODE_NO_MODE]?.borrowCollateralFactor;
19
- return 1 / (1 - cf);
20
- }
21
- // for init, we match the modes and find the one with the highest collatearal factor
22
- if (isInit(lender)) {
23
- const modeIntersect = intersection(Object.values(longData.config).map((c) => c.category), Object.values(shortData.config).map((c) => c.category));
24
- if (modeIntersect.length === 0)
25
- return 1;
26
- const configId = Object.values(longData.config)
27
- .filter((c) => modeIntersect.includes(c.category))
28
- .sort((c, d) => c.borrowCollateralFactor < d.borrowCollateralFactor ? 1 : -1)[0].category;
29
- // we have to use the adjusted formula with the borrowFactor here
30
- const cf = longData.config[configId]?.borrowCollateralFactor;
31
- const bf = shortData.config[configId]?.borrowFactor;
32
- return 1 / (1 - cf / bf);
33
- }
34
- // all other cases use the default mode no_mode without borrowFactor
35
- const cf = longData?.config?.[LENDER_MODE_NO_MODE]?.borrowCollateralFactor ?? 0.8;
36
- return 1 / (1 - cf);
37
- };
38
- /** create array of pairs for given lender data */
39
- export function generateLendingPairs(lenderData, prices, histPrices) {
40
- const pairs = [];
41
- for (const chainId in lenderData) {
42
- const chainEntry = lenderData[chainId];
43
- const lenderToData = chainEntry.data ?? chainEntry;
44
- for (const lender in lenderToData) {
45
- const lenderEntry = lenderToData[lender];
46
- // protect agaist error data
47
- let pools = Object.values(lenderEntry?.data ?? lenderEntry ?? {}).map((a) => (a?.data ? a.data : a));
48
- // sometimes error messages are included
49
- const hasErrorMessages = pools.some((p) => typeof p === "string" &&
50
- (p.includes("No lenders available") || p.includes("Failed to fetch")));
51
- if (hasErrorMessages)
52
- continue;
53
- // cast to poolData
54
- const validPools = pools.filter((p) => typeof p === "object" && p !== null);
55
- const poolArray = validPools.filter((p) => !p?.isFrozen);
56
- // Loop through all ordered pairs of pools
57
- for (let i = 0; i < poolArray.length; i++) {
58
- for (let j = 0; j < poolArray.length; j++) {
59
- if (i === j)
60
- continue;
61
- const long = poolArray[i];
62
- const short = poolArray[j];
63
- if (!short.borrowingEnabled)
64
- continue;
65
- // Skip same asset pairs
66
- if (long.underlying === short.underlying)
67
- continue;
68
- const maxDepositLeverage = getMaxLeverage(lender, long, short);
69
- const borrowLeverage = maxDepositLeverage - 1;
70
- const depositLeverage = borrowLeverage + 1;
71
- let collateralRewards = 0;
72
- let borrowRewards = 0;
73
- const rewards = {};
74
- // get the rewards from the collateral
75
- for (const [rewardId, baseYields] of Object.entries(long.rewards ?? {})) {
76
- collateralRewards += baseYields.depositRate;
77
- if (baseYields.depositRate > 0)
78
- rewards[rewardId] = baseYields.depositRate * depositLeverage;
79
- }
80
- // get the rewards from debt
81
- for (const [rewardId, baseYields] of Object.entries(short.rewards ?? {})) {
82
- const borrowRate = baseYields.stableBorrowRate >= baseYields.variableBorrowRate
83
- ? baseYields.stableBorrowRate
84
- : baseYields.variableBorrowRate;
85
- borrowRewards += borrowRate;
86
- if (borrowRate != 0)
87
- rewards[rewardId] =
88
- (rewards[rewardId] ?? 0) + borrowRate * borrowLeverage;
89
- }
90
- const depositApr = long.depositRate + long.stakingYield;
91
- const borrowApr = short.variableBorrowRate + short.stakingYield;
92
- const [assetGroupLong, keyLong] = getPriceKey(long.underlying, chainId);
93
- const [assetGroupShort, keyShort] = getPriceKey(short.underlying, chainId);
94
- const priceLong = prices[keyLong] ?? 0;
95
- const priceShort = prices[keyShort] ?? 0;
96
- const price24hLong = histPrices[keyLong] ?? priceLong;
97
- const price24hShort = histPrices[keyShort] ?? priceShort;
98
- const price = priceShort !== 0 ? priceLong / priceShort : 0;
99
- const price24h = price24hShort !== 0 ? price24hLong / price24hShort : 0;
100
- // only base apr
101
- const baseApr = depositApr * depositLeverage - borrowApr * borrowLeverage;
102
- // only rewards apr
103
- const rewardApr = collateralRewards * depositLeverage +
104
- borrowRewards * borrowLeverage;
105
- // total apr
106
- const totalApr = baseApr + rewardApr;
107
- pairs.push({
108
- chainId,
109
- lender,
110
- assetLong: long.underlying,
111
- assetShort: short.underlying,
112
- price,
113
- price24h,
114
- assetGroupLong,
115
- assetGroupShort,
116
- priceChange: price24h === 0 ? 0 : (price - price24h) / price24h,
117
- maxLeverage: maxDepositLeverage,
118
- apr: totalApr,
119
- baseApr,
120
- rewardApr,
121
- eMode: long.eMode?.category ?? 0,
122
- longTotalDepositsUSD: long.totalDepositsUSD,
123
- longTotalDebtUSD: long.totalDebtUSD,
124
- longTotalLiquidityUSD: long.totalLiquidityUSD,
125
- shortTotalDepositsUSD: short.totalDepositsUSD,
126
- shortTotalDebtUSD: short.totalDebtUSD,
127
- shortTotalLiquidityUSD: short.totalLiquidityUSD,
128
- longIsActive: long.isActive,
129
- longIsFrozen: long.isFrozen,
130
- shortIsActive: short.isActive,
131
- shortIsFrozen: short.isFrozen,
132
- shortBorrowingEnabled: short.borrowingEnabled,
133
- });
134
- }
135
- }
136
- }
137
- }
138
- return pairs;
139
- }
140
- function getPriceKey(asset, chainId) {
141
- const assetGroup = getAssetMeta(chainId, asset)?.assetGroup;
142
- return [
143
- assetGroup,
144
- toOracleKey(assetGroup) ?? toGenericPriceKey(asset, chainId),
145
- ];
146
- }
147
- const MAX_ENTRIES = 10;
148
- function filterPairsByCategory(pairs, longFilter, shortFilter) {
149
- return pairs
150
- .filter((p) => {
151
- if (!longFilter(p.assetGroupLong) || !shortFilter(p.assetGroupShort)) {
152
- return false;
153
- }
154
- if (p.assetGroupShort?.includes("PT-") ||
155
- p.assetGroupLong?.includes("PT-")) {
156
- return false;
157
- }
158
- if (!p.longIsActive ||
159
- p.longIsFrozen ||
160
- !p.shortIsActive ||
161
- p.shortIsFrozen) {
162
- return false;
163
- }
164
- if (!p.shortBorrowingEnabled) {
165
- return false;
166
- }
167
- // apply liquidity thresholds
168
- const longThresholds = getLiquidityThresholds(p.chainId, p.assetLong, p.assetGroupLong);
169
- const shortThresholds = getLiquidityThresholds(p.chainId, p.assetShort, p.assetGroupShort);
170
- const longMeetsThresholds = meetsLiquidityThresholds({
171
- totalDepositsUSD: p.longTotalDepositsUSD,
172
- totalDebtUSD: p.longTotalDebtUSD,
173
- totalLiquidityUSD: p.longTotalLiquidityUSD,
174
- }, longThresholds);
175
- const shortMeetsThresholds = meetsLiquidityThresholds({
176
- totalDepositsUSD: p.shortTotalDepositsUSD,
177
- totalDebtUSD: p.shortTotalDebtUSD,
178
- totalLiquidityUSD: p.shortTotalLiquidityUSD,
179
- }, shortThresholds);
180
- if (!longMeetsThresholds || !shortMeetsThresholds) {
181
- return false;
182
- }
183
- return true;
184
- })
185
- .sort((a, b) => b.apr - a.apr)
186
- .slice(0, MAX_ENTRIES);
187
- }
188
- export function getTopPairs(pairs) {
189
- const stables = filterPairsByCategory(pairs, (group) => group?.includes("USD") ?? false, (group) => group?.includes("USD") ?? false);
190
- const btcLst = filterPairsByCategory(pairs, (group) => group?.includes("BTC") ?? false, (group) => group?.includes("BTC") ?? false);
191
- const ethLst = filterPairsByCategory(pairs, (group) => group?.includes("ETH") ?? false, (group) => group?.includes("ETH") ?? false);
192
- return {
193
- stables,
194
- btcLst,
195
- ethLst,
196
- gainers: getDistinctPairsByShortAsset(pairs).slice(0, MAX_ENTRIES),
197
- };
198
- }
199
- function isStable(assetGroup) {
200
- return assetGroup.includes("USD");
201
- }
202
- export function getDistinctPairsByShortAsset(pairs) {
203
- const qualityPairs = pairs.filter((p) => {
204
- if (!isFinite(p.apr) || !isFinite(p.priceChange)) {
205
- return false;
206
- }
207
- if (!p.longIsActive ||
208
- p.longIsFrozen ||
209
- !p.shortIsActive ||
210
- p.shortIsFrozen) {
211
- return false;
212
- }
213
- if (!p.shortBorrowingEnabled) {
214
- return false;
215
- }
216
- // Apply liquidity thresholds
217
- const longThresholds = getLiquidityThresholds(p.chainId, p.assetLong, p.assetGroupLong);
218
- const shortThresholds = getLiquidityThresholds(p.chainId, p.assetShort, p.assetGroupShort);
219
- const longMeetsThresholds = meetsLiquidityThresholds({
220
- totalDepositsUSD: p.longTotalDepositsUSD,
221
- totalDebtUSD: p.longTotalDebtUSD,
222
- totalLiquidityUSD: p.longTotalLiquidityUSD,
223
- }, longThresholds);
224
- const shortMeetsThresholds = meetsLiquidityThresholds({
225
- totalDepositsUSD: p.shortTotalDepositsUSD,
226
- totalDebtUSD: p.shortTotalDebtUSD,
227
- totalLiquidityUSD: p.shortTotalLiquidityUSD,
228
- }, shortThresholds);
229
- if (!longMeetsThresholds || !shortMeetsThresholds) {
230
- return false;
231
- }
232
- if (p.assetGroupShort?.includes("PT-") ||
233
- p.assetGroupLong?.includes("PT-")) {
234
- return false;
235
- }
236
- return true;
237
- });
238
- const sorted = [...qualityPairs].sort((a, b) => b.priceChange - a.priceChange);
239
- const blacklist = new Set();
240
- const blacklistLong = new Set();
241
- const result = [];
242
- for (const pair of sorted) {
243
- const shortGroup = pair.assetGroupShort;
244
- const longGroup = pair.assetGroupLong;
245
- if (blacklist.has(shortGroup) || blacklistLong.has(longGroup))
246
- continue;
247
- result.push(pair);
248
- // Only blacklist if not a stablecoin
249
- if (!isStable(shortGroup)) {
250
- blacklist.add(shortGroup);
251
- }
252
- if (!isStable(longGroup)) {
253
- blacklistLong.add(longGroup);
254
- }
255
- if (result.length >= 10)
256
- return result;
257
- }
258
- return result;
259
- }
@@ -1 +0,0 @@
1
- export * from "./computeLendingPairs";
@@ -1,269 +0,0 @@
1
- import fetch from "axios";
2
- const prefixEthereum = 'ethereum:';
3
- const RETH = '0xae78736Cd615f374D3085123A210448E74Fc6393';
4
- const WBTC = '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599';
5
- const WETH = '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2';
6
- const MNT = '0x3c3a81e81dc49a522a592e7622a7e711c06bf354';
7
- const USDE = '0x4c9edd5852cd905f086c759e8383e09bff1e68b3';
8
- const METH = '0xd5f7838f5c461feff7fe49ea5ebaf7728bb0adfa';
9
- const USDC = '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48';
10
- const USDT = '0xdac17f958d2ee523a2206206994597c13d831ec7';
11
- const USDY = '0x96f6ef951840721adbf46ac996b59e0235cb985c';
12
- const CRV = '0xD533a949740bb3306d119CC777fa900bA034cd52';
13
- const BAL = '0xba100000625a3754423978a60c9317c58a424e3D';
14
- const AGEUR = '0x1a7e4e63778B4f12a199C062f3eFdD288afCBce8';
15
- const LINK = '0x514910771AF9Ca656af840dff83E8264EcF986CA';
16
- const DAI = '0x6B175474E89094C44Da98b954EedeAC495271d0F';
17
- const MATIC = '0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0';
18
- const BNB = '0xB8c77482e45F1F44dE1745F52C74426C631bDD52';
19
- const STMATIC = '0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599';
20
- const MATICX = '0xf03A7Eb46d01d9EcAA104558C732Cf82f6B6B645';
21
- const AAVE = '0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9';
22
- const COMP = '0xc00e94cb662c3520282e6f5717214004a7f26888';
23
- const EURS = '0xdB25f211AB05b1c97D595516F45794528a807ad8';
24
- const FBTC = '0xC96dE26018A54D51c097160568752c4E3BD6C364';
25
- const TAIKO = '0x10dea67478c5F8C5E2D90e5E9B26dBe60c54d800';
26
- const CMETH = '0xe6829d9a7ee3040e1276fa75293bde931859e8fa';
27
- const AUSD = '0x00000000efe302beaa2b3e6e1b18d08d69a9012a';
28
- const SUSDE = '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497';
29
- const FUEL = '0x675B68AA4d9c2d3BB3F0397048e62E6B7192079c';
30
- const GHO = '0x40d16fc0246ad3160ccc09b8d0d3a2cd28ae6c2f';
31
- const FRAX = '0x853d955acef822db058eb8505911ed77f175b99e';
32
- const WEETH = '0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee';
33
- const ARB = '0xb50721bcf8d664c30412cfbc6cf7a15145234ad1';
34
- const WUSDM = '0x57f5e098cad7a3d1eed53991d4d66c45c9af7812';
35
- const RSETH = "0xa1290d69c65a6fe4df752f95823fae25cb99e5a7";
36
- const CBETH = "0xbe9895146f7af43049ca1c1ae358b0541ea49704";
37
- const SNX = "0xc011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f";
38
- const VUSD = "0x677ddbd918637e5f2c79e164d402454de7da8619";
39
- const EZETH = "0xbf5495Efe5DB9ce00f80364C8B423567e58d2110";
40
- const LBTC = "0x8236a87084f8B84306f72007F36F2618A5634494";
41
- const BRBTC = "0x2eC37d45FCAE65D9787ECf71dc85a444968f6646";
42
- const SDAI = "0x83f20f44975d03b1b09e64809b757c47f942beea";
43
- const datasEthereum = [
44
- RETH,
45
- WBTC,
46
- WETH,
47
- MNT,
48
- USDC,
49
- USDT,
50
- USDE,
51
- METH,
52
- USDY,
53
- CRV,
54
- BAL,
55
- AGEUR,
56
- LINK,
57
- DAI,
58
- BNB,
59
- MATIC,
60
- STMATIC,
61
- MATICX,
62
- AAVE,
63
- COMP,
64
- EURS,
65
- FBTC,
66
- TAIKO,
67
- CMETH,
68
- AUSD,
69
- SUSDE,
70
- FUEL,
71
- GHO,
72
- FRAX,
73
- WEETH,
74
- ARB,
75
- WUSDM,
76
- RSETH,
77
- CBETH,
78
- SNX,
79
- EZETH,
80
- VUSD,
81
- LBTC,
82
- BRBTC,
83
- SDAI
84
- ].map(d => prefixEthereum + d).join(',');
85
- const prefixAvalanche = 'avax:';
86
- const WAVAX = '0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7';
87
- const SAVAX = "0x2b2C81e08f1Af8835a78Bb2A90AE924ACE0eA4bE";
88
- const prefixArbitrum = "arbitrum:";
89
- const GMX = "0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a";
90
- const prefixOptimism = "optimism:";
91
- const OP = "0x4200000000000000000000000000000000000042";
92
- const SUSD = "0x8c6f28f2F1A3C87F0f938b96d27520d9751ec8d9";
93
- const WRSETH = "0x87eee96d50fb761ad85b1c982d28a042169d61b1";
94
- const prefixBase = "base:";
95
- const AERO = "0x940181a94A35A4569E4529A3CDfB74e38FD98631";
96
- const prefixCore = "core:";
97
- const WCORE = "0xb0788b601c0d712702bc829b52771199ad8e33ff";
98
- const prefixMetis = "metis:";
99
- const WMETIS = "0x75cb093e4d61d2a2e65d8e0bbb01de8d89b53481";
100
- const prefixSonic = "sonic:";
101
- const WS = "0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38";
102
- const prefixFantom = "fantom:";
103
- const WFTM = "0x21be370d5312f44cb42ce377bc9b8a0cef1a4c83";
104
- const prefixKaia = "kaia:";
105
- const WKAIA = "0x19aac5f612f524b754ca7e7c41cbfa2e981a4432";
106
- const datasAvalanche = [
107
- WAVAX,
108
- SAVAX
109
- ].map(d => prefixAvalanche + d).join(',');
110
- const datasArbitrum = [GMX].map(d => prefixArbitrum + d).join(',');
111
- const datasOptimism = [OP, SUSD, WRSETH].map(d => prefixOptimism + d).join(',');
112
- const datasBase = [AERO].map(d => prefixBase + d).join(',');
113
- const datasCore = [WCORE].map(d => prefixCore + d).join(',');
114
- const datasMetis = [WMETIS].map(d => prefixMetis + d).join(',');
115
- const datasFantom = [WFTM].map(d => prefixFantom + d).join(',');
116
- const datasSonic = [WS].map(d => prefixSonic + d).join(',');
117
- const datasKaia = [WKAIA].map(d => prefixKaia + d).join(',');
118
- const URL = `https://coins.llama.fi/prices/current/${[
119
- datasEthereum,
120
- datasAvalanche,
121
- datasArbitrum,
122
- datasOptimism,
123
- datasBase,
124
- datasCore,
125
- datasMetis,
126
- datasFantom,
127
- datasKaia,
128
- datasSonic, //
129
- ].join(',')}?searchWidth=4h`;
130
- const URL_HIST = (ref) => `https://coins.llama.fi/prices/historical/${ref}/${[
131
- datasEthereum,
132
- datasAvalanche,
133
- datasArbitrum,
134
- datasOptimism,
135
- datasBase,
136
- datasCore,
137
- datasMetis,
138
- datasFantom,
139
- datasKaia,
140
- datasSonic, //
141
- ].join(',')}?searchWidth=4h`;
142
- const SYMBOL_MAP = {
143
- 'weth': "WETH",
144
- 'usde': "USDE",
145
- 'meth': "METH",
146
- 'mnt': "WMNT",
147
- 'usdc': "USDC",
148
- 'usdt': "USDT",
149
- 'wbtc': "WBTC",
150
- 'usdy': "USDY",
151
- 'crv': "CRV",
152
- 'op': "OP",
153
- 'bal': "BAL",
154
- 'eura': "AGEUR",
155
- 'link': "LINK",
156
- 'dai': "DAI",
157
- 'bnb': "WBNB",
158
- 'matic': "WPOL",
159
- 'wpol': "WPOL",
160
- 'pol': "WPOL",
161
- 'stmatic': "STMATIC",
162
- 'maticx': "MATICX",
163
- 'wavax': "WAVAX",
164
- 'aave': "AAVE",
165
- 'comp': "COMP",
166
- 'eurs': "EURS",
167
- 'fbtc': "FBTC",
168
- 'taiko': "TAIKO",
169
- 'cmeth': "CMETH",
170
- 'ausd': "AUSD",
171
- 'susde': "SUSDE",
172
- 'fuel': "FUEL",
173
- 'gho': "GHO",
174
- 'frax': "FRAX",
175
- 'weeth': "WEETH",
176
- 'arb': "ARB",
177
- 'lusd': "LUSD",
178
- 'reth': "RETH",
179
- 'gmx': "GMX",
180
- 'wusdm': "WUSDM",
181
- 'rseth': "RSETH",
182
- 'susd': "SUSD",
183
- 'wrseth': "WRSETH",
184
- 'cbeth': "CBETH",
185
- 'aero': "AERO",
186
- 'snx': "SNX",
187
- 'wftm': "WFTM",
188
- 'ftm': "WFTM",
189
- 'wcore': "WCORE",
190
- 'core': "WCORE",
191
- 'ws': "WS",
192
- 's': "WS",
193
- 'wmetis': "WMETIS",
194
- 'metis': "WMETIS",
195
- 'vusd': "VUSD",
196
- 'ezeth': "EZETH",
197
- 'lbtc': "LBTC",
198
- 'brbtc': "BRBTC",
199
- 'sdai': "SDAI",
200
- 'wkaia': "KAIA",
201
- 'savax': "SAVAX",
202
- };
203
- export async function fetchDefillamaData() {
204
- try {
205
- const res = await fetch(URL);
206
- let prices = Object.assign({}, ...Object.values(res.data.coins).map(
207
- // @ts-ignore
208
- (k) => { return { [SYMBOL_MAP[k.symbol.toLowerCase()]]: k.price }; }));
209
- prices["POL"] = prices["WPOL"];
210
- prices["BNB"] = prices["WBNB"];
211
- prices["ETH"] = prices["WETH"];
212
- prices["S"] = prices["WS"];
213
- prices["CORE"] = prices["WCORE"];
214
- prices["AVAX"] = prices["WAVAX"];
215
- prices["METIS"] = prices["WMETIS"];
216
- prices["KAIA"] = prices["WKAIA"];
217
- prices["USDBC"] = prices["USDC"];
218
- prices["BTCB"] = prices["WBTC"];
219
- prices["CBBTC"] = prices["WBTC"];
220
- prices["SOLVBTC"] = prices["WBTC"];
221
- prices["XSOLVBTC"] = prices["WBTC"];
222
- prices["SUBTC"] = prices["WBTC"];
223
- prices["IBTC"] = prices["WBTC"];
224
- prices["ENZOBTC"] = prices["WBTC"];
225
- prices["LUSD"] = prices["USDT"];
226
- prices["XDAI"] = prices["DAI"];
227
- prices["WXDAI"] = prices["DAI"];
228
- return prices;
229
- }
230
- catch (e) {
231
- console.log("error fetching prices from defillama", e);
232
- return {};
233
- }
234
- }
235
- export async function fetchDefillamaHistData() {
236
- try {
237
- const nowMinus24 = Math.floor(Date.now() / 1000 - 24 * 3600);
238
- const resHist = await fetch(URL_HIST(nowMinus24));
239
- let histPrices = Object.assign({}, ...Object.values(resHist.data.coins).map(
240
- // @ts-ignore
241
- (k) => { return { [SYMBOL_MAP[k.symbol.toLowerCase()]]: k.price }; }));
242
- histPrices["POL"] = histPrices["WPOL"];
243
- histPrices["BNB"] = histPrices["WBNB"];
244
- histPrices["ETH"] = histPrices["WETH"];
245
- histPrices["S"] = histPrices["WS"];
246
- histPrices["CORE"] = histPrices["WCORE"];
247
- histPrices["AVAX"] = histPrices["WAVAX"];
248
- histPrices["METIS"] = histPrices["WMETIS"];
249
- histPrices["KAIA"] = histPrices["WKAIA"];
250
- histPrices["LUSD"] = histPrices["USDT"];
251
- histPrices["XDAI"] = histPrices["DAI"];
252
- histPrices["WXDAI"] = histPrices["DAI"];
253
- histPrices["BTCB"] = histPrices["WBTC"];
254
- histPrices["M-BTC"] = histPrices["WBTC"];
255
- histPrices["SOLVBTC"] = histPrices["WBTC"];
256
- histPrices["XSOLVBTC"] = histPrices["WBTC"];
257
- histPrices["UNIBTC"] = histPrices["WBTC"];
258
- histPrices["HEMIBTC"] = histPrices["WBTC"];
259
- histPrices["SUBTC"] = histPrices["WBTC"];
260
- histPrices["IBTC"] = histPrices["WBTC"];
261
- histPrices["ENZOBTC"] = histPrices["WBTC"];
262
- histPrices["PUMPBTC"] = histPrices["WBTC"];
263
- return histPrices;
264
- }
265
- catch (e) {
266
- console.log("error fetching prices from defillama", e);
267
- return {};
268
- }
269
- }
@@ -1,2 +0,0 @@
1
- export * from "./defillama";
2
- export * from "./main-prices";