@1delta/margin-fetcher 0.0.68 → 0.0.71
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 +183 -76
- package/dist/index.js.map +1 -1
- package/dist/lending/aave-v3-type/publicCallParse.d.ts.map +1 -1
- package/dist/lending/user-data/init/userCallParse.d.ts +1 -1
- package/dist/lending/user-data/init/userCallParse.d.ts.map +1 -1
- package/dist/prices/defillama/index.d.ts.map +1 -1
- package/dist/prices/main-prices/fetchOracleData.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -8287,9 +8287,9 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
|
|
|
8287
8287
|
const resultReserves = {};
|
|
8288
8288
|
const decimalsCeiling = data[expectedNumberOfCalls - 1];
|
|
8289
8289
|
let eModeConfigs = {};
|
|
8290
|
-
allModes.
|
|
8290
|
+
allModes.forEach((mode, index) => {
|
|
8291
8291
|
const rawCfg = emodeDataResult[index];
|
|
8292
|
-
if (mode === 0 || rawCfg?.label !== "")
|
|
8292
|
+
if ((mode === 0 || rawCfg?.label !== "") && Number(rawCfg.ltv) !== 0) {
|
|
8293
8293
|
eModeConfigs[mode] = {
|
|
8294
8294
|
category: mode,
|
|
8295
8295
|
label: rawCfg.label,
|
|
@@ -8297,6 +8297,7 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
|
|
|
8297
8297
|
collateralFactor: rawCfg.liquidationThreshold / BPS,
|
|
8298
8298
|
borrowFactor: 1
|
|
8299
8299
|
};
|
|
8300
|
+
}
|
|
8300
8301
|
});
|
|
8301
8302
|
for (let i = 0; i < assetsToQuery.length; i++) {
|
|
8302
8303
|
const asset = assetsToQuery[i];
|
|
@@ -8370,8 +8371,6 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
|
|
|
8370
8371
|
hasStable: configData?.[7 /* stableBorrowRateEnabled */],
|
|
8371
8372
|
isActive: configData?.[8 /* isActive */],
|
|
8372
8373
|
isFrozen: configData?.[9 /* isFrozen */],
|
|
8373
|
-
// eMode
|
|
8374
|
-
eMode: eModeConfigs[eModeCategory],
|
|
8375
8374
|
// caps
|
|
8376
8375
|
borrowCap: Number(reserveCaps[0]?.toString()),
|
|
8377
8376
|
supplyCap: Number(reserveCaps[1]?.toString()),
|
|
@@ -8395,23 +8394,32 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
|
|
|
8395
8394
|
var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, eModeConfigs, allModes) => {
|
|
8396
8395
|
let data = {};
|
|
8397
8396
|
allModes.forEach((e) => {
|
|
8398
|
-
|
|
8399
|
-
category: e,
|
|
8400
|
-
borrowCollateralFactor,
|
|
8401
|
-
collateralFactor,
|
|
8402
|
-
borrowFactor: 1
|
|
8403
|
-
};
|
|
8404
|
-
if (e > 0) data[e].debtDisabled = true;
|
|
8405
|
-
if (e > 0 && e === eModeCategory && eModeConfigs[e]) {
|
|
8397
|
+
if (e === 0)
|
|
8406
8398
|
data[e] = {
|
|
8407
|
-
|
|
8399
|
+
label: "Disabled",
|
|
8408
8400
|
category: e,
|
|
8409
|
-
|
|
8410
|
-
|
|
8411
|
-
|
|
8412
|
-
borrowFactor: 1,
|
|
8413
|
-
debtDisabled: false
|
|
8401
|
+
borrowCollateralFactor,
|
|
8402
|
+
collateralFactor,
|
|
8403
|
+
borrowFactor: 1
|
|
8414
8404
|
};
|
|
8405
|
+
if (e > 0 && eModeConfigs[e]?.label && eModeConfigs[e]?.label !== "") {
|
|
8406
|
+
data[e] = {};
|
|
8407
|
+
data[e].label = eModeConfigs[e]?.label;
|
|
8408
|
+
data[e].debtDisabled = true;
|
|
8409
|
+
data[e].category = e;
|
|
8410
|
+
data[e].borrowFactor = 1;
|
|
8411
|
+
data[e].collateralFactor = collateralFactor;
|
|
8412
|
+
data[e].borrowCollateralFactor = borrowCollateralFactor;
|
|
8413
|
+
if (e > 0 && e === eModeCategory && eModeConfigs[e]) {
|
|
8414
|
+
data[e] = {
|
|
8415
|
+
...data[e],
|
|
8416
|
+
category: e,
|
|
8417
|
+
borrowCollateralFactor: eModeConfigs[e]?.borrowCollateralFactor ?? 0,
|
|
8418
|
+
collateralFactor: eModeConfigs[e]?.collateralFactor ?? 0,
|
|
8419
|
+
borrowFactor: 1,
|
|
8420
|
+
debtDisabled: false
|
|
8421
|
+
};
|
|
8422
|
+
}
|
|
8415
8423
|
}
|
|
8416
8424
|
});
|
|
8417
8425
|
return data;
|
|
@@ -8419,27 +8427,39 @@ var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, e
|
|
|
8419
8427
|
var populateEModes32 = (borrowCollateralFactor, collateralFactor, collateralBitmap, debtBitmap, assetIndex, eModeConfigs, allModes) => {
|
|
8420
8428
|
let data = {};
|
|
8421
8429
|
allModes.forEach((e) => {
|
|
8422
|
-
|
|
8423
|
-
category: e,
|
|
8424
|
-
borrowCollateralFactor,
|
|
8425
|
-
collateralFactor,
|
|
8426
|
-
borrowFactor: 1
|
|
8427
|
-
};
|
|
8428
|
-
if (e > 0) data[e].debtDisabled = !!eModeConfigs[e];
|
|
8429
|
-
if (e > 0 && eModeConfigs[e]) {
|
|
8430
|
+
if (e === 0)
|
|
8430
8431
|
data[e] = {
|
|
8431
|
-
|
|
8432
|
+
label: "Disabled",
|
|
8432
8433
|
category: e,
|
|
8433
|
-
|
|
8434
|
-
|
|
8435
|
-
|
|
8436
|
-
borrowFactor: 1,
|
|
8437
|
-
collateralDisabled: !isReserveEnabledOnBitmap(
|
|
8438
|
-
collateralBitmap[e],
|
|
8439
|
-
assetIndex
|
|
8440
|
-
),
|
|
8441
|
-
debtDisabled: !isReserveEnabledOnBitmap(debtBitmap[e], assetIndex)
|
|
8434
|
+
borrowCollateralFactor,
|
|
8435
|
+
collateralFactor,
|
|
8436
|
+
borrowFactor: 1
|
|
8442
8437
|
};
|
|
8438
|
+
if (e > 0) {
|
|
8439
|
+
if (eModeConfigs[e]?.label && eModeConfigs[e]?.label !== "") {
|
|
8440
|
+
data[e] = {};
|
|
8441
|
+
data[e].label = eModeConfigs[e]?.label ?? "Default";
|
|
8442
|
+
data[e].debtDisabled = true;
|
|
8443
|
+
data[e].category = e;
|
|
8444
|
+
data[e].borrowFactor = 1;
|
|
8445
|
+
data[e].collateralFactor = collateralFactor;
|
|
8446
|
+
data[e].borrowCollateralFactor = borrowCollateralFactor;
|
|
8447
|
+
data[e].debtDisabled = !!eModeConfigs[e];
|
|
8448
|
+
if (eModeConfigs[e]) {
|
|
8449
|
+
data[e] = {
|
|
8450
|
+
...data[e],
|
|
8451
|
+
category: e,
|
|
8452
|
+
borrowCollateralFactor: eModeConfigs[e]?.borrowCollateralFactor ?? 0,
|
|
8453
|
+
collateralFactor: eModeConfigs[e]?.collateralFactor ?? 0,
|
|
8454
|
+
borrowFactor: 1,
|
|
8455
|
+
collateralDisabled: !isReserveEnabledOnBitmap(
|
|
8456
|
+
collateralBitmap[e],
|
|
8457
|
+
assetIndex
|
|
8458
|
+
),
|
|
8459
|
+
debtDisabled: !isReserveEnabledOnBitmap(debtBitmap[e], assetIndex)
|
|
8460
|
+
};
|
|
8461
|
+
}
|
|
8462
|
+
}
|
|
8443
8463
|
}
|
|
8444
8464
|
});
|
|
8445
8465
|
return data;
|
|
@@ -8559,9 +8579,9 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
|
|
|
8559
8579
|
let eModeConfigs = {};
|
|
8560
8580
|
let collateralBitmap = {};
|
|
8561
8581
|
let debtBitmap = {};
|
|
8562
|
-
allModes.
|
|
8582
|
+
allModes.forEach((mode, index) => {
|
|
8563
8583
|
const rawCfg = emodeDataResult[3 * index];
|
|
8564
|
-
if (rawCfg && (mode === 0 || rawCfg?.label !== ""))
|
|
8584
|
+
if (rawCfg && (mode === 0 || rawCfg?.label !== "")) {
|
|
8565
8585
|
eModeConfigs[mode] = {
|
|
8566
8586
|
category: mode,
|
|
8567
8587
|
label: rawCfg.label,
|
|
@@ -8569,8 +8589,9 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
|
|
|
8569
8589
|
collateralFactor: rawCfg.liquidationThreshold / BPS,
|
|
8570
8590
|
borrowFactor: 1
|
|
8571
8591
|
};
|
|
8572
|
-
|
|
8573
|
-
|
|
8592
|
+
debtBitmap[mode] = emodeDataResult[3 * index + 1];
|
|
8593
|
+
collateralBitmap[mode] = emodeDataResult[3 * index + 2];
|
|
8594
|
+
}
|
|
8574
8595
|
});
|
|
8575
8596
|
const lowerReservesList = reservesList?.map(
|
|
8576
8597
|
(a) => a.toLowerCase()
|
|
@@ -8629,7 +8650,7 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
|
|
|
8629
8650
|
const activeEmodes = allModes.map(
|
|
8630
8651
|
(mode) => isReserveEnabledOnBitmap(debtBitmap[mode], assetIndex) || isReserveEnabledOnBitmap(collateralBitmap[mode], assetIndex) ? mode : -1
|
|
8631
8652
|
).filter((m) => m !== void 0 && m > 0);
|
|
8632
|
-
|
|
8653
|
+
activeEmodes.length === 0 ? 0 : activeEmodes[0];
|
|
8633
8654
|
resultReserves[asset] = {
|
|
8634
8655
|
...resultReserves[asset],
|
|
8635
8656
|
decimals: Number(
|
|
@@ -8652,8 +8673,6 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
|
|
|
8652
8673
|
hasStable: configData?.[7 /* stableBorrowRateEnabled */],
|
|
8653
8674
|
isActive: configData?.[8 /* isActive */],
|
|
8654
8675
|
isFrozen: configData?.[9 /* isFrozen */],
|
|
8655
|
-
// eMode
|
|
8656
|
-
eMode: eModeConfigs[eModeCategory],
|
|
8657
8676
|
// caps
|
|
8658
8677
|
borrowCap: Number(reserveCaps[0]?.toString()),
|
|
8659
8678
|
supplyCap: Number(reserveCaps[1]?.toString()),
|
|
@@ -16695,12 +16714,10 @@ var getInitUserDataConverter = (lender, chainId, account, prices, pricesHist, le
|
|
|
16695
16714
|
return void 0;
|
|
16696
16715
|
}
|
|
16697
16716
|
const [data] = _data;
|
|
16698
|
-
const indexes = data[0 /* posMeta */].map(
|
|
16699
|
-
|
|
16700
|
-
|
|
16701
|
-
|
|
16702
|
-
).filter((a) => a.e.owner.toLowerCase() === validOwner).map((a) => a.i);
|
|
16703
|
-
const assets = getLenderAssets(chainId, lender);
|
|
16717
|
+
const indexes = data[0 /* posMeta */].map((e, i) => {
|
|
16718
|
+
return { e, i };
|
|
16719
|
+
}).filter((a) => a.e.owner.toLowerCase() === validOwner).map((a) => a.i);
|
|
16720
|
+
const assets = Object.keys(lenderData);
|
|
16704
16721
|
let histData = {};
|
|
16705
16722
|
const result = Object.assign(
|
|
16706
16723
|
{},
|
|
@@ -16710,20 +16727,33 @@ var getInitUserDataConverter = (lender, chainId, account, prices, pricesHist, le
|
|
|
16710
16727
|
const id = entry.posId.toString();
|
|
16711
16728
|
const collatData = Object.assign(
|
|
16712
16729
|
{},
|
|
16713
|
-
...data[1 /* collaterals */][index].map(
|
|
16714
|
-
|
|
16715
|
-
|
|
16716
|
-
|
|
16717
|
-
|
|
16718
|
-
|
|
16730
|
+
...data[1 /* collaterals */][index].map(
|
|
16731
|
+
(c) => {
|
|
16732
|
+
const asset = c.underlying.toLowerCase();
|
|
16733
|
+
const decimals = lenderData[asset].asset?.decimals ?? 18;
|
|
16734
|
+
const depositsRaw = c.amount.toString();
|
|
16735
|
+
return {
|
|
16736
|
+
[asset]: {
|
|
16737
|
+
deposits: parseRawAmount(depositsRaw, decimals),
|
|
16738
|
+
depositsRaw
|
|
16739
|
+
}
|
|
16740
|
+
};
|
|
16741
|
+
}
|
|
16742
|
+
)
|
|
16719
16743
|
);
|
|
16720
16744
|
const debtData = Object.assign(
|
|
16721
16745
|
{},
|
|
16722
|
-
...data[2 /* debts */][index].map(
|
|
16723
|
-
|
|
16724
|
-
|
|
16725
|
-
|
|
16726
|
-
|
|
16746
|
+
...data[2 /* debts */][index].map(
|
|
16747
|
+
(c) => {
|
|
16748
|
+
const asset = c.underlying.toLowerCase();
|
|
16749
|
+
const decimals = lenderData[asset]?.asset?.decimals ?? 18;
|
|
16750
|
+
return {
|
|
16751
|
+
[asset]: {
|
|
16752
|
+
debt: parseRawAmount(c.amount.toString(), decimals)
|
|
16753
|
+
}
|
|
16754
|
+
};
|
|
16755
|
+
}
|
|
16756
|
+
)
|
|
16727
16757
|
);
|
|
16728
16758
|
return {
|
|
16729
16759
|
[id]: {
|
|
@@ -16734,10 +16764,11 @@ var getInitUserDataConverter = (lender, chainId, account, prices, pricesHist, le
|
|
|
16734
16764
|
const ams = toOracleKey(lenderData[a]?.asset?.assetGroup);
|
|
16735
16765
|
const price = prices[ams] ?? 1;
|
|
16736
16766
|
const priceHist = pricesHist?.[ams] ?? price;
|
|
16737
|
-
if (!histData[id])
|
|
16738
|
-
|
|
16739
|
-
|
|
16740
|
-
|
|
16767
|
+
if (!histData[id])
|
|
16768
|
+
histData[id] = {
|
|
16769
|
+
totalDebt24h: 0,
|
|
16770
|
+
totalDeposits24h: 0
|
|
16771
|
+
};
|
|
16741
16772
|
const debt = debtData[a]?.debt ?? 0;
|
|
16742
16773
|
const deposits = collatData[a]?.deposits ?? 0;
|
|
16743
16774
|
const depositsRaw = collatData[a]?.depositsRaw ?? "0";
|
|
@@ -18418,6 +18449,7 @@ var RUSD = "0x09d4214c03d01f49544c0448dbe3a27f768f2b34";
|
|
|
18418
18449
|
var USDF = "0xfa2b947eec368f42195f24f36d2af29f7c24cec2";
|
|
18419
18450
|
var USUAL = "0xc4441c2be5d8fa8126822b9929ca0b81ea0de38e";
|
|
18420
18451
|
var WOETH = "0xdcee70654261af21c44c093c300ed3bb97b78192";
|
|
18452
|
+
var DEUSD = "0x15700B564Ca08D9439C58cA5053166E8317aa138";
|
|
18421
18453
|
var datasEthereum = [
|
|
18422
18454
|
RETH,
|
|
18423
18455
|
WBTC,
|
|
@@ -18462,7 +18494,8 @@ var datasEthereum = [
|
|
|
18462
18494
|
RUSD,
|
|
18463
18495
|
USDF,
|
|
18464
18496
|
USUAL,
|
|
18465
|
-
WOETH
|
|
18497
|
+
WOETH,
|
|
18498
|
+
DEUSD
|
|
18466
18499
|
].map((d) => prefixEthereum + d).join(",");
|
|
18467
18500
|
var prefixAvalanche = "avax:";
|
|
18468
18501
|
var WAVAX = "0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7";
|
|
@@ -18639,7 +18672,8 @@ var SYMBOL_MAP = {
|
|
|
18639
18672
|
wbera: "WBERA",
|
|
18640
18673
|
wtlos: "WTLOS",
|
|
18641
18674
|
xpl: "WXPL",
|
|
18642
|
-
wglmr: "WGLMR"
|
|
18675
|
+
wglmr: "WGLMR",
|
|
18676
|
+
deusd: "Elixir deUSD::DEUSD"
|
|
18643
18677
|
};
|
|
18644
18678
|
async function fetchDefillamaData() {
|
|
18645
18679
|
try {
|
|
@@ -20226,6 +20260,7 @@ var fetchMainPrices = async (chainIds, rpcOverrides, lists = {}) => {
|
|
|
20226
20260
|
const uniswapV3Calls = getUniswapV3Calls(chainId);
|
|
20227
20261
|
const [api3Calls, api3Names] = getApi3Calls(chainId);
|
|
20228
20262
|
const [rwaCalls, rwaNames] = getRWADynamicOracleCalls(chainId);
|
|
20263
|
+
const [cometCalls, cometNames] = getCometCalls(chainId);
|
|
20229
20264
|
const allCalls = [
|
|
20230
20265
|
...chainlinkCalls,
|
|
20231
20266
|
...aaveCalls,
|
|
@@ -20233,6 +20268,7 @@ var fetchMainPrices = async (chainIds, rpcOverrides, lists = {}) => {
|
|
|
20233
20268
|
...uniswapV3Calls,
|
|
20234
20269
|
...api3Calls,
|
|
20235
20270
|
...rwaCalls,
|
|
20271
|
+
...cometCalls,
|
|
20236
20272
|
...morphoCalls
|
|
20237
20273
|
];
|
|
20238
20274
|
const abis = [
|
|
@@ -20242,7 +20278,8 @@ var fetchMainPrices = async (chainIds, rpcOverrides, lists = {}) => {
|
|
|
20242
20278
|
...AaveOracleAbi,
|
|
20243
20279
|
...Api3OracleAbi,
|
|
20244
20280
|
...RWADynamicOracleAbi,
|
|
20245
|
-
...ProxyOracleAbi
|
|
20281
|
+
...ProxyOracleAbi,
|
|
20282
|
+
...CometAbi
|
|
20246
20283
|
];
|
|
20247
20284
|
const result = await multicallRetry(
|
|
20248
20285
|
chainId,
|
|
@@ -20262,6 +20299,7 @@ var fetchMainPrices = async (chainIds, rpcOverrides, lists = {}) => {
|
|
|
20262
20299
|
chainlink: { calls: chainlinkCalls, names: chainlinkNames },
|
|
20263
20300
|
api3: { calls: api3Calls, names: api3Names },
|
|
20264
20301
|
rwa: { calls: rwaCalls, names: rwaNames },
|
|
20302
|
+
comet: { calls: cometCalls, names: cometNames },
|
|
20265
20303
|
morpho: { queries: morphoQueries },
|
|
20266
20304
|
uniswapCalls,
|
|
20267
20305
|
uniswapV3Calls,
|
|
@@ -20285,6 +20323,7 @@ var fetchMainPrices = async (chainIds, rpcOverrides, lists = {}) => {
|
|
|
20285
20323
|
rwa,
|
|
20286
20324
|
uniswapCalls,
|
|
20287
20325
|
uniswapV3Calls,
|
|
20326
|
+
comet,
|
|
20288
20327
|
aaveCalls
|
|
20289
20328
|
}
|
|
20290
20329
|
} of chainResults) {
|
|
@@ -20316,6 +20355,13 @@ var fetchMainPrices = async (chainIds, rpcOverrides, lists = {}) => {
|
|
|
20316
20355
|
const rwaSlice = result.slice(offset, offset + rwa.calls.length);
|
|
20317
20356
|
const rwaData = parseRWADynamicOracleResults(chainId, rwaSlice, rwa.names);
|
|
20318
20357
|
offset += rwa.calls.length;
|
|
20358
|
+
const cometSlice = result.slice(offset, offset + comet.calls.length);
|
|
20359
|
+
const cometData = parseCometResults(
|
|
20360
|
+
chainId,
|
|
20361
|
+
cometSlice,
|
|
20362
|
+
comet.names
|
|
20363
|
+
);
|
|
20364
|
+
offset += comet.calls.length;
|
|
20319
20365
|
allPrices = {
|
|
20320
20366
|
...allPrices,
|
|
20321
20367
|
...chainlinkData,
|
|
@@ -20323,7 +20369,8 @@ var fetchMainPrices = async (chainIds, rpcOverrides, lists = {}) => {
|
|
|
20323
20369
|
...uniswapData,
|
|
20324
20370
|
...uniswapV3Data,
|
|
20325
20371
|
...api3Data,
|
|
20326
|
-
...rwaData
|
|
20372
|
+
...rwaData,
|
|
20373
|
+
...cometData
|
|
20327
20374
|
};
|
|
20328
20375
|
}
|
|
20329
20376
|
allPrices = { ...otherResults[0], ...allPrices, ...otherResults[1] };
|
|
@@ -20383,6 +20430,68 @@ var getUniswapV2Calls = (chainId) => {
|
|
|
20383
20430
|
return [];
|
|
20384
20431
|
}
|
|
20385
20432
|
};
|
|
20433
|
+
var getCometCalls = (chainId) => {
|
|
20434
|
+
switch (chainId) {
|
|
20435
|
+
case Chain.ETHEREUM_MAINNET: {
|
|
20436
|
+
const names = [
|
|
20437
|
+
"Staked FRAX::SFRAX",
|
|
20438
|
+
//
|
|
20439
|
+
"Elixir deUSD::DEUSD",
|
|
20440
|
+
"Elixir Staked deUSD::SDEUSD"
|
|
20441
|
+
];
|
|
20442
|
+
return [
|
|
20443
|
+
[
|
|
20444
|
+
{
|
|
20445
|
+
address: "0x3Afdc9BCA9213A35503b077a6072F3D0d5AB0840",
|
|
20446
|
+
// usdt comet
|
|
20447
|
+
name: "getPrice",
|
|
20448
|
+
params: [
|
|
20449
|
+
"0x8C74B2811D2F1aD65517ADB5C65773c1E520ed2f"
|
|
20450
|
+
// sfrax
|
|
20451
|
+
]
|
|
20452
|
+
},
|
|
20453
|
+
{
|
|
20454
|
+
address: "0x3Afdc9BCA9213A35503b077a6072F3D0d5AB0840",
|
|
20455
|
+
name: "getPrice",
|
|
20456
|
+
params: [
|
|
20457
|
+
"0x471a6299C027Bd81ed4D66069dc510Bd0569f4F8"
|
|
20458
|
+
// deusd
|
|
20459
|
+
]
|
|
20460
|
+
},
|
|
20461
|
+
{
|
|
20462
|
+
address: "0x3Afdc9BCA9213A35503b077a6072F3D0d5AB0840",
|
|
20463
|
+
name: "getPrice",
|
|
20464
|
+
params: [
|
|
20465
|
+
"0xE4829421ae79f2F44716cCbbb40751cd6Be3d483"
|
|
20466
|
+
// sdeusd
|
|
20467
|
+
]
|
|
20468
|
+
}
|
|
20469
|
+
],
|
|
20470
|
+
names
|
|
20471
|
+
];
|
|
20472
|
+
}
|
|
20473
|
+
default:
|
|
20474
|
+
return [[], []];
|
|
20475
|
+
}
|
|
20476
|
+
};
|
|
20477
|
+
var parseCometResults = (chainId, data, names) => {
|
|
20478
|
+
switch (chainId) {
|
|
20479
|
+
case Chain.ETHEREUM_MAINNET: {
|
|
20480
|
+
const targetDecimals = [8, 8, 8];
|
|
20481
|
+
return Object.assign(
|
|
20482
|
+
{},
|
|
20483
|
+
...data.map((entry, index) => {
|
|
20484
|
+
return {
|
|
20485
|
+
[names[index]]: Number(parseRawAmount(entry ?? "0", targetDecimals[index]))
|
|
20486
|
+
};
|
|
20487
|
+
})
|
|
20488
|
+
);
|
|
20489
|
+
}
|
|
20490
|
+
default: {
|
|
20491
|
+
return {};
|
|
20492
|
+
}
|
|
20493
|
+
}
|
|
20494
|
+
};
|
|
20386
20495
|
var getUniswapV3Calls = (chainId) => {
|
|
20387
20496
|
switch (chainId) {
|
|
20388
20497
|
case Chain.HEMI_NETWORK:
|
|
@@ -20530,12 +20639,10 @@ var parseMorphoResults = (chainId, data, queries, donePrices = {}, list = {}) =>
|
|
|
20530
20639
|
let prices = {};
|
|
20531
20640
|
data.forEach((d, i) => {
|
|
20532
20641
|
const details = queries[i];
|
|
20533
|
-
const
|
|
20534
|
-
|
|
20535
|
-
|
|
20536
|
-
|
|
20537
|
-
collateralAssetDecimals
|
|
20538
|
-
} = details;
|
|
20642
|
+
const loanAsset = details?.loanAsset;
|
|
20643
|
+
const collateralAsset = details?.collateralAsset;
|
|
20644
|
+
const loanAssetDecimals = details?.loanAssetDecimals;
|
|
20645
|
+
const collateralAssetDecimals = details?.collateralAssetDecimals;
|
|
20539
20646
|
const oracleId = list[loanAsset]?.assetGroup ?? chainId + "-" + loanAsset;
|
|
20540
20647
|
const debtPrice = donePrices[oracleId] ?? prices[oracleId];
|
|
20541
20648
|
const oracleIdCollateral = list[collateralAsset]?.assetGroup ?? chainId + "-" + collateralAsset;
|
|
@@ -20546,12 +20653,12 @@ var parseMorphoResults = (chainId, data, queries, donePrices = {}, list = {}) =>
|
|
|
20546
20653
|
collateralAssetDecimals
|
|
20547
20654
|
);
|
|
20548
20655
|
if (debtPrice) {
|
|
20549
|
-
if (!prices[oracleIdCollateral]) {
|
|
20656
|
+
if (!prices[oracleIdCollateral] && !donePrices[oracleIdCollateral]) {
|
|
20550
20657
|
prices[oracleIdCollateral] = priceDebtToCollateral * debtPrice;
|
|
20551
20658
|
}
|
|
20552
20659
|
} else {
|
|
20553
20660
|
if (collateralPrice) {
|
|
20554
|
-
if (!prices[oracleId]) {
|
|
20661
|
+
if (!prices[oracleId] && !donePrices[oracleId]) {
|
|
20555
20662
|
prices[oracleId] = collateralPrice / priceDebtToCollateral;
|
|
20556
20663
|
}
|
|
20557
20664
|
}
|