@1delta/margin-fetcher 0.0.325 → 0.0.328
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.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +87 -36
- package/dist/index.js.map +1 -1
- package/dist/lending/public-data/midnight/apiClient.d.ts +19 -1
- package/dist/lending/public-data/midnight/apiClient.d.ts.map +1 -1
- package/dist/lending/public-data/midnight/apiClient.test.d.ts +2 -0
- package/dist/lending/public-data/midnight/apiClient.test.d.ts.map +1 -0
- package/dist/lending/public-data/midnight/types.d.ts +17 -0
- package/dist/lending/public-data/midnight/types.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/angle.d.ts +7 -0
- package/dist/yields/intrinsic/fetchers/angle.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/etherfi.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/solv.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/stcelo.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/stella.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/swBTC.d.ts.map +1 -1
- package/dist/yields/intrinsic/fetchers/theo.d.ts.map +1 -1
- package/package.json +5 -5
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ export { getLenderPublicData, getLenderPublicDataViaApi, getLenderPublicDataAll,
|
|
|
2
2
|
export { type PoolWithMeta, generateLendingPools, unflattenLenderData, } from './lending-pools';
|
|
3
3
|
export { fetchGeneralYields, fetchGeneralYieldsByMarketUid } from './yields';
|
|
4
4
|
export { tickToPrice, tickToAprNumber } from './lending/public-data/midnight/math';
|
|
5
|
+
export { createMidnightBookSource, ApiBookSource, DEFAULT_MIDNIGHT_API, } from './lending/public-data/midnight/apiClient';
|
|
6
|
+
export type { MidnightBook, MidnightBookLevel, MidnightBookSource, } from './lending/public-data/midnight/types';
|
|
5
7
|
export { fetchPendlePrices, fetchOraclePrices, selectAssetGroupPrices, type TokenListInput, type FetchOraclePricesOptions, type OraclePriceEntry, type StructuredOraclePrices, type USDPriceMap, type MorphoMarketOverrides, type ListaMarketOverrides, type OracleDiagnostics, type OraclePricesResult, type ChainDiagnostic, type TrackerDiagnostic, type StaleFeedEntry, } from './prices';
|
|
6
8
|
export { getLendersForChain, filterLendersByProtocol, getAavesForChain, getLenderAssets, isCompoundV3, isCompoundV3Type, isInit, isMorphoType, isAaveV3Type, isAaveV2Type, isYLDR, isAaveV32Type, isAaveType, isMultiMarket, createMarketUid, } from './utils';
|
|
7
9
|
export { fetchFlashLiquidityForChain, attachPricesToFlashLiquidity, } from './flash-liquidity';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,sBAAsB,EACtB,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,KAAK,wBAAwB,EAC7B,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,4BAA4B,EAC5B,KAAK,6BAA6B,EAClC,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,sBAAsB,EACtB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,WAAW,EACX,6BAA6B,EAC7B,4BAA4B,EAC5B,mBAAmB,EACnB,+BAA+B,EAC/B,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,4BAA4B,EAE5B,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EAEnB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEnB,wBAAwB,EACxB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,KAAK,YAAY,EACjB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAI5E,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import './chunk-BYTNVMX7.js';
|
|
|
3
3
|
import './chunk-PR4QN5HX.js';
|
|
4
4
|
import { Lender, isAaveType, isCompoundV3, isMultiMarket, isSiloV2Type, isSiloV3Type, isDolomite, isEulerType, isAaveV4Type, isInit, isMorphoType, isCompoundV2Type, isVenusType, isSumerType, AAVE_V3_LENDERS, AAVE_V2_LENDERS, isAaveV2Type, isAaveV32Type, isAaveV3Type, isFluid, isGearboxV3, isMidnight, isYLDR, isCompoundV3Type, isLista, isTectonicType, isKineticType, isBenqiType } from '@1delta/lender-registry';
|
|
5
5
|
export { isAaveType, isAaveV2Type, isAaveV32Type, isAaveV3Type, isCompoundV3, isCompoundV3Type, isInit, isMorphoType, isMultiMarket, isYLDR } from '@1delta/lender-registry';
|
|
6
|
-
import { fetchTokenLists, fetchTokenList, aavePools, compoundV3Pools, initConfig, morphoPools, compoundV2Pools, eulerVaults, siloMarkets, siloV2LenderKey, siloMarketsV3, siloV3LenderKey, aaveV4Spokes, aaveV4SpokeLenderKey, fluidResolvers, gearboxResolvers, dolomiteConfigs, midnightConfig, aaveReserves, compoundV3Reserves, morphoTypeMarkets, getSiloV2MarketEntry, getSiloV3MarketEntry, dolomiteEmode, aaveTokens, morphoTypeVaults, eulerConfigs, gearboxMarketCompressor, gearboxMarketConfigurators, gearboxV3LenderKey, midnightMarketsByChain, parseAaveV4SpokeLenderKey, gearboxAccountCompressor, compoundV2Tokens, aaveOracles, aaveOraclesConfig, compoundV2Oracles, compoundV2TokenArray, compoundV2OraclesConfig, compoundV3OraclesData, compoundV3BaseData, compoundV2Reserves, aaveV4Oracles
|
|
6
|
+
import { fetchTokenLists, fetchTokenList, aavePools, compoundV3Pools, initConfig, morphoPools, compoundV2Pools, eulerVaults, siloMarkets, siloV2LenderKey, siloMarketsV3, siloV3LenderKey, aaveV4Spokes, aaveV4SpokeLenderKey, fluidResolvers, gearboxResolvers, dolomiteConfigs, midnightConfig, aaveReserves, compoundV3Reserves, morphoTypeMarkets, resolveMidnightApiBase, getSiloV2MarketEntry, getSiloV3MarketEntry, dolomiteEmode, aaveTokens, morphoTypeVaults, eulerConfigs, gearboxMarketCompressor, gearboxMarketConfigurators, gearboxV3LenderKey, midnightMarketsByChain, parseAaveV4SpokeLenderKey, gearboxAccountCompressor, compoundV2Tokens, aaveOracles, aaveOraclesConfig, compoundV2Oracles, compoundV2TokenArray, compoundV2OraclesConfig, compoundV3OraclesData, compoundV3BaseData, compoundV2Reserves, aaveV4Oracles } from '@1delta/data-sdk';
|
|
7
7
|
import lodash from 'lodash';
|
|
8
8
|
import { getEvmClient, getEvmChain, getEvmClientUniversal, multicallRetryUniversal } from '@1delta/providers';
|
|
9
9
|
import { MetaMorphoAbi, FluidLendingResolverAbi, FluidVaultResolverAbi, FluidLiquidityResolverAbi, MoolahVaultAbi, MorphoLensAbi, AaveV4SpokeAbi, AaveV4OracleAbi, AaveV4HubAbi, DolomiteMarginAbi, GearboxMarketCompressorV310Abi, MorphoBlueAbi, MidnightAbi, GearboxCreditAccountCompressorV310Abi } from '@1delta/abis';
|
|
@@ -20853,6 +20853,7 @@ var getLenderPublicData = async (chainId, lenders, prices, additionalYields, mul
|
|
|
20853
20853
|
}
|
|
20854
20854
|
return lenderData;
|
|
20855
20855
|
};
|
|
20856
|
+
var DEFAULT_MIDNIGHT_API = "https://api.morpho.org/v0/midnight";
|
|
20856
20857
|
var warn = (...args) => {
|
|
20857
20858
|
};
|
|
20858
20859
|
function midnightApiBaseUrl(chainId) {
|
|
@@ -20904,12 +20905,12 @@ function reduceTop(bids, asks) {
|
|
|
20904
20905
|
};
|
|
20905
20906
|
}
|
|
20906
20907
|
var ApiBookSource = class {
|
|
20908
|
+
baseUrl;
|
|
20909
|
+
fetchImpl;
|
|
20907
20910
|
constructor(baseUrl, fetchImpl = fetch) {
|
|
20908
20911
|
this.baseUrl = baseUrl;
|
|
20909
|
-
this.fetchImpl = fetchImpl;
|
|
20912
|
+
this.fetchImpl = (input, init) => fetchImpl.call(globalThis, input, init);
|
|
20910
20913
|
}
|
|
20911
|
-
baseUrl;
|
|
20912
|
-
fetchImpl;
|
|
20913
20914
|
async getBookTop(marketId) {
|
|
20914
20915
|
const url = `${this.baseUrl}/books/${marketId}`;
|
|
20915
20916
|
try {
|
|
@@ -20928,6 +20929,67 @@ var ApiBookSource = class {
|
|
|
20928
20929
|
return null;
|
|
20929
20930
|
}
|
|
20930
20931
|
}
|
|
20932
|
+
/**
|
|
20933
|
+
* Full ladder for a market — every level per side, best-first (unlike
|
|
20934
|
+
* `getBookTop`, which collapses to the best level + aggregate depth). Same
|
|
20935
|
+
* `GET {base}/books/{marketId}` fetch; empty levels are dropped and each side
|
|
20936
|
+
* is sorted so the best executable offer is first (bids by tick ↓ = cheapest
|
|
20937
|
+
* borrow, asks by tick ↑ = highest lend yield). The caller derives per-level
|
|
20938
|
+
* APR (from tick + TTM) and applies count/size filters.
|
|
20939
|
+
*/
|
|
20940
|
+
async getBook(marketId) {
|
|
20941
|
+
const url = `${this.baseUrl}/books/${marketId}`;
|
|
20942
|
+
try {
|
|
20943
|
+
const res = await this.fetchImpl(url);
|
|
20944
|
+
if (!res.ok) {
|
|
20945
|
+
warn(`book ${marketId} \u2192 HTTP ${res.status}`);
|
|
20946
|
+
return null;
|
|
20947
|
+
}
|
|
20948
|
+
const json = await res.json();
|
|
20949
|
+
const book = json?.data ?? json;
|
|
20950
|
+
const bids = (Array.isArray(book?.bids) ? book.bids.map(parseLevel) : []).filter((l) => l.units > 0n).sort(
|
|
20951
|
+
(a, b) => a.tick < b.tick ? 1 : a.tick > b.tick ? -1 : 0
|
|
20952
|
+
);
|
|
20953
|
+
const asks = (Array.isArray(book?.asks) ? book.asks.map(parseLevel) : []).filter((l) => l.units > 0n).sort(
|
|
20954
|
+
(a, b) => a.tick < b.tick ? -1 : a.tick > b.tick ? 1 : 0
|
|
20955
|
+
);
|
|
20956
|
+
return { bids, asks };
|
|
20957
|
+
} catch (e) {
|
|
20958
|
+
console.error(
|
|
20959
|
+
`[midnight getBook] ${url} threw:`,
|
|
20960
|
+
e?.message ?? e
|
|
20961
|
+
);
|
|
20962
|
+
return null;
|
|
20963
|
+
}
|
|
20964
|
+
}
|
|
20965
|
+
/**
|
|
20966
|
+
* Maker addresses per price level, keyed by tick string. `getBook` levels are
|
|
20967
|
+
* aggregated by tick and carry NO maker (a level can be several makers), so
|
|
20968
|
+
* this reads the individual offers from the `{side}/quote` endpoint (which the
|
|
20969
|
+
* book endpoint lacks) and groups their makers by tick. `assets` should be the
|
|
20970
|
+
* book's total depth so the quote returns EVERY offer (it returns none when the
|
|
20971
|
+
* target exceeds depth). Best-effort: `{}` on any failure.
|
|
20972
|
+
*/
|
|
20973
|
+
async getOfferMakers(marketId, side, assets) {
|
|
20974
|
+
const map = {};
|
|
20975
|
+
const url = `${this.baseUrl}/books/${marketId}/${side}/quote?assets=${assets}`;
|
|
20976
|
+
try {
|
|
20977
|
+
const res = await this.fetchImpl(url);
|
|
20978
|
+
if (!res.ok) return map;
|
|
20979
|
+
const json = await res.json();
|
|
20980
|
+
const d = json?.data ?? json;
|
|
20981
|
+
const takeable = Array.isArray(d?.takeable_offers) ? d.takeable_offers : [];
|
|
20982
|
+
for (const t of takeable) {
|
|
20983
|
+
const offer = t?.offer ?? {};
|
|
20984
|
+
const tick = String(offer?.tick ?? "");
|
|
20985
|
+
const maker = String(offer?.maker ?? "").toLowerCase();
|
|
20986
|
+
if (!tick || !/^0x[0-9a-f]{40}$/.test(maker)) continue;
|
|
20987
|
+
(map[tick] ??= []).push(maker);
|
|
20988
|
+
}
|
|
20989
|
+
} catch {
|
|
20990
|
+
}
|
|
20991
|
+
return map;
|
|
20992
|
+
}
|
|
20931
20993
|
};
|
|
20932
20994
|
function createMidnightBookSource(chainId, fetchImpl = fetch) {
|
|
20933
20995
|
return new ApiBookSource(midnightApiBaseUrl(chainId), fetchImpl);
|
|
@@ -31946,7 +32008,9 @@ var ebtcFetcher = {
|
|
|
31946
32008
|
label: "EBTC",
|
|
31947
32009
|
fetch: async () => {
|
|
31948
32010
|
const res = await fetch(EBTC_URL).then((r) => r.json());
|
|
31949
|
-
return {
|
|
32011
|
+
return {
|
|
32012
|
+
"Ether fi Staked BTC::EBTC": apyToApr(Number(res?.Response?.apy) || 0) * 100
|
|
32013
|
+
};
|
|
31950
32014
|
}
|
|
31951
32015
|
};
|
|
31952
32016
|
|
|
@@ -32061,9 +32125,9 @@ var swBtcFetcher = {
|
|
|
32061
32125
|
label: "SWBTC",
|
|
32062
32126
|
fetch: async () => {
|
|
32063
32127
|
try {
|
|
32064
|
-
return { SWBTC: await computeApr() };
|
|
32128
|
+
return { "Swell Restaked BTC::SWBTC": await computeApr() };
|
|
32065
32129
|
} catch {
|
|
32066
|
-
return { SWBTC: 0 };
|
|
32130
|
+
return { "Swell Restaked BTC::SWBTC": 0 };
|
|
32067
32131
|
}
|
|
32068
32132
|
}
|
|
32069
32133
|
};
|
|
@@ -32371,7 +32435,7 @@ var stceloFetcher = {
|
|
|
32371
32435
|
label: "STCELO",
|
|
32372
32436
|
fetch: async () => {
|
|
32373
32437
|
const apr = await computeApr2();
|
|
32374
|
-
return {
|
|
32438
|
+
return { "Staked CELO::stCELO": apr };
|
|
32375
32439
|
}
|
|
32376
32440
|
};
|
|
32377
32441
|
|
|
@@ -32867,7 +32931,7 @@ var stDotFetcher = {
|
|
|
32867
32931
|
label: "STDOT",
|
|
32868
32932
|
fetch: async () => {
|
|
32869
32933
|
const apr = await computeApr6();
|
|
32870
|
-
return { STDOT: apr };
|
|
32934
|
+
return { "StellaSwap Staked DOT::STDOT": apr };
|
|
32871
32935
|
}
|
|
32872
32936
|
};
|
|
32873
32937
|
|
|
@@ -32882,7 +32946,7 @@ var solvBtcPlusFetcher = {
|
|
|
32882
32946
|
const base = Number(res?.baseApy);
|
|
32883
32947
|
const reward = Number(res?.rewardApy);
|
|
32884
32948
|
const apr = (Number.isFinite(base) ? base : 0) + (Number.isFinite(reward) ? reward : 0);
|
|
32885
|
-
return {
|
|
32949
|
+
return { SOLVBTCPLUS: apr };
|
|
32886
32950
|
}
|
|
32887
32951
|
};
|
|
32888
32952
|
var STCORE_KEY = "Liquid staked CORE::stCORE";
|
|
@@ -33502,7 +33566,7 @@ var LST_REGISTRY = {
|
|
|
33502
33566
|
mintInputAsset: "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
|
|
33503
33567
|
withdrawalMode: "queued",
|
|
33504
33568
|
yieldFetcher: swBtcFetcher,
|
|
33505
|
-
yieldKey: "SWBTC"
|
|
33569
|
+
yieldKey: "Swell Restaked BTC::SWBTC"
|
|
33506
33570
|
},
|
|
33507
33571
|
{
|
|
33508
33572
|
// Lombard LBTC — non-rebasing, accruing exchange rate via
|
|
@@ -33542,7 +33606,7 @@ var LST_REGISTRY = {
|
|
|
33542
33606
|
vedaAccountant: "0x1b293DC39F94157fA0D1D36d7e0090C8B8B8c13F"
|
|
33543
33607
|
},
|
|
33544
33608
|
yieldFetcher: ebtcFetcher,
|
|
33545
|
-
yieldKey: "EBTC"
|
|
33609
|
+
yieldKey: "Ether fi Staked BTC::EBTC"
|
|
33546
33610
|
},
|
|
33547
33611
|
{
|
|
33548
33612
|
// Bedrock uniBTC — flat 1:1 (no on-chain rate; verified). The
|
|
@@ -33666,7 +33730,7 @@ var LST_REGISTRY = {
|
|
|
33666
33730
|
mintInputAsset: "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
|
|
33667
33731
|
withdrawalMode: "queued",
|
|
33668
33732
|
yieldFetcher: solvBtcPlusFetcher,
|
|
33669
|
-
yieldKey: "
|
|
33733
|
+
yieldKey: "SOLVBTCPLUS"
|
|
33670
33734
|
},
|
|
33671
33735
|
{
|
|
33672
33736
|
// Lombard LBTCv — Veda BoringVault DeFi vault over LBTC ("Bitcoin Earn",
|
|
@@ -33930,7 +33994,7 @@ var LST_REGISTRY = {
|
|
|
33930
33994
|
// archival Celo RPC; falls back to 0 otherwise. See
|
|
33931
33995
|
// `yields/intrinsic/fetchers/stcelo.ts`.
|
|
33932
33996
|
yieldFetcher: stceloFetcher,
|
|
33933
|
-
yieldKey: "
|
|
33997
|
+
yieldKey: "Staked CELO::stCELO",
|
|
33934
33998
|
readerExtras: {
|
|
33935
33999
|
stceloManager: "0x0239b96d10a434a56cc9e09383077a0490cf9398"
|
|
33936
34000
|
}
|
|
@@ -34357,7 +34421,7 @@ var LST_REGISTRY = {
|
|
|
34357
34421
|
// window to smooth to the realised ~9% (public Moonbeam RPCs serve
|
|
34358
34422
|
// the deep archival reads; falls back to 0 if none do).
|
|
34359
34423
|
yieldFetcher: stDotFetcher,
|
|
34360
|
-
yieldKey: "STDOT"
|
|
34424
|
+
yieldKey: "StellaSwap Staked DOT::STDOT"
|
|
34361
34425
|
}
|
|
34362
34426
|
]
|
|
34363
34427
|
};
|
|
@@ -34432,22 +34496,14 @@ var yusdFetcher = {
|
|
|
34432
34496
|
};
|
|
34433
34497
|
|
|
34434
34498
|
// src/yields/intrinsic/fetchers/angle.ts
|
|
34435
|
-
var ANGLE_URL = "https://exporter.angle.money/v2/savingsApr";
|
|
34436
34499
|
var stUSD = "Angle Staked USDA::stUSD";
|
|
34437
34500
|
var stEur = "Angle Staked EURA::stEUR";
|
|
34438
34501
|
var angleFetcher = {
|
|
34439
34502
|
label: "ANGLE",
|
|
34440
|
-
fetch: async () => {
|
|
34441
|
-
|
|
34442
|
-
|
|
34443
|
-
|
|
34444
|
-
ANGLE_URL + `?from=${nowMinusWeek}&to=${now}`
|
|
34445
|
-
).then((r) => r.json());
|
|
34446
|
-
return {
|
|
34447
|
-
[stEur]: apyToAprPercent(res.EURA) * 100,
|
|
34448
|
-
[stUSD]: apyToAprPercent(res.USDA) * 100
|
|
34449
|
-
};
|
|
34450
|
-
}
|
|
34503
|
+
fetch: async () => ({
|
|
34504
|
+
[stEur]: 0,
|
|
34505
|
+
[stUSD]: 0
|
|
34506
|
+
})
|
|
34451
34507
|
};
|
|
34452
34508
|
|
|
34453
34509
|
// src/yields/intrinsic/fetchers/falcon.ts
|
|
@@ -35095,18 +35151,13 @@ var jitoSolFetcher = {
|
|
|
35095
35151
|
};
|
|
35096
35152
|
|
|
35097
35153
|
// src/yields/intrinsic/fetchers/theo.ts
|
|
35098
|
-
var THBILL_URL = "https://thbill-api.theo.xyz/snapshots";
|
|
35099
35154
|
var thBill = "Theo Short Duration US Treasury Fund::THBILL";
|
|
35155
|
+
var THBILL_DEFILLAMA_POOL = "e17dab50-85b1-45e8-b4a5-b8ae7898c4a3";
|
|
35100
35156
|
var thbillFetcher = {
|
|
35101
35157
|
label: "THBILL",
|
|
35102
35158
|
fetch: async () => {
|
|
35103
|
-
const
|
|
35104
|
-
|
|
35105
|
-
(a) => Object.entries(a)
|
|
35106
|
-
);
|
|
35107
|
-
const total = entrs.reduce((acc, b) => acc + Number(b[1]), 0);
|
|
35108
|
-
const val = entrs.filter((a) => a[0] === "ULTRA").reduce((acc, b) => acc + Number(b[1]), 0);
|
|
35109
|
-
return { [thBill]: val / total * 4.5 };
|
|
35159
|
+
const apy = await fetchDefiLlamaApy(THBILL_DEFILLAMA_POOL);
|
|
35160
|
+
return { [thBill]: apyToAprPercent(apy) };
|
|
35110
35161
|
}
|
|
35111
35162
|
};
|
|
35112
35163
|
|
|
@@ -49429,6 +49480,6 @@ async function fetchTokenBalances(chainId, account, tokens, options = {}) {
|
|
|
49429
49480
|
return parseTokenBalanceResult(rawResult, prepared.query);
|
|
49430
49481
|
}
|
|
49431
49482
|
|
|
49432
|
-
export { EMPTY_BALANCE, GMX_API_HOSTS, GMX_READ_CONTRACTS, GMX_SUPPORTED_CHAINS, HYPERCORE_VAULT_REGISTRY, IDLE_MARKET_ID, INTERFACE_IDS, LAGOON_API_URL, LAGOON_CHAIN_IDS, MORPHO_LENS, MaxParamThresholds, STABLECOIN_SYMBOLS, STCELO_MANAGER_ADDRESS, UPSHIFT_CHAIN_IDS, UPSHIFT_VAULTS_URL, VAULT_SHARE_PRICE_PROBE, VOLATILE_VAULT_OVERRIDES, YEARN_CHAIN_IDS, YEARN_YDAEMON_BASE, accountDepositListKey, accountWithdrawalListKey, appendSnapshot, applyPositionDelta, attachPricesToFlashLiquidity, buildFluidFTokensCall, buildLoopResult, buildMorphoTypeCall, buildMorphoTypeUserCallWithLens, buildPortfolioTotals, buildSumerAccumulators, buildSummaries, buildVaultLookup, calculateLeverage, calculateNetApr, calculateOverallNetApr, calculateWeightedAverage, classifyVault, computeBorrowDelta2 as computeBorrowDelta, computeCloseTradeDeltas, computeCollateralSwapDeltas, computeDebtSwapDeltas, computeDepositDelta2 as computeDepositDelta, computeEModeAnalysis, computeOpenTradeDeltas, computePostTradeMetrics, computeRepayDelta2 as computeRepayDelta, computeSumerBorrowDelta, computeSumerDepositDelta, computeSumerRepayDelta, computeSumerWaterfall, computeSumerWithdrawDelta, computeVaultApr, computeWithdrawDelta2 as computeWithdrawDelta, computeZapTradeDeltas, convertLenderUserDataResult, createMarketUid, createMulticallRpcCall, createRawRpcCalls, decodeListaMarkets, decodeMarkets, decodePackedListaUserDataset, decodePackedMorphoUserDataset, detectInterfaceKinds, encodeBalanceFetcherCalldata, fetchDolomiteAccountNumbers, fetchEulerEarnVaults, fetchEulerEarnVaultsFromSubgraph, fetchEulerSubAccountIndexes, fetchFlashLiquidityForChain, fetchFluidFTokens, fetchGeneralYields, fetchGeneralYieldsByMarketUid, fetchGmxExecutionFees, fetchGmxTickerPrices, fetchGmxVaults, fetchHypercoreVaults, fetchLagoonApiVaults, fetchLagoonVaults, fetchListaVaultsFromChain, fetchMorphoUserBalances, fetchMorphoUserPositionMarkets, fetchMorphoVaults, fetchMorphoVaultsFromApi, fetchMorphoVaultsFromChain, fetchOraclePrices, fetchPendlePrices, fetchSiloVaults, fetchTokenBalances, fetchTokenMetadata, fetchUpshiftApiVaults, fetchUpshiftVaults, fetchYearnApiVaults, fetchYearnVaults, filterActiveLenders, filterLendersByProtocol, fuseLenderData, generateLendingPools, getAavesForChain, getAssetConfig, getBalanceForMarketUid, getBorrowCapacity, getCoreValidators, getFluidFTokensConverter, getGmxApiHost, getGmxReadContracts, getGmxUserPositions, getHealthFactor, getHypercoreUserPositions, getHypercoreVaultRegistry, getLenderAssets, getLenderPublicData, getLenderPublicDataAll, getLenderPublicDataViaApi, getLenderUserDataMulti, getLenderUserDataResult, getLendersForChain, getLstDelegation, getLstValidators, getLstWithdrawalRegistry, getLstWithdrawalRequests, getMaxAmountClose, getMaxAmountCollateralSwap, getMaxAmountDebtSwap, getMaxAmountOpen, getMergedUserData, getMorphoTypeMarketConverter, getResolvedDolomiteAccountNumbers, getStCeloValidatorGroups, getSubAccountAddress, getSubAccountIndex, getVaultPublicDataAll, getVaultWithdrawalRequests, hasEulerEarnVaultSubgraph, hasLagoonVaults, hasMorphoPositionIndex, hasMorphoUserApi, hasMorphoUserSubgraph, hasUpshiftVaults, hasYearnVaults, isStablecoinSymbol, isYearnV3, keysFromMaps, multicall3Abi, nanTo, needsLenderApproval, needsTokenApproval, noOpResult, normalizeToBytes, parseBalanceFetcherResult, parseMergedResult, parseMulticallRpcResponses, parseRawRpcBatchResponses, parseRawRpcResponses, parseTokenBalanceResult, positivePart2 as positivePart, prepareLenderUserDataRpcCalls, prepareMergedMulticallParams, prepareMergedRpcCalls, prepareMulticallInputs, prepareTokenBalanceRpcCalls, priceGlvVaults, priceGmMarkets, readVaultSharePrices, resolveStCeloDepositGroup, selectAssetGroupPrices, stampVaultClassification, tickToAprNumber, tickToPrice, unflattenLenderData };
|
|
49483
|
+
export { ApiBookSource, DEFAULT_MIDNIGHT_API, EMPTY_BALANCE, GMX_API_HOSTS, GMX_READ_CONTRACTS, GMX_SUPPORTED_CHAINS, HYPERCORE_VAULT_REGISTRY, IDLE_MARKET_ID, INTERFACE_IDS, LAGOON_API_URL, LAGOON_CHAIN_IDS, MORPHO_LENS, MaxParamThresholds, STABLECOIN_SYMBOLS, STCELO_MANAGER_ADDRESS, UPSHIFT_CHAIN_IDS, UPSHIFT_VAULTS_URL, VAULT_SHARE_PRICE_PROBE, VOLATILE_VAULT_OVERRIDES, YEARN_CHAIN_IDS, YEARN_YDAEMON_BASE, accountDepositListKey, accountWithdrawalListKey, appendSnapshot, applyPositionDelta, attachPricesToFlashLiquidity, buildFluidFTokensCall, buildLoopResult, buildMorphoTypeCall, buildMorphoTypeUserCallWithLens, buildPortfolioTotals, buildSumerAccumulators, buildSummaries, buildVaultLookup, calculateLeverage, calculateNetApr, calculateOverallNetApr, calculateWeightedAverage, classifyVault, computeBorrowDelta2 as computeBorrowDelta, computeCloseTradeDeltas, computeCollateralSwapDeltas, computeDebtSwapDeltas, computeDepositDelta2 as computeDepositDelta, computeEModeAnalysis, computeOpenTradeDeltas, computePostTradeMetrics, computeRepayDelta2 as computeRepayDelta, computeSumerBorrowDelta, computeSumerDepositDelta, computeSumerRepayDelta, computeSumerWaterfall, computeSumerWithdrawDelta, computeVaultApr, computeWithdrawDelta2 as computeWithdrawDelta, computeZapTradeDeltas, convertLenderUserDataResult, createMarketUid, createMidnightBookSource, createMulticallRpcCall, createRawRpcCalls, decodeListaMarkets, decodeMarkets, decodePackedListaUserDataset, decodePackedMorphoUserDataset, detectInterfaceKinds, encodeBalanceFetcherCalldata, fetchDolomiteAccountNumbers, fetchEulerEarnVaults, fetchEulerEarnVaultsFromSubgraph, fetchEulerSubAccountIndexes, fetchFlashLiquidityForChain, fetchFluidFTokens, fetchGeneralYields, fetchGeneralYieldsByMarketUid, fetchGmxExecutionFees, fetchGmxTickerPrices, fetchGmxVaults, fetchHypercoreVaults, fetchLagoonApiVaults, fetchLagoonVaults, fetchListaVaultsFromChain, fetchMorphoUserBalances, fetchMorphoUserPositionMarkets, fetchMorphoVaults, fetchMorphoVaultsFromApi, fetchMorphoVaultsFromChain, fetchOraclePrices, fetchPendlePrices, fetchSiloVaults, fetchTokenBalances, fetchTokenMetadata, fetchUpshiftApiVaults, fetchUpshiftVaults, fetchYearnApiVaults, fetchYearnVaults, filterActiveLenders, filterLendersByProtocol, fuseLenderData, generateLendingPools, getAavesForChain, getAssetConfig, getBalanceForMarketUid, getBorrowCapacity, getCoreValidators, getFluidFTokensConverter, getGmxApiHost, getGmxReadContracts, getGmxUserPositions, getHealthFactor, getHypercoreUserPositions, getHypercoreVaultRegistry, getLenderAssets, getLenderPublicData, getLenderPublicDataAll, getLenderPublicDataViaApi, getLenderUserDataMulti, getLenderUserDataResult, getLendersForChain, getLstDelegation, getLstValidators, getLstWithdrawalRegistry, getLstWithdrawalRequests, getMaxAmountClose, getMaxAmountCollateralSwap, getMaxAmountDebtSwap, getMaxAmountOpen, getMergedUserData, getMorphoTypeMarketConverter, getResolvedDolomiteAccountNumbers, getStCeloValidatorGroups, getSubAccountAddress, getSubAccountIndex, getVaultPublicDataAll, getVaultWithdrawalRequests, hasEulerEarnVaultSubgraph, hasLagoonVaults, hasMorphoPositionIndex, hasMorphoUserApi, hasMorphoUserSubgraph, hasUpshiftVaults, hasYearnVaults, isStablecoinSymbol, isYearnV3, keysFromMaps, multicall3Abi, nanTo, needsLenderApproval, needsTokenApproval, noOpResult, normalizeToBytes, parseBalanceFetcherResult, parseMergedResult, parseMulticallRpcResponses, parseRawRpcBatchResponses, parseRawRpcResponses, parseTokenBalanceResult, positivePart2 as positivePart, prepareLenderUserDataRpcCalls, prepareMergedMulticallParams, prepareMergedRpcCalls, prepareMulticallInputs, prepareTokenBalanceRpcCalls, priceGlvVaults, priceGmMarkets, readVaultSharePrices, resolveStCeloDepositGroup, selectAssetGroupPrices, stampVaultClassification, tickToAprNumber, tickToPrice, unflattenLenderData };
|
|
49433
49484
|
//# sourceMappingURL=index.js.map
|
|
49434
49485
|
//# sourceMappingURL=index.js.map
|