@1delta/margin-fetcher 0.0.234 → 0.0.235
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/flash-liquidity/fetchLiquidity.d.ts.map +1 -1
- package/dist/index.js +54 -4
- package/dist/index.js.map +1 -1
- package/dist/yields/intrinsic/fetchers/avant.d.ts +5 -0
- package/dist/yields/intrinsic/fetchers/avant.d.ts.map +1 -0
- package/dist/yields/intrinsic/fetchers/lido.d.ts.map +1 -1
- package/dist/yields/intrinsic/index.d.ts.map +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchLiquidity.d.ts","sourceRoot":"","sources":["../../src/flash-liquidity/fetchLiquidity.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D,OAAO,EAAE,uBAAuB,EAAgB,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"fetchLiquidity.d.ts","sourceRoot":"","sources":["../../src/flash-liquidity/fetchLiquidity.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D,OAAO,EAAE,uBAAuB,EAAgB,MAAM,SAAS,CAAA;AA2B/D,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,sBAAsB,EACtC,IAAI,GAAE,SAAc,oCA+PrB"}
|
package/dist/index.js
CHANGED
|
@@ -8,7 +8,7 @@ import { getEvmChain, getEvmClient, getEvmClientUniversal, multicallRetryUnivers
|
|
|
8
8
|
import { MorphoLensAbi, AaveV4SpokeAbi, AaveV4OracleAbi, AaveV4HubAbi, MorphoBlueAbi } from '@1delta/abis';
|
|
9
9
|
export { MorphoLensAbi } from '@1delta/abis';
|
|
10
10
|
import { prepareDebitDataMulticall, prepareLenderDebitMulticall, parseDebitDataResult, parseLenderDebitResult, getPermit2ContractAddress, getCompoundV3CometAddress as getCompoundV3CometAddress$1, getMorphoAddress, getAaveCollateralTokenAddress, getSiloHalfForUnderlying, InitMarginAddresses } from '@1delta/calldata-sdk';
|
|
11
|
-
import { BALANCER_V2_FORKS, BALANCER_V3_FORKS, UNISWAP_V4_FORKS, FLASH_LOAN_IDS } from '@1delta/dex-registry';
|
|
11
|
+
import { BALANCER_V2_FORKS, BALANCER_V3_FORKS, UNISWAP_V4_FORKS, isFlashLoanSourceExcluded, FLASH_LOAN_IDS } from '@1delta/dex-registry';
|
|
12
12
|
|
|
13
13
|
// src/abis/aave-v2/ProtocolDataProvider.ts
|
|
14
14
|
var ProtocolDataProviderAbi = [
|
|
@@ -28634,10 +28634,32 @@ async function getListsMulti(chainIds) {
|
|
|
28634
28634
|
// src/yields/intrinsic/fetchers/lido.ts
|
|
28635
28635
|
var WSTETH_URL = "https://eth-api.lido.fi/v1/protocol/steth/apr/sma";
|
|
28636
28636
|
var tETH = "Treehouse ETH::TETH";
|
|
28637
|
+
var robustFetchJson = async (url, { timeoutMs = 5e3, attempts = 3 } = {}) => {
|
|
28638
|
+
let lastErr;
|
|
28639
|
+
for (let i = 0; i < attempts; i++) {
|
|
28640
|
+
try {
|
|
28641
|
+
const res = await fetch(url, {
|
|
28642
|
+
headers: {
|
|
28643
|
+
accept: "application/json",
|
|
28644
|
+
"user-agent": "1delta-margin-fetcher"
|
|
28645
|
+
},
|
|
28646
|
+
signal: AbortSignal.timeout(timeoutMs)
|
|
28647
|
+
});
|
|
28648
|
+
if (!res.ok) throw new Error(`HTTP ${res.status}`);
|
|
28649
|
+
return await res.json();
|
|
28650
|
+
} catch (e) {
|
|
28651
|
+
lastErr = e;
|
|
28652
|
+
if (i < attempts - 1) {
|
|
28653
|
+
await new Promise((r) => setTimeout(r, 250 * (i + 1)));
|
|
28654
|
+
}
|
|
28655
|
+
}
|
|
28656
|
+
}
|
|
28657
|
+
throw lastErr;
|
|
28658
|
+
};
|
|
28637
28659
|
var wstethFetcher = {
|
|
28638
28660
|
label: "WSTETH",
|
|
28639
28661
|
fetch: async () => {
|
|
28640
|
-
const res = await
|
|
28662
|
+
const res = await robustFetchJson(WSTETH_URL);
|
|
28641
28663
|
const apr = Number(res.data.aprs.at(-1).apr) * 0.9;
|
|
28642
28664
|
return {
|
|
28643
28665
|
WSTETH: apr,
|
|
@@ -29596,6 +29618,29 @@ var infinifiFetcher = {
|
|
|
29596
29618
|
}
|
|
29597
29619
|
};
|
|
29598
29620
|
|
|
29621
|
+
// src/yields/intrinsic/fetchers/avant.ts
|
|
29622
|
+
var AVANT_BASE = "https://app.avantprotocol.com/api/apy";
|
|
29623
|
+
var sAVUSD = "Staked avUSD::savUSD";
|
|
29624
|
+
var sAVETH = "Staked avETH::savETH";
|
|
29625
|
+
var sAVBTC = "Staked avBTC::savBTC";
|
|
29626
|
+
var fetchAvantApr = async (slug) => {
|
|
29627
|
+
const res = await fetch(`${AVANT_BASE}/${slug}`).then((r) => r.json());
|
|
29628
|
+
const apy = Number(res?.apy ?? 0);
|
|
29629
|
+
return apyToAprPercent(apy);
|
|
29630
|
+
};
|
|
29631
|
+
var savusdFetcher = {
|
|
29632
|
+
label: "SAVUSD",
|
|
29633
|
+
fetch: async () => ({ [sAVUSD]: await fetchAvantApr("savusd") })
|
|
29634
|
+
};
|
|
29635
|
+
var savethFetcher = {
|
|
29636
|
+
label: "SAVETH",
|
|
29637
|
+
fetch: async () => ({ [sAVETH]: await fetchAvantApr("saveth") })
|
|
29638
|
+
};
|
|
29639
|
+
var savbtcFetcher = {
|
|
29640
|
+
label: "SAVBTC",
|
|
29641
|
+
fetch: async () => ({ [sAVBTC]: await fetchAvantApr("savbtc") })
|
|
29642
|
+
};
|
|
29643
|
+
|
|
29599
29644
|
// src/yields/intrinsic/index.ts
|
|
29600
29645
|
async function fetchIntrinsicYields() {
|
|
29601
29646
|
const wstethPromise = safeFetch(wstethFetcher.label, wstethFetcher.fetch);
|
|
@@ -29648,7 +29693,10 @@ async function fetchIntrinsicYields() {
|
|
|
29648
29693
|
susdfFetcher,
|
|
29649
29694
|
midasFetcher,
|
|
29650
29695
|
capFetcher,
|
|
29651
|
-
infinifiFetcher
|
|
29696
|
+
infinifiFetcher,
|
|
29697
|
+
savusdFetcher,
|
|
29698
|
+
savethFetcher,
|
|
29699
|
+
savbtcFetcher
|
|
29652
29700
|
];
|
|
29653
29701
|
const results = await Promise.all([
|
|
29654
29702
|
wstethPromise,
|
|
@@ -32285,7 +32333,9 @@ async function fetchFlashLiquidityForChain(chain, multicallRetry, list = {}) {
|
|
|
32285
32333
|
let aaveAssets = {};
|
|
32286
32334
|
let aaveCalls = [];
|
|
32287
32335
|
const aaves = getAavesForChain();
|
|
32288
|
-
const aaveProtocols = aaves[chain] ?? []
|
|
32336
|
+
const aaveProtocols = (aaves[chain] ?? []).filter(
|
|
32337
|
+
(l) => !isFlashLoanSourceExcluded(chain, l)
|
|
32338
|
+
);
|
|
32289
32339
|
const allAaveUnderlyings = [];
|
|
32290
32340
|
aaveProtocols.forEach((aaveFork) => {
|
|
32291
32341
|
const underlyingsAndATokens = Object.entries(
|