@1delta/margin-fetcher 0.0.176 → 0.0.178
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 +134 -50
- package/dist/index.js.map +1 -1
- package/dist/lending/margin/loop/index.d.ts +1 -0
- package/dist/lending/margin/loop/index.d.ts.map +1 -1
- package/dist/lending/margin/loop/ranges/getMaxAmountOpen.d.ts +30 -0
- package/dist/lending/margin/loop/ranges/getMaxAmountOpen.d.ts.map +1 -0
- package/dist/lending/margin/loop/ranges/index.d.ts +2 -0
- package/dist/lending/margin/loop/ranges/index.d.ts.map +1 -0
- package/dist/lending/public-data/compound-v3/publicCallParse.d.ts.map +1 -1
- package/dist/lending/public-data/euler/fetcher/normalize.d.ts.map +1 -1
- package/dist/lending/user-data/euler/userCallBuild.d.ts +35 -5
- package/dist/lending/user-data/euler/userCallBuild.d.ts.map +1 -1
- package/dist/lending/user-data/euler/userCallParse.d.ts +9 -1
- package/dist/lending/user-data/euler/userCallParse.d.ts.map +1 -1
- package/dist/lending/user-data/fetch-balances/e2e.d.ts +2 -3
- package/dist/lending/user-data/fetch-balances/e2e.d.ts.map +1 -1
- package/dist/lending/user-data/fetch-balances/prepare.d.ts +2 -1
- package/dist/lending/user-data/fetch-balances/prepare.d.ts.map +1 -1
- package/dist/lending/user-data/utils/createEulerMultiAccountTypeUserState.d.ts +9 -6
- package/dist/lending/user-data/utils/createEulerMultiAccountTypeUserState.d.ts.map +1 -1
- package/dist/lending/user-data/with-permissions/prepare.d.ts +2 -2
- package/dist/lending/user-data/with-permissions/prepare.d.ts.map +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -7485,7 +7485,8 @@ var DISABLED_COMPOUNDS = {
|
|
|
7485
7485
|
[Chain.ETHEREUM_MAINNET]: [Lender.CREAM_FINANCE]
|
|
7486
7486
|
};
|
|
7487
7487
|
var ENABLED_EULER_V2_CHAINS = [
|
|
7488
|
-
Chain.BNB_SMART_CHAIN_MAINNET
|
|
7488
|
+
Chain.BNB_SMART_CHAIN_MAINNET,
|
|
7489
|
+
Chain.PLASMA_MAINNET
|
|
7489
7490
|
];
|
|
7490
7491
|
var getLendersForChain = (c) => {
|
|
7491
7492
|
let lenders = [];
|
|
@@ -17513,6 +17514,18 @@ function buildTokenConfig(vaultAddr, reverseLTV, borrowVaults, vaultData) {
|
|
|
17513
17514
|
borrowFactor: 1
|
|
17514
17515
|
};
|
|
17515
17516
|
}
|
|
17517
|
+
if (borrowVaults.has(vaultAddr) && !config[vaultAddr]) {
|
|
17518
|
+
const selfInfo = findInfo(vaultAddr, vaultData);
|
|
17519
|
+
config[vaultAddr] = {
|
|
17520
|
+
category: vaultAddr,
|
|
17521
|
+
label: selfInfo?.vaultName ?? vaultAddr,
|
|
17522
|
+
borrowCollateralFactor: 0,
|
|
17523
|
+
collateralFactor: 0,
|
|
17524
|
+
borrowFactor: 1,
|
|
17525
|
+
debtDisabled: false,
|
|
17526
|
+
collateralDisabled: true
|
|
17527
|
+
};
|
|
17528
|
+
}
|
|
17516
17529
|
return config;
|
|
17517
17530
|
}
|
|
17518
17531
|
function buildEModes(borrowVaults, cluster) {
|
|
@@ -18249,7 +18262,83 @@ function createCompoundV2Entry(i, data, key, assetsIn, vToken, meta, claimableRe
|
|
|
18249
18262
|
}
|
|
18250
18263
|
|
|
18251
18264
|
// src/lending/user-data/euler/userCallBuild.ts
|
|
18252
|
-
|
|
18265
|
+
Array.from(
|
|
18266
|
+
{ length: 256 },
|
|
18267
|
+
(_2, i) => i
|
|
18268
|
+
);
|
|
18269
|
+
var EULER_SUBGRAPH_BASE = "https://api.goldsky.com/api/public/project_cm4iagnemt1wp01xn4gh1agft/subgraphs";
|
|
18270
|
+
var EULER_SUBGRAPH_URLS = {
|
|
18271
|
+
"1": `${EULER_SUBGRAPH_BASE}/euler-v2-mainnet/latest/gn`,
|
|
18272
|
+
"10": `${EULER_SUBGRAPH_BASE}/euler-v2-optimism/latest/gn`,
|
|
18273
|
+
"56": `${EULER_SUBGRAPH_BASE}/euler-v2-bsc/latest/gn`,
|
|
18274
|
+
"100": `${EULER_SUBGRAPH_BASE}/euler-v2-gnosis/latest/gn`,
|
|
18275
|
+
"130": `${EULER_SUBGRAPH_BASE}/euler-v2-unichain/latest/gn`,
|
|
18276
|
+
"146": `${EULER_SUBGRAPH_BASE}/euler-v2-sonic/latest/gn`,
|
|
18277
|
+
"239": `${EULER_SUBGRAPH_BASE}/euler-v2-tac/latest/gn`,
|
|
18278
|
+
"480": `${EULER_SUBGRAPH_BASE}/euler-v2-worldchain/latest/gn`,
|
|
18279
|
+
"999": `${EULER_SUBGRAPH_BASE}/euler-v2-hyperevm/latest/gn`,
|
|
18280
|
+
"1923": `${EULER_SUBGRAPH_BASE}/euler-v2-swell/latest/gn`,
|
|
18281
|
+
"5000": `${EULER_SUBGRAPH_BASE}/euler-v2-mantle/latest/gn`,
|
|
18282
|
+
"8453": `${EULER_SUBGRAPH_BASE}/euler-v2-base/latest/gn`,
|
|
18283
|
+
"9745": `${EULER_SUBGRAPH_BASE}/euler-v2-plasma/latest/gn`,
|
|
18284
|
+
"42161": `${EULER_SUBGRAPH_BASE}/euler-v2-arbitrum/latest/gn`,
|
|
18285
|
+
"43114": `${EULER_SUBGRAPH_BASE}/euler-v2-avalanche/latest/gn`,
|
|
18286
|
+
"57073": `${EULER_SUBGRAPH_BASE}/euler-v2-ink/latest/gn`,
|
|
18287
|
+
"60808": `${EULER_SUBGRAPH_BASE}/euler-v2-bob/latest/gn`,
|
|
18288
|
+
"80094": `${EULER_SUBGRAPH_BASE}/euler-v2-berachain/latest/gn`
|
|
18289
|
+
};
|
|
18290
|
+
var SUBGRAPH_CACHE_TTL_MS = 3e4;
|
|
18291
|
+
var subgraphCache = /* @__PURE__ */ new Map();
|
|
18292
|
+
function fetchEulerSubAccountIndexes(chainId, owner) {
|
|
18293
|
+
const key = `${chainId}:${owner.toLowerCase()}`;
|
|
18294
|
+
const cached = subgraphCache.get(key);
|
|
18295
|
+
if (cached) return cached.promise;
|
|
18296
|
+
const promise = fetchSubAccountsFromSubgraph(chainId, owner).then((idxs) => idxs.length > 0 ? idxs : [0]).catch(() => [0]);
|
|
18297
|
+
const timer = setTimeout(
|
|
18298
|
+
() => subgraphCache.delete(key),
|
|
18299
|
+
SUBGRAPH_CACHE_TTL_MS
|
|
18300
|
+
);
|
|
18301
|
+
subgraphCache.set(key, { promise, timer });
|
|
18302
|
+
return promise;
|
|
18303
|
+
}
|
|
18304
|
+
async function fetchSubAccountsFromSubgraph(chainId, owner) {
|
|
18305
|
+
const url = EULER_SUBGRAPH_URLS[chainId];
|
|
18306
|
+
if (!url) return [0];
|
|
18307
|
+
const query2 = `{
|
|
18308
|
+
accounts(first: 100, where: { owner: "${owner.toLowerCase()}" }) {
|
|
18309
|
+
id
|
|
18310
|
+
subAccount
|
|
18311
|
+
}
|
|
18312
|
+
}`;
|
|
18313
|
+
const response = await fetch(url, {
|
|
18314
|
+
method: "POST",
|
|
18315
|
+
headers: { "Content-Type": "application/json" },
|
|
18316
|
+
body: JSON.stringify({ query: query2 })
|
|
18317
|
+
});
|
|
18318
|
+
if (!response.ok) return [0];
|
|
18319
|
+
const data = await response.json();
|
|
18320
|
+
const accounts = data?.data?.accounts;
|
|
18321
|
+
if (!accounts || accounts.length === 0) return [0];
|
|
18322
|
+
return accounts.map((a) => {
|
|
18323
|
+
const addr = a.subAccount || a.id;
|
|
18324
|
+
return getSubAccountIndex(addr);
|
|
18325
|
+
});
|
|
18326
|
+
}
|
|
18327
|
+
var RESOLVED_STORE_TTL_MS = 6e4;
|
|
18328
|
+
var resolvedIndexesStore = /* @__PURE__ */ new Map();
|
|
18329
|
+
function getResolvedEulerSubAccountIndexes(chainId, account) {
|
|
18330
|
+
return resolvedIndexesStore.get(`${chainId}:${account.toLowerCase()}`)?.indexes;
|
|
18331
|
+
}
|
|
18332
|
+
function storeResolvedIndexes(chainId, account, indexes) {
|
|
18333
|
+
const key = `${chainId}:${account.toLowerCase()}`;
|
|
18334
|
+
const existing = resolvedIndexesStore.get(key);
|
|
18335
|
+
if (existing) clearTimeout(existing.timer);
|
|
18336
|
+
const timer = setTimeout(
|
|
18337
|
+
() => resolvedIndexesStore.delete(key),
|
|
18338
|
+
RESOLVED_STORE_TTL_MS
|
|
18339
|
+
);
|
|
18340
|
+
resolvedIndexesStore.set(key, { indexes, timer });
|
|
18341
|
+
}
|
|
18253
18342
|
function getSubAccountAddress(owner, index) {
|
|
18254
18343
|
const prefix = owner.slice(0, 40);
|
|
18255
18344
|
const suffix = index.toString(16).padStart(2, "0");
|
|
@@ -18258,20 +18347,23 @@ function getSubAccountAddress(owner, index) {
|
|
|
18258
18347
|
function getSubAccountIndex(addr) {
|
|
18259
18348
|
return parseInt(addr.slice(40), 16);
|
|
18260
18349
|
}
|
|
18261
|
-
|
|
18350
|
+
function resolveSubAccountIndexes(account, subAccountIndexes) {
|
|
18351
|
+
const ownerIndex = getSubAccountIndex(account);
|
|
18352
|
+
const indices = new Set(subAccountIndexes);
|
|
18353
|
+
indices.add(ownerIndex);
|
|
18354
|
+
return [...indices].sort((a, b) => a - b);
|
|
18355
|
+
}
|
|
18356
|
+
var buildEulerUserCall = async (chainId, lender, account, subAccountIndexes) => {
|
|
18357
|
+
console.log("subAccountIndexes", subAccountIndexes);
|
|
18262
18358
|
if (!ENABLED_EULER_V2_CHAINS.includes(chainId)) return [];
|
|
18263
18359
|
const config = eulerConfigs()?.[lender]?.[chainId];
|
|
18264
18360
|
if (!config) return [];
|
|
18265
18361
|
const accountLensAddress = config.accountLens;
|
|
18266
18362
|
const evcAddress = config.evc;
|
|
18267
18363
|
if (!accountLensAddress || !evcAddress) return [];
|
|
18268
|
-
const
|
|
18269
|
-
const
|
|
18270
|
-
|
|
18271
|
-
for (let i = 0; indices.size < maxSubAccounts && i < 256; i++) {
|
|
18272
|
-
indices.add(i);
|
|
18273
|
-
}
|
|
18274
|
-
const sortedIndices = [...indices].sort((a, b) => a - b);
|
|
18364
|
+
const indexes = subAccountIndexes ?? await fetchEulerSubAccountIndexes(chainId, account);
|
|
18365
|
+
const sortedIndices = resolveSubAccountIndexes(account, indexes);
|
|
18366
|
+
storeResolvedIndexes(chainId, account, indexes);
|
|
18275
18367
|
return sortedIndices.map((i) => ({
|
|
18276
18368
|
address: accountLensAddress,
|
|
18277
18369
|
name: "getAccountEnabledVaultsInfo",
|
|
@@ -18280,7 +18372,7 @@ var buildEulerUserCall = (chainId, lender, account, maxSubAccounts = DEFAULT_MAX
|
|
|
18280
18372
|
};
|
|
18281
18373
|
|
|
18282
18374
|
// src/lending/user-data/fetch-balances/prepare.ts
|
|
18283
|
-
function buildUserCall(chainId, lender, account, params) {
|
|
18375
|
+
async function buildUserCall(chainId, lender, account, params) {
|
|
18284
18376
|
if (isAaveV2Type(lender)) return buildAaveV2UserCall(chainId, lender, account);
|
|
18285
18377
|
if (isAaveV3Type(lender)) return buildAaveV3UserCall(chainId, lender, account);
|
|
18286
18378
|
if (isInit(lender)) return buildInitUserCall(chainId, lender, account);
|
|
@@ -18289,7 +18381,7 @@ function buildUserCall(chainId, lender, account, params) {
|
|
|
18289
18381
|
if (isCompoundV3Type(lender))
|
|
18290
18382
|
return buildCompoundV3UserCall(chainId, lender, account);
|
|
18291
18383
|
if (isEulerType(lender))
|
|
18292
|
-
return buildEulerUserCall(chainId, lender, account);
|
|
18384
|
+
return buildEulerUserCall(chainId, lender, account, params?.subAccountIndexes);
|
|
18293
18385
|
return buildCompoundV2UserCall(chainId, lender, account);
|
|
18294
18386
|
}
|
|
18295
18387
|
function organizeUserQueries(queries) {
|
|
@@ -19172,16 +19264,16 @@ function createMorphoEntryFromMarketWithLens(balanceInfo, metaMap, chainId, lend
|
|
|
19172
19264
|
|
|
19173
19265
|
// src/lending/user-data/utils/createEulerMultiAccountTypeUserState.ts
|
|
19174
19266
|
function createEulerMultiAccountTypeUserState(payload, lenderData, histData) {
|
|
19175
|
-
const
|
|
19267
|
+
const subAccountIndexes = Object.keys(payload.lendingPositions ?? {});
|
|
19176
19268
|
const marketUids = getMarketUidsFromMeta(lenderData);
|
|
19177
19269
|
const { chainId, account } = payload;
|
|
19178
19270
|
const data = [];
|
|
19179
|
-
for (let j = 0; j <
|
|
19180
|
-
const
|
|
19181
|
-
const controller = payload.controllers?.[
|
|
19271
|
+
for (let j = 0; j < subAccountIndexes.length; j++) {
|
|
19272
|
+
const subAccountIndex = subAccountIndexes[j];
|
|
19273
|
+
const controller = payload.controllers?.[subAccountIndex];
|
|
19182
19274
|
const configKey = controller ?? String(LENDER_MODE_NO_MODE);
|
|
19183
19275
|
const userConfig = {
|
|
19184
|
-
id:
|
|
19276
|
+
id: subAccountIndex,
|
|
19185
19277
|
selectedMode: configKey,
|
|
19186
19278
|
isWhitelisted: true
|
|
19187
19279
|
};
|
|
@@ -19198,9 +19290,9 @@ function createEulerMultiAccountTypeUserState(payload, lenderData, histData) {
|
|
|
19198
19290
|
let adjustedDebt = 0;
|
|
19199
19291
|
for (let i = 0; i < marketUids.length; i++) {
|
|
19200
19292
|
const marketUid = marketUids[i];
|
|
19201
|
-
if (!lenderData?.[marketUid] || !payload.lendingPositions[
|
|
19293
|
+
if (!lenderData?.[marketUid] || !payload.lendingPositions[subAccountIndex][marketUid])
|
|
19202
19294
|
continue;
|
|
19203
|
-
const pos = payload.lendingPositions[
|
|
19295
|
+
const pos = payload.lendingPositions[subAccountIndex][marketUid];
|
|
19204
19296
|
const { depositsUSD, debtUSD } = pos;
|
|
19205
19297
|
const depositsUSDOracle = pos.depositsUSDOracle ?? depositsUSD;
|
|
19206
19298
|
const debtUSDOracle = pos.debtUSDOracle ?? debtUSD;
|
|
@@ -19236,9 +19328,9 @@ function createEulerMultiAccountTypeUserState(payload, lenderData, histData) {
|
|
|
19236
19328
|
debt,
|
|
19237
19329
|
adjustedDebt,
|
|
19238
19330
|
nav,
|
|
19239
|
-
deposits24h: histData[
|
|
19240
|
-
debt24h: histData[
|
|
19241
|
-
nav24h: histData[
|
|
19331
|
+
deposits24h: histData[subAccountIndex]?.totalDeposits24h,
|
|
19332
|
+
debt24h: histData[subAccountIndex]?.totalDebt24h,
|
|
19333
|
+
nav24h: histData[subAccountIndex]?.totalDeposits24h - histData[subAccountIndex]?.totalDebt24h
|
|
19242
19334
|
};
|
|
19243
19335
|
const aprData2 = {
|
|
19244
19336
|
apr: safeDivide(depositInterest - borrowInterest, nav),
|
|
@@ -19264,7 +19356,7 @@ function createEulerMultiAccountTypeUserState(payload, lenderData, histData) {
|
|
|
19264
19356
|
const price = getOraclePrice(lenderData[marketUid]);
|
|
19265
19357
|
const bcf = config?.borrowCollateralFactor ?? 1;
|
|
19266
19358
|
const bf = config?.borrowFactor ?? 1;
|
|
19267
|
-
const pos = payload.lendingPositions[
|
|
19359
|
+
const pos = payload.lendingPositions[subAccountIndex]?.[marketUid];
|
|
19268
19360
|
if (pos) {
|
|
19269
19361
|
let withdrawable;
|
|
19270
19362
|
if (!pos.collateralEnabled || config?.collateralDisabled) {
|
|
@@ -19299,7 +19391,7 @@ function createEulerMultiAccountTypeUserState(payload, lenderData, histData) {
|
|
|
19299
19391
|
if (borrowLiquidity != null) {
|
|
19300
19392
|
borrowable = String(Math.min(Number(borrowable), borrowLiquidity));
|
|
19301
19393
|
}
|
|
19302
|
-
payload.lendingPositions[
|
|
19394
|
+
payload.lendingPositions[subAccountIndex][marketUid] = {
|
|
19303
19395
|
marketUid,
|
|
19304
19396
|
underlying: lenderData[marketUid].underlying,
|
|
19305
19397
|
deposits: "0",
|
|
@@ -19319,13 +19411,13 @@ function createEulerMultiAccountTypeUserState(payload, lenderData, histData) {
|
|
|
19319
19411
|
}
|
|
19320
19412
|
}
|
|
19321
19413
|
data.push({
|
|
19322
|
-
accountId:
|
|
19414
|
+
accountId: subAccountIndex,
|
|
19323
19415
|
health: balanceData2.debt === 0 ? null : balanceData2.adjustedDebt > 0 ? balanceData2.borrowDiscountedCollateral / balanceData2.adjustedDebt : balanceData2.collateral / balanceData2.debt,
|
|
19324
19416
|
borrowCapacityUSD: creditLine,
|
|
19325
19417
|
userConfig,
|
|
19326
19418
|
balanceData: balanceData2,
|
|
19327
19419
|
aprData: aprData2,
|
|
19328
|
-
positions: Object.values(payload.lendingPositions[
|
|
19420
|
+
positions: Object.values(payload.lendingPositions[subAccountIndex])
|
|
19329
19421
|
});
|
|
19330
19422
|
}
|
|
19331
19423
|
return {
|
|
@@ -19337,14 +19429,9 @@ function createEulerMultiAccountTypeUserState(payload, lenderData, histData) {
|
|
|
19337
19429
|
}
|
|
19338
19430
|
|
|
19339
19431
|
// src/lending/user-data/euler/userCallParse.ts
|
|
19340
|
-
var getEulerUserDataConverter = (lender, chainId, account, metaMap,
|
|
19341
|
-
const
|
|
19342
|
-
const
|
|
19343
|
-
indices.add(ownerIndex);
|
|
19344
|
-
for (let i = 0; indices.size < maxSubAccounts && i < 256; i++) {
|
|
19345
|
-
indices.add(i);
|
|
19346
|
-
}
|
|
19347
|
-
const sortedIndices = [...indices].sort((a, b) => a - b);
|
|
19432
|
+
var getEulerUserDataConverter = (lender, chainId, account, metaMap, subAccountIndexes) => {
|
|
19433
|
+
const effectiveIndexes = subAccountIndexes ?? getResolvedEulerSubAccountIndexes(chainId, account) ?? [0];
|
|
19434
|
+
const sortedIndices = resolveSubAccountIndexes(account, effectiveIndexes);
|
|
19348
19435
|
const expectedNumberOfCalls = sortedIndices.length;
|
|
19349
19436
|
return [
|
|
19350
19437
|
(_data) => {
|
|
@@ -19360,14 +19447,11 @@ var getEulerUserDataConverter = (lender, chainId, account, metaMap, maxSubAccoun
|
|
|
19360
19447
|
const evcInfo = result.evcAccountInfo ?? result[0];
|
|
19361
19448
|
const vaultAccounts = result.vaultAccountInfo ?? result[1] ?? [];
|
|
19362
19449
|
if (vaultAccounts.length === 0) continue;
|
|
19363
|
-
const
|
|
19364
|
-
account,
|
|
19365
|
-
sortedIndices[idx]
|
|
19366
|
-
).toLowerCase();
|
|
19450
|
+
const subAccountId = String(sortedIndices[idx]);
|
|
19367
19451
|
const enabledControllers = (evcInfo?.enabledControllers ?? []).map((a) => a.toLowerCase());
|
|
19368
19452
|
const controller = enabledControllers.length > 0 ? enabledControllers[0] : void 0;
|
|
19369
19453
|
if (controller) {
|
|
19370
|
-
controllers[
|
|
19454
|
+
controllers[subAccountId] = controller;
|
|
19371
19455
|
}
|
|
19372
19456
|
const positions = {};
|
|
19373
19457
|
let totalDebt24h = 0;
|
|
@@ -19411,8 +19495,8 @@ var getEulerUserDataConverter = (lender, chainId, account, metaMap, maxSubAccoun
|
|
|
19411
19495
|
};
|
|
19412
19496
|
}
|
|
19413
19497
|
if (Object.keys(positions).length > 0) {
|
|
19414
|
-
lendingPositions[
|
|
19415
|
-
histData[
|
|
19498
|
+
lendingPositions[subAccountId] = positions;
|
|
19499
|
+
histData[subAccountId] = { totalDebt24h, totalDeposits24h };
|
|
19416
19500
|
}
|
|
19417
19501
|
}
|
|
19418
19502
|
if (Object.keys(lendingPositions).length === 0) {
|
|
@@ -19456,7 +19540,7 @@ function getUserDataConverter(lender, chainId, account, params, meta) {
|
|
|
19456
19540
|
meta?.[lender]
|
|
19457
19541
|
);
|
|
19458
19542
|
if (isEulerType(lender))
|
|
19459
|
-
return getEulerUserDataConverter(lender, chainId, account, meta?.[lender]);
|
|
19543
|
+
return getEulerUserDataConverter(lender, chainId, account, meta?.[lender], params?.subAccountIndexes);
|
|
19460
19544
|
return getCompoundV2UserDataConverter(
|
|
19461
19545
|
lender,
|
|
19462
19546
|
chainId,
|
|
@@ -24244,7 +24328,7 @@ var getLenderUserDataResult = async (chainId, queriesRaw, getEvmClient3, allowFa
|
|
|
24244
24328
|
const queries = organizeUserQueries(queriesRaw);
|
|
24245
24329
|
for (const query2 of queries) {
|
|
24246
24330
|
const abi = getAbi2(query2.lender);
|
|
24247
|
-
const callData = buildUserCall(
|
|
24331
|
+
const callData = await buildUserCall(
|
|
24248
24332
|
chainId,
|
|
24249
24333
|
query2.lender,
|
|
24250
24334
|
query2.account,
|
|
@@ -24266,13 +24350,13 @@ var getLenderUserDataResult = async (chainId, queriesRaw, getEvmClient3, allowFa
|
|
|
24266
24350
|
logs
|
|
24267
24351
|
);
|
|
24268
24352
|
};
|
|
24269
|
-
var prepareLenderUserDataRpcCalls = (chainId, queriesRaw, batchSize = MULTICALL_DEFAULT_BATCH_SIZE, blockTag = "latest",
|
|
24353
|
+
var prepareLenderUserDataRpcCalls = async (chainId, queriesRaw, batchSize = MULTICALL_DEFAULT_BATCH_SIZE, blockTag = "latest", allowFailure = true) => {
|
|
24270
24354
|
let calls = [];
|
|
24271
24355
|
const multicallAddress = getEvmChain(chainId).contracts?.multicall3?.address;
|
|
24272
24356
|
const queries = organizeUserQueries(queriesRaw);
|
|
24273
24357
|
for (const query2 of queries) {
|
|
24274
24358
|
const abi = getAbi2(query2.lender);
|
|
24275
|
-
const callData = buildUserCall(
|
|
24359
|
+
const callData = await buildUserCall(
|
|
24276
24360
|
chainId,
|
|
24277
24361
|
query2.lender,
|
|
24278
24362
|
query2.account,
|
|
@@ -24363,7 +24447,7 @@ var EMPTY_TOKEN_APPROVAL_META = {
|
|
|
24363
24447
|
tokenAddresses: [],
|
|
24364
24448
|
spenders: []
|
|
24365
24449
|
};
|
|
24366
|
-
function prepareMergedRpcCalls(chainId, balanceQueries, permissionParams, tokenApprovalParams, batchSize = MULTICALL_DEFAULT_BATCH_SIZE, blockTag = "latest", allowFailure = true) {
|
|
24450
|
+
async function prepareMergedRpcCalls(chainId, balanceQueries, permissionParams, tokenApprovalParams, batchSize = MULTICALL_DEFAULT_BATCH_SIZE, blockTag = "latest", allowFailure = true) {
|
|
24367
24451
|
const multicallAddress = getEvmChain(chainId).contracts?.multicall3?.address;
|
|
24368
24452
|
let tokenApprovalPreparedCalls = [];
|
|
24369
24453
|
let tokenApprovalMeta = EMPTY_TOKEN_APPROVAL_META;
|
|
@@ -24388,7 +24472,7 @@ function prepareMergedRpcCalls(chainId, balanceQueries, permissionParams, tokenA
|
|
|
24388
24472
|
const organizedQueries = organizeUserQueries(balanceQueries);
|
|
24389
24473
|
for (const query2 of organizedQueries) {
|
|
24390
24474
|
const abi = getAbi2(query2.lender);
|
|
24391
|
-
const callData = buildUserCall(
|
|
24475
|
+
const callData = await buildUserCall(
|
|
24392
24476
|
chainId,
|
|
24393
24477
|
query2.lender,
|
|
24394
24478
|
query2.account,
|
|
@@ -24424,7 +24508,7 @@ function prepareMergedRpcCalls(chainId, balanceQueries, permissionParams, tokenA
|
|
|
24424
24508
|
balanceQueries
|
|
24425
24509
|
};
|
|
24426
24510
|
}
|
|
24427
|
-
function prepareMergedMulticallParams(chainId, balanceQueries, permissionParams, tokenApprovalParams) {
|
|
24511
|
+
async function prepareMergedMulticallParams(chainId, balanceQueries, permissionParams, tokenApprovalParams) {
|
|
24428
24512
|
let tokenApprovalCalls = [];
|
|
24429
24513
|
let tokenApprovalAbis = [];
|
|
24430
24514
|
let tokenApprovalMeta = EMPTY_TOKEN_APPROVAL_META;
|
|
@@ -24453,7 +24537,7 @@ function prepareMergedMulticallParams(chainId, balanceQueries, permissionParams,
|
|
|
24453
24537
|
const organizedQueries = organizeUserQueries(balanceQueries);
|
|
24454
24538
|
for (const query2 of organizedQueries) {
|
|
24455
24539
|
const abi = getAbi2(query2.lender);
|
|
24456
|
-
const callData = buildUserCall(
|
|
24540
|
+
const callData = await buildUserCall(
|
|
24457
24541
|
chainId,
|
|
24458
24542
|
query2.lender,
|
|
24459
24543
|
query2.account,
|
|
@@ -24515,7 +24599,7 @@ function parseMergedResult(chainId, rawResults, prepared, lenderState) {
|
|
|
24515
24599
|
|
|
24516
24600
|
// src/lending/user-data/with-permissions/e2e.ts
|
|
24517
24601
|
async function getMergedUserData(chainId, balanceQueries, permissionParams, lenderState, multicallRetry3, batchSize = MULTICALL_DEFAULT_BATCH_SIZE, maxRetries2 = 3, tokenApprovalParams) {
|
|
24518
|
-
const prepared = prepareMergedMulticallParams(
|
|
24602
|
+
const prepared = await prepareMergedMulticallParams(
|
|
24519
24603
|
chainId,
|
|
24520
24604
|
balanceQueries,
|
|
24521
24605
|
permissionParams,
|