@1delta/margin-fetcher 0.0.338 → 0.0.340
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 +82 -8
- package/dist/index.js.map +1 -1
- package/dist/lending/public-data/liquity/convertPublic.d.ts +20 -0
- package/dist/lending/public-data/liquity/convertPublic.d.ts.map +1 -1
- package/dist/lending/public-data/liquity/types.d.ts +5 -1
- package/dist/lending/public-data/liquity/types.d.ts.map +1 -1
- package/dist/prices/oracle-prices/fetchers/liquity.d.ts +24 -0
- package/dist/prices/oracle-prices/fetchers/liquity.d.ts.map +1 -1
- package/dist/prices/pendle/fetchPendlePrices.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetcherRegistry.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/angle.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/anzen.d.ts +3 -0
- package/dist/yields/intrinsic/fetchers/anzen.d.ts.map +1 -0
- package/dist/yields/intrinsic/fetchers/liquidCollective.d.ts +3 -0
- package/dist/yields/intrinsic/fetchers/liquidCollective.d.ts.map +1 -0
- package/dist/yields/intrinsic/fetchers/reserve.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/stakewise.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/strata.d.ts +3 -0
- package/dist/yields/intrinsic/fetchers/strata.d.ts.map +1 -0
- package/dist/yields/intrinsic/fetchers/treehouse.d.ts +3 -0
- package/dist/yields/intrinsic/fetchers/treehouse.d.ts.map +1 -0
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -22206,6 +22206,15 @@ function liquityKeyParts(key) {
|
|
|
22206
22206
|
return { lender: base, chainId: m[1], collIndex: Number(m[2]) };
|
|
22207
22207
|
}
|
|
22208
22208
|
var WAD6 = 1e18;
|
|
22209
|
+
var MAX_PLAUSIBLE_UNIT_USD = 1e7;
|
|
22210
|
+
function liquityCollateralPrice(raw, collDecimals, priceDecimals) {
|
|
22211
|
+
if (raw == null || raw <= 0n) return 0;
|
|
22212
|
+
if (priceDecimals != null) return Number(raw) / 10 ** priceDecimals;
|
|
22213
|
+
const plain = Number(raw) / WAD6;
|
|
22214
|
+
if (collDecimals >= 18 || plain <= MAX_PLAUSIBLE_UNIT_USD) return plain;
|
|
22215
|
+
const adjusted = Number(raw) / 10 ** (36 - collDecimals);
|
|
22216
|
+
return adjusted <= MAX_PLAUSIBLE_UNIT_USD ? adjusted : 0;
|
|
22217
|
+
}
|
|
22209
22218
|
function toHuman2(raw, decimals) {
|
|
22210
22219
|
return Number(raw) / 10 ** decimals;
|
|
22211
22220
|
}
|
|
@@ -22237,7 +22246,7 @@ function convertLiquityMarketsToResponse(raw, chainId, prices = {}, _additionalY
|
|
|
22237
22246
|
const collSymbol = collToken?.symbol ?? branch.name?.split(" / ").pop() ?? "COLL";
|
|
22238
22247
|
const marketName = branch.name ?? `${stableSymbol} / ${collSymbol}`;
|
|
22239
22248
|
const collPriceKey = toOracleKey(collToken?.assetGroup) || toGenericPriceKey(collAddr, chainId);
|
|
22240
|
-
const collPrice = (b.collPrice
|
|
22249
|
+
const collPrice = liquityCollateralPrice(b.collPrice, collDecimals, branch.priceDecimals) || (prices[collPriceKey] ?? 0);
|
|
22241
22250
|
const entireDebt = b.entireDebt !== null ? toHuman2(b.entireDebt, stableDecimals) : 0;
|
|
22242
22251
|
const entireColl = b.entireColl !== null ? toHuman2(b.entireColl, collDecimals) : 0;
|
|
22243
22252
|
const spDeposits = b.spDeposits !== null ? toHuman2(b.spDeposits, stableDecimals) : 0;
|
|
@@ -35199,7 +35208,12 @@ var osethFetcher = {
|
|
|
35199
35208
|
operationName: "osTokenApy"
|
|
35200
35209
|
})
|
|
35201
35210
|
}).then((r) => r.json());
|
|
35202
|
-
|
|
35211
|
+
const apr = apyToAprPercent(res.data?.osTokens?.[0]?.apy);
|
|
35212
|
+
return {
|
|
35213
|
+
[osETH]: apr,
|
|
35214
|
+
// token-lists unifies every osETH deployment (incl. bridged) to the bare `OSETH` group — emit there too.
|
|
35215
|
+
OSETH: apr
|
|
35216
|
+
};
|
|
35203
35217
|
}
|
|
35204
35218
|
};
|
|
35205
35219
|
|
|
@@ -37541,6 +37555,8 @@ var angleFetcher = {
|
|
|
37541
37555
|
label: "ANGLE",
|
|
37542
37556
|
fetch: async () => ({
|
|
37543
37557
|
[stEur]: 0,
|
|
37558
|
+
// token-lists unifies every stEUR deployment to the bare `STEUR` group — emit there too.
|
|
37559
|
+
STEUR: 0,
|
|
37544
37560
|
[stUSD]: 0
|
|
37545
37561
|
})
|
|
37546
37562
|
};
|
|
@@ -38289,10 +38305,13 @@ var rtokensFetcher = {
|
|
|
38289
38305
|
const data = res?.rtokens?.["8453"];
|
|
38290
38306
|
const dataMainnet = res?.rtokens?.["1"];
|
|
38291
38307
|
const dataMainnetColalterals = res?.collaterals?.["1"];
|
|
38308
|
+
const sfrxethApr = apyToAprPercent((dataMainnetColalterals?.sfrxeth ?? 0) / 100) * 100;
|
|
38292
38309
|
return {
|
|
38293
38310
|
[bsdETH]: apyToAprPercent((data?.bsdETH ?? 0) / 100) * 100,
|
|
38294
38311
|
[hyUSD]: apyToAprPercent((data?.hyUSD ?? 0) / 100) * 100,
|
|
38295
|
-
[sfrxeth]:
|
|
38312
|
+
[sfrxeth]: sfrxethApr,
|
|
38313
|
+
// token-lists unifies every sfrxETH deployment to the bare `SFRXETH` group — emit there too.
|
|
38314
|
+
SFRXETH: sfrxethApr,
|
|
38296
38315
|
[sfrax]: apyToAprPercent((dataMainnetColalterals?.sfrax ?? 0) / 100) * 100,
|
|
38297
38316
|
[ceth]: apyToAprPercent((dataMainnetColalterals?.ceth ?? 0) / 100) * 100,
|
|
38298
38317
|
[ethPlus]: apyToAprPercent((dataMainnet?.["ETH+"] ?? 0) / 100) * 100,
|
|
@@ -38453,7 +38472,8 @@ async function fetchPendleYields(lists = {}) {
|
|
|
38453
38472
|
const ptPrice = prices[market.pt];
|
|
38454
38473
|
const ytPrice = prices[market.yt];
|
|
38455
38474
|
const [chainId, address] = market.pt.split("-");
|
|
38456
|
-
const assetKey = lists[chainId]?.list?.[address.toLowerCase()]?.assetGroup
|
|
38475
|
+
const assetKey = lists[chainId]?.list?.[address.toLowerCase()]?.assetGroup;
|
|
38476
|
+
if (!assetKey) return;
|
|
38457
38477
|
const expiry = new Date(market.expiry);
|
|
38458
38478
|
if (expiry <= now) {
|
|
38459
38479
|
yields[assetKey] = 0;
|
|
@@ -38808,6 +38828,50 @@ var yearnKatanaFetcher = {
|
|
|
38808
38828
|
}
|
|
38809
38829
|
};
|
|
38810
38830
|
|
|
38831
|
+
// src/yields/intrinsic/fetchers/liquidCollective.ts
|
|
38832
|
+
var LSETH_POOL_ID = "465d177e-3d0d-42c0-b5f5-31c857567135";
|
|
38833
|
+
var KEYS = ["Liquid Staked ETH::LSETH", "LSETH"];
|
|
38834
|
+
var lsethFetcher = {
|
|
38835
|
+
label: "LSETH",
|
|
38836
|
+
fetch: async () => {
|
|
38837
|
+
const apr = apyToAprPercent(await fetchDefiLlamaApy(LSETH_POOL_ID));
|
|
38838
|
+
return Object.fromEntries(KEYS.map((k) => [k, apr]));
|
|
38839
|
+
}
|
|
38840
|
+
};
|
|
38841
|
+
|
|
38842
|
+
// src/yields/intrinsic/fetchers/treehouse.ts
|
|
38843
|
+
var TETH_POOL_ID = "5762f4a8-bb48-45d6-90ed-2d93d1777169";
|
|
38844
|
+
var KEYS2 = ["Treehouse ETH::tETH"];
|
|
38845
|
+
var tethFetcher = {
|
|
38846
|
+
label: "TETH",
|
|
38847
|
+
fetch: async () => {
|
|
38848
|
+
const apr = apyToAprPercent(await fetchDefiLlamaApy(TETH_POOL_ID));
|
|
38849
|
+
return Object.fromEntries(KEYS2.map((k) => [k, apr]));
|
|
38850
|
+
}
|
|
38851
|
+
};
|
|
38852
|
+
|
|
38853
|
+
// src/yields/intrinsic/fetchers/strata.ts
|
|
38854
|
+
var SRNUSD_POOL_ID = "979711ce-d0c0-4aae-a5fc-d7b76e868649";
|
|
38855
|
+
var KEYS3 = ["Strata Senior NUSD::srNUSD"];
|
|
38856
|
+
var srnusdFetcher = {
|
|
38857
|
+
label: "SRNUSD",
|
|
38858
|
+
fetch: async () => {
|
|
38859
|
+
const apr = apyToAprPercent(await fetchDefiLlamaApy(SRNUSD_POOL_ID));
|
|
38860
|
+
return Object.fromEntries(KEYS3.map((k) => [k, apr]));
|
|
38861
|
+
}
|
|
38862
|
+
};
|
|
38863
|
+
|
|
38864
|
+
// src/yields/intrinsic/fetchers/anzen.ts
|
|
38865
|
+
var SUSDZ_POOL_ID = "46518e93-8197-4539-9861-2340c2ac965a";
|
|
38866
|
+
var KEYS4 = ["Anzen Staked USDz::SUSDZ", "Anzen Staked USDz::sUSDz", "Staked USDz::sUSDz"];
|
|
38867
|
+
var susdzFetcher = {
|
|
38868
|
+
label: "SUSDZ",
|
|
38869
|
+
fetch: async () => {
|
|
38870
|
+
const apr = apyToAprPercent(await fetchDefiLlamaApy(SUSDZ_POOL_ID));
|
|
38871
|
+
return Object.fromEntries(KEYS4.map((k) => [k, apr]));
|
|
38872
|
+
}
|
|
38873
|
+
};
|
|
38874
|
+
|
|
38811
38875
|
// src/yields/intrinsic/fetcherRegistry.ts
|
|
38812
38876
|
var LENDING_ONLY_FETCHERS = [
|
|
38813
38877
|
stmaticFetcher,
|
|
@@ -38833,7 +38897,12 @@ var LENDING_ONLY_FETCHERS = [
|
|
|
38833
38897
|
nestFetcher,
|
|
38834
38898
|
accountableFetcher,
|
|
38835
38899
|
upshiftFetcher,
|
|
38836
|
-
yearnKatanaFetcher
|
|
38900
|
+
yearnKatanaFetcher,
|
|
38901
|
+
// DefiLlama-mapped intrinsic yields for classifier assets lacking a bespoke source
|
|
38902
|
+
lsethFetcher,
|
|
38903
|
+
tethFetcher,
|
|
38904
|
+
srnusdFetcher,
|
|
38905
|
+
susdzFetcher
|
|
38837
38906
|
];
|
|
38838
38907
|
var collectVaultFetchers = () => {
|
|
38839
38908
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -39787,7 +39856,6 @@ var termFetcher = {
|
|
|
39787
39856
|
parse: parseTermResults,
|
|
39788
39857
|
getAbi: getTermAbi
|
|
39789
39858
|
};
|
|
39790
|
-
var SANITY_MAX_USD = 1e9;
|
|
39791
39859
|
function getLiquityCalls(chainId) {
|
|
39792
39860
|
const results = [];
|
|
39793
39861
|
for (const lender of LIQUITY_FAMILY_LENDERS) {
|
|
@@ -39806,6 +39874,8 @@ function getLiquityCalls(chainId) {
|
|
|
39806
39874
|
chainId,
|
|
39807
39875
|
collIndex: b.collIndex,
|
|
39808
39876
|
collToken: b.collToken.toLowerCase(),
|
|
39877
|
+
collDecimals: b.collDecimals,
|
|
39878
|
+
priceDecimals: b.priceDecimals,
|
|
39809
39879
|
debtToken: debtToken?.toLowerCase()
|
|
39810
39880
|
},
|
|
39811
39881
|
lender: liquityLenderKey(lender, chainId, b.collIndex)
|
|
@@ -39820,8 +39890,12 @@ function parseLiquityResults(data, meta, context) {
|
|
|
39820
39890
|
const entries = [];
|
|
39821
39891
|
const raw = data?.[0];
|
|
39822
39892
|
const price2 = typeof raw === "bigint" ? raw : raw != null && raw !== "0x" ? BigInt(raw) : 0n;
|
|
39823
|
-
const collUSD =
|
|
39824
|
-
|
|
39893
|
+
const collUSD = liquityCollateralPrice(
|
|
39894
|
+
price2,
|
|
39895
|
+
meta.collDecimals,
|
|
39896
|
+
meta.priceDecimals
|
|
39897
|
+
);
|
|
39898
|
+
if (collUSD > 0) {
|
|
39825
39899
|
entries.push({
|
|
39826
39900
|
asset: meta.collToken,
|
|
39827
39901
|
price: collUSD,
|