@1delta/margin-fetcher 0.0.216 → 0.0.217

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.
package/dist/index.js CHANGED
@@ -6275,6 +6275,7 @@ globalThis[GLOBAL_LENDER_DATA_KEY] = {
6275
6275
  compoundV3Bulker: {},
6276
6276
  eulerConfigs: {},
6277
6277
  eulerVaults: {},
6278
+ aaveV4Hubs: {},
6278
6279
  aaveV4Spokes: {},
6279
6280
  aaveV4Reserves: {},
6280
6281
  aaveV4Oracles: {}
@@ -6302,6 +6303,7 @@ var initConfig = () => getGlobalData2()?.initConfig;
6302
6303
  var aaveOraclesConfig = () => getGlobalData2()?.aaveOraclesConfig;
6303
6304
  var eulerConfigs = () => getGlobalData2()?.eulerConfigs;
6304
6305
  var eulerVaults = () => getGlobalData2()?.eulerVaults;
6306
+ var aaveV4Hubs = () => getGlobalData2()?.aaveV4Hubs;
6305
6307
  var aaveV4Spokes = () => getGlobalData2()?.aaveV4Spokes;
6306
6308
  var aaveV4Reserves = () => getGlobalData2()?.aaveV4Reserves;
6307
6309
  var aaveV4Oracles = () => getGlobalData2()?.aaveV4Oracles;
@@ -12104,7 +12106,9 @@ function convertMarketsToMorphoResponse(response, chainId, additionalYields = {
12104
12106
  loaded: true
12105
12107
  }, tokens = {}) {
12106
12108
  const data = {};
12107
- response.markets.items.forEach((market) => {
12109
+ const items = response?.markets?.items;
12110
+ if (!items) return data;
12111
+ items.forEach((market) => {
12108
12112
  const {
12109
12113
  uniqueKey,
12110
12114
  lltv,
@@ -18062,13 +18066,17 @@ function rayRateToApr(rateRay) {
18062
18066
  if (rateRay === 0n) return 0;
18063
18067
  return Number(rateRay) / RAY2 * 100;
18064
18068
  }
18065
- function normalizeAaveV4(spokeDataList, chainId, lender, prices, additionalYields, tokenList, lenderShortNameFn, createMarketUidFn, toOracleKeyFn, toGenericPriceKeyFn) {
18069
+ function normalizeAaveV4(spokeDataList, chainId, lender, prices, additionalYields, tokenList, lenderShortNameFn, createMarketUidFn, toOracleKeyFn, toGenericPriceKeyFn, expectedHub) {
18066
18070
  const data = {};
18067
18071
  const eModes = {};
18072
+ const hubFilter = expectedHub?.toLowerCase();
18068
18073
  for (const spokeData of spokeDataList) {
18069
18074
  const spokeAddr = spokeData.spoke.toLowerCase();
18070
18075
  const spokeReserves = spokeData.reserves;
18071
18076
  for (const reserve of spokeReserves) {
18077
+ const reserveHub = reserve.reserve.hub?.toLowerCase();
18078
+ if (hubFilter && reserveHub && reserveHub !== hubFilter)
18079
+ continue;
18072
18080
  for (const [keyStr, dynCfg] of Object.entries(
18073
18081
  reserve.dynamicConfigs
18074
18082
  )) {
@@ -18085,6 +18093,9 @@ function normalizeAaveV4(spokeDataList, chainId, lender, prices, additionalYield
18085
18093
  }
18086
18094
  }
18087
18095
  for (const reserve of spokeReserves) {
18096
+ const reserveHub = reserve.reserve.hub?.toLowerCase();
18097
+ if (hubFilter && reserveHub && reserveHub !== hubFilter)
18098
+ continue;
18088
18099
  const underlying = reserve.reserve.underlying.toLowerCase();
18089
18100
  const decimals = reserve.reserve.decimals;
18090
18101
  const hubAddr = reserve.reserve.hub.toLowerCase();
@@ -18385,6 +18396,8 @@ var getAaveV4ReservesDataConverter = (lender, chainId, prices, additionalYields,
18385
18396
  }
18386
18397
  }
18387
18398
  }
18399
+ const hubEntry = aaveV4Hubs()?.[lender]?.[chainId];
18400
+ const expectedHub = hubEntry?.hub;
18388
18401
  return normalizeAaveV4(
18389
18402
  spokeDataList,
18390
18403
  chainId,
@@ -18395,7 +18408,8 @@ var getAaveV4ReservesDataConverter = (lender, chainId, prices, additionalYields,
18395
18408
  lenderShortName,
18396
18409
  createMarketUid,
18397
18410
  toOracleKey,
18398
- toGenericPriceKey
18411
+ toGenericPriceKey,
18412
+ expectedHub
18399
18413
  );
18400
18414
  };
18401
18415
  return [converter, expectedCalls];
@@ -27621,34 +27635,18 @@ var yusdFetcher = {
27621
27635
  };
27622
27636
 
27623
27637
  // src/yields/intrinsic/fetchers/resolv.ts
27624
- var RLP_URL = "https://api.resolv.xyz/apr/rlp/7d";
27625
- var WSTUSR_URL = "https://api.resolv.xyz/apr/staking/7d";
27626
27638
  var rlp = "Resolv RLP::RLP";
27627
27639
  var wstusr = "Resolv wstUSR::WSTUSR";
27628
27640
  var rlpFetcher = {
27629
27641
  label: "RLP",
27630
27642
  fetch: async () => {
27631
- const res = await fetch(RLP_URL, {
27632
- method: "GET",
27633
- headers: {
27634
- Accept: "application/json",
27635
- "User-Agent": "1delta/yields"
27636
- }
27637
- }).then((r) => r.json());
27638
- return { [rlp]: Number(res?.value ?? 0) * 100 };
27643
+ return { [rlp]: 0 };
27639
27644
  }
27640
27645
  };
27641
27646
  var wstusrFetcher = {
27642
27647
  label: "WSTUSR",
27643
27648
  fetch: async () => {
27644
- const res = await fetch(WSTUSR_URL, {
27645
- method: "GET",
27646
- headers: {
27647
- Accept: "application/json",
27648
- "User-Agent": "1delta/yields"
27649
- }
27650
- }).then((r) => r.json());
27651
- return { [wstusr]: Number(res?.value ?? 0) * 100 };
27649
+ return { [wstusr]: 0 };
27652
27650
  }
27653
27651
  };
27654
27652
 
@@ -27865,7 +27863,7 @@ var susdxFetcher = {
27865
27863
  };
27866
27864
 
27867
27865
  // src/yields/intrinsic/fetchers/reserve.ts
27868
- var RTOKENS_URL = "https://yields.reserve.org/pools";
27866
+ var RTOKENS_URL = "https://yields.reserve.org";
27869
27867
  var hyUSD = "High Yield USD Base::HYUSD";
27870
27868
  var bsdETH = "Based ETH::BSDETH";
27871
27869
  var ethPlus = "ETHPlus::ETH+";
@@ -27878,18 +27876,18 @@ var rtokensFetcher = {
27878
27876
  label: "RTOKENS",
27879
27877
  fetch: async () => {
27880
27878
  const res = await fetch(RTOKENS_URL).then((r) => r.json());
27881
- const data = res.rtokens["8453"];
27882
- const dataMainnet = res.rtokens["1"];
27883
- const dataMainnetColalterals = res.collaterals["1"];
27879
+ const data = res?.rtokens?.["8453"];
27880
+ const dataMainnet = res?.rtokens?.["1"];
27881
+ const dataMainnetColalterals = res?.collaterals?.["1"];
27884
27882
  return {
27885
- [bsdETH]: apyToAprPercent(data.bsdETH / 100) * 100,
27886
- [hyUSD]: apyToAprPercent(data.hyUSD / 100) * 100,
27887
- [sfrxeth]: apyToAprPercent(dataMainnetColalterals.sfrxeth / 100) * 100,
27888
- [sfrax]: apyToAprPercent(dataMainnetColalterals.sfrax / 100) * 100,
27889
- [ceth]: apyToAprPercent(dataMainnetColalterals.ceth / 100) * 100,
27890
- [ethPlus]: apyToAprPercent(dataMainnet["ETH+"] / 100) * 100,
27891
- [usdThree]: apyToAprPercent(dataMainnet["USD3"] / 100) * 100,
27892
- [woEth]: apyToAprPercent(dataMainnetColalterals.woeth / 100) * 100
27883
+ [bsdETH]: apyToAprPercent((data?.bsdETH ?? 0) / 100) * 100,
27884
+ [hyUSD]: apyToAprPercent((data?.hyUSD ?? 0) / 100) * 100,
27885
+ [sfrxeth]: apyToAprPercent((dataMainnetColalterals?.sfrxeth ?? 0) / 100) * 100,
27886
+ [sfrax]: apyToAprPercent((dataMainnetColalterals?.sfrax ?? 0) / 100) * 100,
27887
+ [ceth]: apyToAprPercent((dataMainnetColalterals?.ceth ?? 0) / 100) * 100,
27888
+ [ethPlus]: apyToAprPercent((dataMainnet?.["ETH+"] ?? 0) / 100) * 100,
27889
+ [usdThree]: apyToAprPercent((dataMainnet?.["USD3"] ?? 0) / 100) * 100,
27890
+ [woEth]: apyToAprPercent((dataMainnetColalterals?.woeth ?? 0) / 100) * 100
27893
27891
  };
27894
27892
  }
27895
27893
  };