@1delta/margin-fetcher 0.0.149 → 0.0.150

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 CHANGED
@@ -8014,6 +8014,8 @@ var getAaveV2ReservesDataConverter = (lender, chainId, prices, additionalYields,
8014
8014
  const price = prices[oracleKey] ?? 0;
8015
8015
  const totalDepositsUSD = Number(totalAToken) * price;
8016
8016
  const totalDebtUSD = Number(totalVariableDebt) * price;
8017
+ const collateralActive = configData?.[5 /* usageAsCollateralEnabled */];
8018
+ const borrowingEnabled = configData?.[6 /* borrowingEnabled */];
8017
8019
  resultReserves[asset] = {
8018
8020
  poolId: asset,
8019
8021
  underlying: asset,
@@ -8060,15 +8062,17 @@ var getAaveV2ReservesDataConverter = (lender, chainId, prices, additionalYields,
8060
8062
  collateralFactor: Number(
8061
8063
  configData?.[2 /* liquidationThreshold */].toString()
8062
8064
  ) / BPS,
8063
- borrowFactor: 1
8065
+ borrowFactor: 1,
8066
+ collateralDisabled: !collateralActive,
8067
+ debtDisabled: !borrowingEnabled
8064
8068
  }
8065
8069
  },
8066
8070
  liquidationBonus: Number(
8067
8071
  configData?.[3 /* liquidationBonus */].toString()
8068
8072
  ) / BPS,
8069
8073
  // flags
8070
- collateralActive: configData?.[5 /* usageAsCollateralEnabled */],
8071
- borrowingEnabled: configData?.[6 /* borrowingEnabled */],
8074
+ collateralActive,
8075
+ borrowingEnabled,
8072
8076
  hasStable: configData?.[7 /* stableBorrowRateEnabled */],
8073
8077
  isActive: configData?.[8 /* isActive */],
8074
8078
  isFrozen: configData?.[9 /* isFrozen */]
@@ -8154,6 +8158,8 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
8154
8158
  );
8155
8159
  const liquidity = Number(totalDeposits) - Number(totalDebt) - Number(totalDebtStable);
8156
8160
  const price = prices[toOracleKey(assetMeta?.assetGroup) ?? toGenericPriceKey(asset, chainId)] ?? 0;
8161
+ const usageAsCollateralEnabled = configData?.[5 /* usageAsCollateralEnabled */];
8162
+ const borrowingEnabled = configData?.[6 /* borrowingEnabled */];
8157
8163
  resultReserves[asset] = {
8158
8164
  poolId: asset,
8159
8165
  underlying: asset,
@@ -8195,11 +8201,13 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
8195
8201
  ) / BPS,
8196
8202
  eModeCategory,
8197
8203
  eModeConfigs,
8198
- allModes
8204
+ allModes,
8205
+ usageAsCollateralEnabled,
8206
+ borrowingEnabled
8199
8207
  ),
8200
8208
  // flags
8201
- collateralActive: configData?.[5 /* usageAsCollateralEnabled */],
8202
- borrowingEnabled: configData?.[6 /* borrowingEnabled */],
8209
+ collateralActive: usageAsCollateralEnabled,
8210
+ borrowingEnabled,
8203
8211
  hasStable: configData?.[7 /* stableBorrowRateEnabled */],
8204
8212
  isActive: configData?.[8 /* isActive */],
8205
8213
  isFrozen: configData?.[9 /* isFrozen */],
@@ -8224,7 +8232,7 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
8224
8232
  }
8225
8233
  }
8226
8234
  };
8227
- var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, eModeConfigs, allModes) => {
8235
+ var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, eModeConfigs, allModes, usageAsCollateralEnabled, borrowingEnabled) => {
8228
8236
  let data = {};
8229
8237
  allModes.forEach((e) => {
8230
8238
  if (e === 0)
@@ -8233,7 +8241,9 @@ var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, e
8233
8241
  category: e,
8234
8242
  borrowCollateralFactor,
8235
8243
  collateralFactor,
8236
- borrowFactor: 1
8244
+ borrowFactor: 1,
8245
+ collateralDisabled: !usageAsCollateralEnabled,
8246
+ debtDisabled: !borrowingEnabled
8237
8247
  };
8238
8248
  if (e > 0 && eModeConfigs[e]?.label && eModeConfigs[e]?.label !== "") {
8239
8249
  data[e] = {};
@@ -8243,6 +8253,8 @@ var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, e
8243
8253
  data[e].borrowFactor = 1;
8244
8254
  data[e].collateralFactor = collateralFactor;
8245
8255
  data[e].borrowCollateralFactor = borrowCollateralFactor;
8256
+ data[e].collateralDisabled = !usageAsCollateralEnabled;
8257
+ data[e].debtDisabled = !borrowingEnabled;
8246
8258
  if (e > 0 && e === eModeCategory && eModeConfigs[e]) {
8247
8259
  data[e] = {
8248
8260
  ...data[e],
@@ -8257,7 +8269,7 @@ var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, e
8257
8269
  });
8258
8270
  return data;
8259
8271
  };
8260
- var populateEModes32 = (borrowCollateralFactor, collateralFactor, collateralBitmap, debtBitmap, assetIndex, eModeConfigs, allModes) => {
8272
+ var populateEModes32 = (borrowCollateralFactor, collateralFactor, collateralBitmap, debtBitmap, assetIndex, eModeConfigs, allModes, usageAsCollateralEnabled, borrowingEnabled) => {
8261
8273
  let data = {};
8262
8274
  allModes.forEach((e) => {
8263
8275
  if (e === 0)
@@ -8266,7 +8278,9 @@ var populateEModes32 = (borrowCollateralFactor, collateralFactor, collateralBitm
8266
8278
  category: e,
8267
8279
  borrowCollateralFactor,
8268
8280
  collateralFactor,
8269
- borrowFactor: 1
8281
+ borrowFactor: 1,
8282
+ collateralDisabled: !usageAsCollateralEnabled,
8283
+ debtDisabled: !borrowingEnabled
8270
8284
  };
8271
8285
  if (e > 0) {
8272
8286
  if (eModeConfigs[e]?.label && eModeConfigs[e]?.label !== "") {
@@ -8332,6 +8346,8 @@ function parseYLDRCall(chainId, lender, additionalYields, prices, tokenList) {
8332
8346
  const price = prices[oracleKey] ?? 0;
8333
8347
  const totalDepositsUSD = Number(totalAToken) * price;
8334
8348
  const totalDebtUSD = Number(totalVariableDebt) * price;
8349
+ const usageAsCollateralEnabled = configData?.[5 /* usageAsCollateralEnabled */];
8350
+ const borrowingEnabled = configData?.[6 /* borrowingEnabled */];
8335
8351
  resultReserves[asset] = {
8336
8352
  poolId: asset,
8337
8353
  underlying: asset,
@@ -8370,15 +8386,17 @@ function parseYLDRCall(chainId, lender, additionalYields, prices, tokenList) {
8370
8386
  collateralFactor: Number(
8371
8387
  configData?.[2 /* liquidationThreshold */]?.toString()
8372
8388
  ) / BPS,
8373
- borrowFactor: 1
8389
+ borrowFactor: 1,
8390
+ collateralDisabled: !usageAsCollateralEnabled,
8391
+ debtDisabled: !borrowingEnabled
8374
8392
  }
8375
8393
  },
8376
8394
  liquidationBonus: Number(
8377
8395
  configData?.[3 /* liquidationBonus */]?.toString()
8378
8396
  ) / BPS,
8379
8397
  // flags
8380
- collateralActive: configData?.[5 /* usageAsCollateralEnabled */],
8381
- borrowingEnabled: configData?.[6 /* borrowingEnabled */],
8398
+ collateralActive: usageAsCollateralEnabled,
8399
+ borrowingEnabled,
8382
8400
  hasStable: false,
8383
8401
  isActive: configData?.[7 /* isActive */],
8384
8402
  isFrozen: configData?.[8 /* isFrozen */]
@@ -8480,10 +8498,8 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
8480
8498
  rewards: {}
8481
8499
  };
8482
8500
  const assetIndex = lowerReservesList.indexOf(asset);
8483
- const activeEmodes = allModes.map(
8484
- (mode) => isReserveEnabledOnBitmap(debtBitmap[mode], assetIndex) || isReserveEnabledOnBitmap(collateralBitmap[mode], assetIndex) ? mode : -1
8485
- ).filter((m) => m !== void 0 && m > 0);
8486
- activeEmodes.length === 0 ? 0 : activeEmodes[0];
8501
+ const usageAsCollateralEnabled = configData?.[5 /* usageAsCollateralEnabled */];
8502
+ const borrowingEnabled = configData?.[6 /* borrowingEnabled */];
8487
8503
  resultReserves[asset] = {
8488
8504
  ...resultReserves[asset],
8489
8505
  decimals: Number(
@@ -8498,11 +8514,13 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
8498
8514
  debtBitmap,
8499
8515
  assetIndex,
8500
8516
  eModeConfigs,
8501
- allModes
8517
+ allModes,
8518
+ usageAsCollateralEnabled,
8519
+ borrowingEnabled
8502
8520
  ),
8503
8521
  // flags
8504
- collateralActive: configData?.[5 /* usageAsCollateralEnabled */],
8505
- borrowingEnabled: configData?.[6 /* borrowingEnabled */],
8522
+ collateralActive: usageAsCollateralEnabled,
8523
+ borrowingEnabled,
8506
8524
  hasStable: configData?.[7 /* stableBorrowRateEnabled */],
8507
8525
  isActive: configData?.[8 /* isActive */],
8508
8526
  isFrozen: configData?.[9 /* isFrozen */],
@@ -8609,7 +8627,9 @@ var getInitReservesDataConverter = (lender, chainId, prices, additionalYields, t
8609
8627
  ),
8610
8628
  maxHealthAfterLiq: Number(
8611
8629
  parseRawAmount(multicallData.maxHealthAfterLiq, 18)
8612
- )
8630
+ ),
8631
+ debtDisabled: false,
8632
+ collateralDisabled: false
8613
8633
  };
8614
8634
  if (!eModes[mode]) eModes[mode] = modeData;
8615
8635
  result[asset].config[mode] = modeData;
@@ -8680,7 +8700,9 @@ var getCompoundV3ReservesDataConverter = (lender, chainId, prices, additionalYie
8680
8700
  resultsAssetInfo.liquidateCollateralFactor.toString(),
8681
8701
  COMET_RISK_DECIMALS
8682
8702
  ),
8683
- borrowFactor: 1
8703
+ borrowFactor: 1,
8704
+ collateralDisabled: false,
8705
+ debtDisabled: true
8684
8706
  }
8685
8707
  },
8686
8708
  supplyCap: parseRawAmount(
@@ -8744,7 +8766,10 @@ var getCompoundV3ReservesDataConverter = (lender, chainId, prices, additionalYie
8744
8766
  // collateral factors
8745
8767
  borrowCollateralFactor: 0,
8746
8768
  collateralFactor: 0,
8747
- borrowFactor: 1
8769
+ borrowFactor: 1,
8770
+ // base asset: borrowable, no collateral
8771
+ collateralDisabled: true,
8772
+ debtDisabled: false
8748
8773
  }
8749
8774
  },
8750
8775
  // interest rates
@@ -10948,7 +10973,9 @@ function convertMarketsToMorphoResponse(response, chainId, additionalYields = {
10948
10973
  category: 0,
10949
10974
  borrowCollateralFactor: 0,
10950
10975
  collateralFactor: 0,
10951
- borrowFactor: 1
10976
+ borrowFactor: 1,
10977
+ collateralDisabled: true,
10978
+ debtDisabled: false
10952
10979
  }
10953
10980
  },
10954
10981
  collateralActive: false,
@@ -10989,7 +11016,9 @@ function convertMarketsToMorphoResponse(response, chainId, additionalYields = {
10989
11016
  category: 0,
10990
11017
  borrowCollateralFactor: ltv,
10991
11018
  collateralFactor: ltv,
10992
- borrowFactor: 1
11019
+ borrowFactor: 1,
11020
+ collateralDisabled: false,
11021
+ debtDisabled: true
10993
11022
  }
10994
11023
  },
10995
11024
  collateralActive: true,
@@ -11647,7 +11676,9 @@ function getMorphoMarketDataConverter(lender, chainId, prices, additionalYields
11647
11676
  category: 0,
11648
11677
  borrowCollateralFactor: 0,
11649
11678
  collateralFactor: 0,
11650
- borrowFactor: 1
11679
+ borrowFactor: 1,
11680
+ collateralDisabled: true,
11681
+ debtDisabled: false
11651
11682
  }
11652
11683
  },
11653
11684
  collateralActive: false,
@@ -11683,7 +11714,9 @@ function getMorphoMarketDataConverter(lender, chainId, prices, additionalYields
11683
11714
  category: 0,
11684
11715
  borrowCollateralFactor: ltv,
11685
11716
  collateralFactor: ltv,
11686
- borrowFactor: 1
11717
+ borrowFactor: 1,
11718
+ collateralDisabled: false,
11719
+ debtDisabled: true
11687
11720
  }
11688
11721
  },
11689
11722
  collateralActive: true,
@@ -11808,7 +11841,9 @@ function getListaMarketDataConverter(lender, chainId, prices, additionalYields =
11808
11841
  category: 0,
11809
11842
  borrowCollateralFactor: 0,
11810
11843
  collateralFactor: 0,
11811
- borrowFactor: 1
11844
+ borrowFactor: 1,
11845
+ collateralDisabled: true,
11846
+ debtDisabled: false
11812
11847
  }
11813
11848
  },
11814
11849
  collateralActive: false,
@@ -11843,7 +11878,9 @@ function getListaMarketDataConverter(lender, chainId, prices, additionalYields =
11843
11878
  category: 0,
11844
11879
  borrowCollateralFactor: ltv,
11845
11880
  collateralFactor: ltv,
11846
- borrowFactor: 1
11881
+ borrowFactor: 1,
11882
+ collateralDisabled: false,
11883
+ debtDisabled: true
11847
11884
  }
11848
11885
  },
11849
11886
  collateralActive: true,
@@ -12418,6 +12455,8 @@ function convertSingleReserveEntry(opts) {
12418
12455
  const pausedActions = currentEntry.pausedActions;
12419
12456
  const allPaused = pausedActions[0 /* MINT */] && pausedActions[2 /* BORROW */] && pausedActions[1 /* REDEEM */] && pausedActions[3 /* REPAY */];
12420
12457
  const poolId = asset.address;
12458
+ const collateralActive = Boolean(currentEntry?.isListed);
12459
+ const borrowingEnabled = Boolean(currentEntry?.isBorrowAllowed) && !pausedActions[2 /* BORROW */];
12421
12460
  return {
12422
12461
  poolId,
12423
12462
  asset,
@@ -12440,7 +12479,9 @@ function convertSingleReserveEntry(opts) {
12440
12479
  // collateral factors
12441
12480
  borrowCollateralFactor: Number(borrowCollateralFactor),
12442
12481
  collateralFactor: Number(borrowCollateralFactor),
12443
- borrowFactor: 1
12482
+ borrowFactor: 1,
12483
+ collateralDisabled: !collateralActive,
12484
+ debtDisabled: !borrowingEnabled
12444
12485
  }
12445
12486
  },
12446
12487
  hasStable: false,
@@ -12449,14 +12490,14 @@ function convertSingleReserveEntry(opts) {
12449
12490
  // compSupplySpeed: parseRawAmount(currentEntry?.venusSupplySpeed?.toString(), 5),
12450
12491
  // compBorrowSpeed: parseRawAmount(currentEntry?.venusBorrowSpeed?.toString(), 5),
12451
12492
  isActive: Boolean(currentEntry?.isListed) && !allPaused,
12452
- collateralActive: Boolean(currentEntry?.isListed),
12453
12493
  isFrozen: pausedActions[0 /* MINT */] && pausedActions[2 /* BORROW */],
12454
12494
  rewards: {},
12455
12495
  state: {
12456
12496
  exchangeRateCurrent: exchangeRateRaw.toString(),
12457
12497
  cTokenDecimals: Number(currentEntry?.cTokenDecimals?.toString())
12458
12498
  },
12459
- borrowingEnabled: Boolean(currentEntry?.isBorrowAllowed) && !pausedActions[2 /* BORROW */]
12499
+ collateralActive,
12500
+ borrowingEnabled
12460
12501
  // borrowCap example left commented as in original:
12461
12502
  // borrowCap: parseRawAmount(currentEntry?.borrowCap?.toString(), decs),
12462
12503
  };