@1delta/margin-fetcher 0.0.309 → 0.0.311

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
@@ -11275,6 +11275,8 @@ var MORPHO_LENS = {
11275
11275
  [Chain.CELO_MAINNET]: "0x4b5458BB47dCBC1a41B31b41e1a8773dE312BE9d",
11276
11276
  [Chain.PLUME_MAINNET]: "0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201",
11277
11277
  [Chain.FLARE_MAINNET]: "0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201",
11278
+ [Chain.PHAROS_MAINNET]: "0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201",
11279
+ [Chain.ROBINHOOD_CHAIN]: "0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201",
11278
11280
  [Chain.STABLE_MAINNET]: "0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201",
11279
11281
  [Chain.CORN]: "0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201",
11280
11282
  [Chain.LISK]: "0x8E24CfC19c6C00c524353CB8816f5f1c2F33c201",
@@ -21535,6 +21537,7 @@ function lenderApiOnly(lender, chainId) {
21535
21537
  if (chainId === Chain.FLARE_MAINNET) return false;
21536
21538
  if (chainId === Chain.PLUME_MAINNET) return false;
21537
21539
  if (chainId === Chain.KAIA_MAINNET) return false;
21540
+ if (chainId === Chain.PHAROS_MAINNET) return false;
21538
21541
  if (chainId === "4114") return false;
21539
21542
  return true;
21540
21543
  }
@@ -45588,6 +45591,15 @@ var Erc4626ConvertAbi = [
45588
45591
  outputs: [{ type: "uint256", name: "assets" }]
45589
45592
  }
45590
45593
  ];
45594
+ var Erc4626TotalAssetsAbi = [
45595
+ {
45596
+ name: "totalAssets",
45597
+ type: "function",
45598
+ stateMutability: "view",
45599
+ inputs: [],
45600
+ outputs: [{ type: "uint256" }]
45601
+ }
45602
+ ];
45591
45603
 
45592
45604
  // src/vaults/aave-earn/api.ts
45593
45605
  var AAVE_EARN_API_URL = "https://api.v3.aave.com/graphql";
@@ -45740,16 +45752,19 @@ var fetchAaveEarnVaults = async (chainId, multicallRetry, prices = {}, tokenList
45740
45752
  (v) => !!v?.address && !!v?.usedReserve?.underlyingToken?.address && v.usedReserve.underlyingToken.decimals != null
45741
45753
  );
45742
45754
  if (usable.length === 0) return {};
45755
+ const CALLS_PER_VAULT2 = 4;
45743
45756
  const calls = usable.flatMap((v) => {
45744
45757
  const underlyingDec = v.usedReserve.underlyingToken.decimals;
45745
45758
  const shareUnit = 10n ** BigInt(underlyingDec);
45746
45759
  return [
45760
+ { address: v.address, name: "totalAssets", params: [] },
45747
45761
  { address: v.address, name: "decimals", params: [] },
45748
45762
  { address: v.address, name: "totalSupply", params: [] },
45749
45763
  { address: v.address, name: "convertToAssets", params: [shareUnit] }
45750
45764
  ];
45751
45765
  });
45752
45766
  const abis = usable.flatMap(() => [
45767
+ Erc4626TotalAssetsAbi,
45753
45768
  Erc20MetaAbi,
45754
45769
  Erc20MetaAbi,
45755
45770
  Erc4626ConvertAbi
@@ -45762,25 +45777,25 @@ var fetchAaveEarnVaults = async (chainId, multicallRetry, prices = {}, tokenList
45762
45777
  const out = {};
45763
45778
  for (let i = 0; i < usable.length; i++) {
45764
45779
  const v = usable[i];
45765
- const slice = rawResults.slice(i * 3, i * 3 + 3);
45780
+ const base = i * CALLS_PER_VAULT2;
45781
+ const slice = rawResults.slice(base, base + CALLS_PER_VAULT2);
45766
45782
  const addressLc = v.address.toLowerCase();
45767
45783
  const token = v.usedReserve.underlyingToken;
45768
45784
  const underlyingLc = token.address.toLowerCase();
45769
45785
  const assetDecimals = token.decimals;
45770
- const shareDecOnChain = toBigInt13(slice[0]);
45786
+ const shareDecOnChain = toBigInt13(slice[1]);
45771
45787
  const decimals = shareDecOnChain !== void 0 ? Number(shareDecOnChain) : assetDecimals;
45772
- const totalSupply = toBigInt13(slice[1]);
45788
+ const totalSupply = toBigInt13(slice[2]);
45773
45789
  if (totalSupply === void 0) continue;
45774
45790
  const shareUnit = 10n ** BigInt(decimals);
45775
45791
  const underlyingUnit = 10n ** BigInt(assetDecimals);
45776
- const convertToAssets = toBigInt13(slice[2]) ?? 0n;
45792
+ const convertToAssets = toBigInt13(slice[3]) ?? 0n;
45777
45793
  const convertToShares = convertToAssets > 0n ? shareUnit * underlyingUnit / convertToAssets : 0n;
45778
- const totalAssetsRaw = v.balance?.amount?.raw ?? "0";
45779
- const totalAssets = toBigInt13(totalAssetsRaw) ?? 0n;
45794
+ const totalAssets = toBigInt13(slice[0]) ?? totalSupply * convertToAssets / shareUnit;
45780
45795
  const totalAssetsFormatted = Number(totalAssets) / 10 ** assetDecimals;
45781
45796
  const asset = tokenList[underlyingLc];
45782
45797
  const priceUsd = prices[underlyingLc] ?? (v.balance?.usdPerToken != null ? num2(v.balance.usdPerToken) : void 0);
45783
- const totalAssetsUsd = v.balance?.usd != null ? num2(v.balance.usd) : priceUsd !== void 0 ? totalAssetsFormatted * priceUsd : 0;
45798
+ const totalAssetsUsd = priceUsd !== void 0 ? totalAssetsFormatted * priceUsd : 0;
45784
45799
  const supplyRate = num2(v.vaultApr?.formatted);
45785
45800
  const rewardsRate = 0;
45786
45801
  const depositRate = supplyRate + rewardsRate;
@@ -46474,7 +46489,11 @@ var stampVaultClassification = (data, chainId, tokenList = {}) => {
46474
46489
  const longLogo = v.longToken != null ? tokenList[v.longToken.toLowerCase()]?.logoURI : void 0;
46475
46490
  const icon = v.shareAsset?.logoURI ?? v.asset?.logoURI ?? longLogo;
46476
46491
  if (icon) v.logoURI = icon;
46477
- if (!classify) continue;
46492
+ if (!classify) {
46493
+ if (v.priceUsd != null && Number.isFinite(v.priceUsd))
46494
+ v.sharePriceUSD = v.priceUsd;
46495
+ continue;
46496
+ }
46478
46497
  const c = classifyVault({
46479
46498
  provider,
46480
46499
  chainId,