@1delta/margin-fetcher 0.0.63 → 0.0.65

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
@@ -6637,133 +6637,6 @@ var buildAaveV2StyleLenderReserveCall = (chainId, lender) => {
6637
6637
  }
6638
6638
  };
6639
6639
 
6640
- // src/lending/aave-v3-type/publicCallBuild.ts
6641
- var AAVE_V3_EMODES = [0, 1, 2, 3, 4, 5, 6];
6642
- function yldrBaseline(assetsToQuery, providerAddress) {
6643
- return assetsToQuery.flatMap((tk) => [
6644
- {
6645
- address: providerAddress,
6646
- name: "getReserveData",
6647
- params: [tk]
6648
- },
6649
- {
6650
- address: providerAddress,
6651
- name: "getReserveConfigurationData",
6652
- params: [tk]
6653
- }
6654
- ]);
6655
- }
6656
- function aaveV3baseline(assetsToQuery, providerAddress, poolAddress, legacy = false) {
6657
- const callDecimals = {
6658
- address: providerAddress,
6659
- name: "getDebtCeilingDecimals",
6660
- params: []
6661
- };
6662
- const callReservesList = {
6663
- address: poolAddress,
6664
- name: "getReservesList",
6665
- params: []
6666
- };
6667
- const callsBase = assetsToQuery.flatMap((tk) => [
6668
- {
6669
- address: providerAddress,
6670
- name: "getReserveData",
6671
- params: [tk]
6672
- },
6673
- {
6674
- address: providerAddress,
6675
- name: "getReserveConfigurationData",
6676
- params: [tk]
6677
- },
6678
- {
6679
- address: providerAddress,
6680
- name: "getSiloedBorrowing",
6681
- params: [tk]
6682
- },
6683
- {
6684
- address: providerAddress,
6685
- name: "getReserveCaps",
6686
- params: [tk]
6687
- },
6688
- {
6689
- address: providerAddress,
6690
- name: "getDebtCeiling",
6691
- params: [tk]
6692
- },
6693
- ...legacy ? [
6694
- {
6695
- address: providerAddress,
6696
- name: "getReserveEModeCategory",
6697
- params: [tk]
6698
- }
6699
- ] : []
6700
- ]);
6701
- return {
6702
- callsBase,
6703
- callReservesList,
6704
- callDecimals
6705
- };
6706
- }
6707
- var buildAaveV3StyleLenderReserveCall = (chainId, lender) => {
6708
- const providerAddress = getAaveTypePoolDataProviderAddress(chainId, lender);
6709
- const assetsToQuery = getAaveAssets(chainId, lender);
6710
- const poolAddress = getAaveTypePoolAddress(chainId, lender);
6711
- if (isAaveV32Type(lender)) {
6712
- const getEModeCategoryData = AAVE_V3_EMODES.flatMap((eMode) => {
6713
- return [
6714
- {
6715
- address: poolAddress,
6716
- name: "getEModeCategoryData",
6717
- params: [eMode]
6718
- },
6719
- {
6720
- address: poolAddress,
6721
- name: "getEModeCategoryBorrowableBitmap",
6722
- params: [eMode]
6723
- },
6724
- {
6725
- address: poolAddress,
6726
- name: "getEModeCategoryCollateralBitmap",
6727
- params: [eMode]
6728
- }
6729
- ];
6730
- });
6731
- const { callDecimals, callReservesList, callsBase } = aaveV3baseline(
6732
- assetsToQuery,
6733
- providerAddress,
6734
- poolAddress
6735
- );
6736
- const calls = [
6737
- ...callsBase,
6738
- ...getEModeCategoryData,
6739
- callReservesList,
6740
- callDecimals
6741
- ];
6742
- return calls;
6743
- }
6744
- switch (lender) {
6745
- case Lender.YLDR: {
6746
- const calls = yldrBaseline(assetsToQuery, providerAddress);
6747
- return calls;
6748
- }
6749
- default: {
6750
- const getEModeCategoryData = AAVE_V3_EMODES.flatMap((eMode) => ({
6751
- address: poolAddress,
6752
- name: "getEModeCategoryData",
6753
- params: [eMode]
6754
- }));
6755
- const { callDecimals, callsBase } = aaveV3baseline(
6756
- assetsToQuery,
6757
- providerAddress,
6758
- poolAddress,
6759
- true
6760
- );
6761
- const calls = [...callsBase, ...getEModeCategoryData, callDecimals];
6762
- return calls;
6763
- }
6764
- }
6765
- };
6766
-
6767
6640
  // ../../node_modules/.pnpm/@1delta+chain-registry@0.0.2/node_modules/@1delta/chain-registry/dist/index.mjs
6768
6641
  var Chain = /* @__PURE__ */ ((Chain2) => {
6769
6642
  Chain2["ETHEREUM_MAINNET"] = "1";
@@ -7859,6 +7732,154 @@ var Chain = /* @__PURE__ */ ((Chain2) => {
7859
7732
  return Chain2;
7860
7733
  })(Chain || {});
7861
7734
 
7735
+ // src/lending/aave-v3-type/publicCallBuild.ts
7736
+ function range(n) {
7737
+ return Array.from({ length: n + 1 }, (_2, i) => i);
7738
+ }
7739
+ var AAVE_V3_EMODES = (chain, lender) => {
7740
+ if (chain === Chain.ETHEREUM_MAINNET) {
7741
+ if (lender === Lender.AAVE_V3) return range(33);
7742
+ if (lender === Lender.AAVE_V3_PRIME) return range(10);
7743
+ }
7744
+ if (chain === Chain.ARBITRUM_ONE) {
7745
+ if (lender === Lender.AAVE_V3) return range(10);
7746
+ }
7747
+ if (chain === Chain.BASE) {
7748
+ if (lender === Lender.AAVE_V3) return range(12);
7749
+ }
7750
+ return [0, 1, 2, 3, 4, 5, 6];
7751
+ };
7752
+ function yldrBaseline(assetsToQuery, providerAddress) {
7753
+ return assetsToQuery.flatMap((tk) => [
7754
+ {
7755
+ address: providerAddress,
7756
+ name: "getReserveData",
7757
+ params: [tk]
7758
+ },
7759
+ {
7760
+ address: providerAddress,
7761
+ name: "getReserveConfigurationData",
7762
+ params: [tk]
7763
+ }
7764
+ ]);
7765
+ }
7766
+ function aaveV3baseline(assetsToQuery, providerAddress, poolAddress, legacy = false) {
7767
+ const callDecimals = {
7768
+ address: providerAddress,
7769
+ name: "getDebtCeilingDecimals",
7770
+ params: []
7771
+ };
7772
+ const callReservesList = {
7773
+ address: poolAddress,
7774
+ name: "getReservesList",
7775
+ params: []
7776
+ };
7777
+ const callsBase = assetsToQuery.flatMap((tk) => [
7778
+ {
7779
+ address: providerAddress,
7780
+ name: "getReserveData",
7781
+ params: [tk]
7782
+ },
7783
+ {
7784
+ address: providerAddress,
7785
+ name: "getReserveConfigurationData",
7786
+ params: [tk]
7787
+ },
7788
+ {
7789
+ address: providerAddress,
7790
+ name: "getSiloedBorrowing",
7791
+ params: [tk]
7792
+ },
7793
+ {
7794
+ address: providerAddress,
7795
+ name: "getReserveCaps",
7796
+ params: [tk]
7797
+ },
7798
+ {
7799
+ address: providerAddress,
7800
+ name: "getDebtCeiling",
7801
+ params: [tk]
7802
+ },
7803
+ ...legacy ? [
7804
+ {
7805
+ address: providerAddress,
7806
+ name: "getReserveEModeCategory",
7807
+ params: [tk]
7808
+ }
7809
+ ] : []
7810
+ ]);
7811
+ return {
7812
+ callsBase,
7813
+ callReservesList,
7814
+ callDecimals
7815
+ };
7816
+ }
7817
+ var buildAaveV3StyleLenderReserveCall = (chainId, lender) => {
7818
+ const providerAddress = getAaveTypePoolDataProviderAddress(chainId, lender);
7819
+ const assetsToQuery = getAaveAssets(chainId, lender);
7820
+ const poolAddress = getAaveTypePoolAddress(chainId, lender);
7821
+ if (isAaveV32Type(lender)) {
7822
+ const getEModeCategoryData = AAVE_V3_EMODES(
7823
+ chainId,
7824
+ lender
7825
+ ).flatMap((eMode) => {
7826
+ return [
7827
+ {
7828
+ address: poolAddress,
7829
+ name: "getEModeCategoryData",
7830
+ params: [eMode]
7831
+ },
7832
+ {
7833
+ address: poolAddress,
7834
+ name: "getEModeCategoryBorrowableBitmap",
7835
+ params: [eMode]
7836
+ },
7837
+ {
7838
+ address: poolAddress,
7839
+ name: "getEModeCategoryCollateralBitmap",
7840
+ params: [eMode]
7841
+ }
7842
+ ];
7843
+ });
7844
+ const { callDecimals, callReservesList, callsBase } = aaveV3baseline(
7845
+ assetsToQuery,
7846
+ providerAddress,
7847
+ poolAddress
7848
+ );
7849
+ const calls = [
7850
+ ...callsBase,
7851
+ ...getEModeCategoryData,
7852
+ callReservesList,
7853
+ callDecimals
7854
+ ];
7855
+ return calls;
7856
+ }
7857
+ switch (lender) {
7858
+ case Lender.YLDR: {
7859
+ const calls = yldrBaseline(assetsToQuery, providerAddress);
7860
+ return calls;
7861
+ }
7862
+ default: {
7863
+ const getEModeCategoryData = AAVE_V3_EMODES(
7864
+ chainId,
7865
+ lender
7866
+ ).flatMap((eMode) => ({
7867
+ address: poolAddress,
7868
+ name: "getEModeCategoryData",
7869
+ params: [eMode]
7870
+ }));
7871
+ const { callDecimals, callsBase } = aaveV3baseline(
7872
+ assetsToQuery,
7873
+ providerAddress,
7874
+ poolAddress,
7875
+ true
7876
+ );
7877
+ const calls = [...callsBase, ...getEModeCategoryData, callDecimals];
7878
+ return calls;
7879
+ }
7880
+ }
7881
+ };
7882
+
7862
7883
  // src/lending/addresses/init.ts
7863
7884
  function getInitLensAddress(chainId) {
7864
7885
  return addressesInitCore.PublicLens[chainId];
@@ -8252,7 +8273,8 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
8252
8273
  );
8253
8274
  default: {
8254
8275
  const assetsToQuery = getAaveAssets(chainId, lender);
8255
- const expectedNumberOfCalls = assetsToQuery.length * 6 + AAVE_V3_EMODES.length + 1;
8276
+ const allModes = AAVE_V3_EMODES(chainId, lender);
8277
+ const expectedNumberOfCalls = assetsToQuery.length * 6 + allModes.length + 1;
8256
8278
  return [
8257
8279
  (data) => {
8258
8280
  if (data.length !== expectedNumberOfCalls) {
@@ -8260,12 +8282,12 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
8260
8282
  }
8261
8283
  const emodeDataResult = data.slice(
8262
8284
  assetsToQuery.length * 6,
8263
- assetsToQuery.length * 6 + AAVE_V3_EMODES.length
8285
+ assetsToQuery.length * 6 + allModes.length
8264
8286
  );
8265
8287
  const resultReserves = {};
8266
8288
  const decimalsCeiling = data[expectedNumberOfCalls - 1];
8267
8289
  let eModeConfigs = {};
8268
- AAVE_V3_EMODES.map((mode, index) => {
8290
+ allModes.map((mode, index) => {
8269
8291
  const rawCfg = emodeDataResult[index];
8270
8292
  if (mode === 0 || rawCfg?.label !== "")
8271
8293
  eModeConfigs[mode] = {
@@ -8339,7 +8361,8 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
8339
8361
  configData?.[2 /* liquidationThreshold */]
8340
8362
  ) / BPS,
8341
8363
  eModeCategory,
8342
- eModeConfigs
8364
+ eModeConfigs,
8365
+ allModes
8343
8366
  ),
8344
8367
  // flags
8345
8368
  collateralActive: configData?.[5 /* usageAsCollateralEnabled */],
@@ -8369,9 +8392,9 @@ var getAaveV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
8369
8392
  }
8370
8393
  }
8371
8394
  };
8372
- var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, eModeConfigs) => {
8395
+ var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, eModeConfigs, allModes) => {
8373
8396
  let data = {};
8374
- AAVE_V3_EMODES.forEach((e) => {
8397
+ allModes.forEach((e) => {
8375
8398
  data[e] = {
8376
8399
  category: e,
8377
8400
  borrowCollateralFactor,
@@ -8393,9 +8416,9 @@ var populateEModes = (borrowCollateralFactor, collateralFactor, eModeCategory, e
8393
8416
  });
8394
8417
  return data;
8395
8418
  };
8396
- var populateEModes32 = (borrowCollateralFactor, collateralFactor, collateralBitmap, debtBitmap, assetIndex, eModeConfigs) => {
8419
+ var populateEModes32 = (borrowCollateralFactor, collateralFactor, collateralBitmap, debtBitmap, assetIndex, eModeConfigs, allModes) => {
8397
8420
  let data = {};
8398
- AAVE_V3_EMODES.forEach((e) => {
8421
+ allModes.forEach((e) => {
8399
8422
  data[e] = {
8400
8423
  category: e,
8401
8424
  borrowCollateralFactor,
@@ -8519,7 +8542,8 @@ function parseYLDRCall(chainId, lender, additionalYields, prices, tokenList) {
8519
8542
  }
8520
8543
  function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
8521
8544
  const assetsToQuery = getAaveAssets(chainId, lender);
8522
- const expectedNumberOfCalls = assetsToQuery.length * 5 + AAVE_V3_EMODES.length * 3 + 2;
8545
+ const allModes = AAVE_V3_EMODES(chainId, lender);
8546
+ const expectedNumberOfCalls = assetsToQuery.length * 5 + allModes.length * 3 + 2;
8523
8547
  return [
8524
8548
  (data) => {
8525
8549
  if (data.length !== expectedNumberOfCalls) {
@@ -8527,7 +8551,7 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
8527
8551
  }
8528
8552
  const emodeDataResult = data.slice(
8529
8553
  assetsToQuery.length * 5,
8530
- assetsToQuery.length * 5 + AAVE_V3_EMODES.length * 3
8554
+ assetsToQuery.length * 5 + allModes.length * 3
8531
8555
  );
8532
8556
  const resultReserves = {};
8533
8557
  const reservesList = data[expectedNumberOfCalls - 2];
@@ -8535,7 +8559,7 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
8535
8559
  let eModeConfigs = {};
8536
8560
  let collateralBitmap = {};
8537
8561
  let debtBitmap = {};
8538
- AAVE_V3_EMODES.map((mode, index) => {
8562
+ allModes.map((mode, index) => {
8539
8563
  const rawCfg = emodeDataResult[3 * index];
8540
8564
  if (rawCfg && (mode === 0 || rawCfg?.label !== ""))
8541
8565
  eModeConfigs[mode] = {
@@ -8602,7 +8626,7 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
8602
8626
  rewards: {}
8603
8627
  };
8604
8628
  const assetIndex = lowerReservesList.indexOf(asset);
8605
- const activeEmodes = AAVE_V3_EMODES.map(
8629
+ const activeEmodes = allModes.map(
8606
8630
  (mode) => isReserveEnabledOnBitmap(debtBitmap[mode], assetIndex) || isReserveEnabledOnBitmap(collateralBitmap[mode], assetIndex) ? mode : -1
8607
8631
  ).filter((m) => m !== void 0 && m > 0);
8608
8632
  const eModeCategory = activeEmodes.length === 0 ? 0 : activeEmodes[0];
@@ -8619,7 +8643,8 @@ function parseAave32(chainId, lender, prices, additionalYields, tokenList) {
8619
8643
  collateralBitmap,
8620
8644
  debtBitmap,
8621
8645
  assetIndex,
8622
- eModeConfigs
8646
+ eModeConfigs,
8647
+ allModes
8623
8648
  ),
8624
8649
  // flags
8625
8650
  collateralActive: configData?.[5 /* usageAsCollateralEnabled */],
@@ -18398,7 +18423,7 @@ var URL = `https://coins.llama.fi/prices/current/${[
18398
18423
  datasManta,
18399
18424
  datasTelos,
18400
18425
  datasbsc
18401
- ].join(",")}?searchWidth=4h`;
18426
+ ].join(",")}`;
18402
18427
  var URL_HIST = (ref) => `https://coins.llama.fi/prices/historical/${ref}/${[
18403
18428
  datasEthereum,
18404
18429
  datasAvalanche,
@@ -18415,7 +18440,7 @@ var URL_HIST = (ref) => `https://coins.llama.fi/prices/historical/${ref}/${[
18415
18440
  datasSonic,
18416
18441
  datasSolana,
18417
18442
  datasbsc
18418
- ].join(",")}?searchWidth=4h`;
18443
+ ].join(",")}`;
18419
18444
  var SYMBOL_MAP = {
18420
18445
  weth: "WETH",
18421
18446
  usde: "USDE",