@1delta/margin-fetcher 0.0.28 → 0.0.30

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.
Files changed (30) hide show
  1. package/dist/lending/user-data/aave-v2-type/userCallParse.d.ts.map +1 -1
  2. package/dist/lending/user-data/aave-v2-type/userCallParse.js +2 -3
  3. package/dist/lending/user-data/compound-v3/userCallParse.d.ts.map +1 -1
  4. package/dist/lending/user-data/compound-v3/userCallParse.js +1 -2
  5. package/dist/lending/user-data/fetchUserData.d.ts.map +1 -1
  6. package/dist/lending/user-data/morpho/userCallParse.d.ts.map +1 -1
  7. package/dist/lending/user-data/morpho/userCallParse.js +43 -34
  8. package/dist/prices/defillama/index.d.ts.map +1 -1
  9. package/dist/prices/defillama/index.js +28 -7
  10. package/dist/prices/main-prices/addresses/morpho.d.ts.map +1 -1
  11. package/dist/prices/main-prices/addresses/morpho.js +353 -325
  12. package/dist/prices/main-prices/fetchOracleData.js +4 -2
  13. package/dist/yields/index.d.ts.map +1 -1
  14. package/dist/yields/index.js +57 -8
  15. package/package.json +2 -2
  16. package/src/lending/user-data/aave-v2-type/userCallParse.ts +2 -3
  17. package/src/lending/user-data/compound-v3/userCallParse.ts +1 -2
  18. package/src/lending/user-data/fetchUserData.ts +1 -0
  19. package/src/lending/user-data/morpho/userCallParse.ts +65 -51
  20. package/src/prices/defillama/index.ts +29 -8
  21. package/src/prices/main-prices/addresses/morpho.ts +353 -325
  22. package/src/prices/main-prices/fetchOracleData.ts +5 -2
  23. package/src/yields/index.ts +67 -7
  24. package/test/mainPriceMB.test.ts +1 -2
  25. package/test/mainPrices.test.ts +1 -1
  26. package/test/morphoPrice.test.ts +1 -1
  27. package/test/userDataAll.test.ts +1 -4
  28. package/test/userDataMorpho.test.ts +1 -1
  29. package/test/userDataMorphoEthereum.test.ts +77 -0
  30. package/test/userDataMorphoKatana.test.ts +75 -0
@@ -1 +1 @@
1
- {"version":3,"file":"userCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/aave-v2-type/userCallParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAE/C,OAAO,EAAgC,yBAAyB,EAAmB,MAAM,UAAU,CAAA;AAQnG,eAAO,MAAM,0BAA0B,GACrC,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,YAAY;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACvC,YAAY,GAAG,KACd,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,yBAAyB,GAAG,SAAS,EAAE,MAAM,CA0QjE,CAAA"}
1
+ {"version":3,"file":"userCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/aave-v2-type/userCallParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAE/C,OAAO,EAAgC,yBAAyB,EAAmB,MAAM,UAAU,CAAA;AAOnG,eAAO,MAAM,0BAA0B,GACrC,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,YAAY;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACvC,YAAY,GAAG,KACd,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,yBAAyB,GAAG,SAAS,EAAE,MAAM,CA0QjE,CAAA"}
@@ -4,7 +4,6 @@ import { AaveV2TypeGetUserReserveData } from "../types";
4
4
  import { AURELIUS_REWARD_ASSETS } from "../../aave-v2-type/misc";
5
5
  import { getLenderAssets } from "../../../utils";
6
6
  import { createBaseTypeUserState } from "../utils";
7
- import { Asset as SupportedAssets } from "@1delta/asset-registry";
8
7
  import { parseRawAmount } from "../../../utils/parsing";
9
8
  export const getAaveV2UserDataConverter = (lender, chainId, account, prices, pricesHist, lenderData) => {
10
9
  switch (lender) {
@@ -88,7 +87,7 @@ export const getAaveV2UserDataConverter = (lender, chainId, account, prices, pri
88
87
  const rewards = {};
89
88
  const earnedBalances = data[expectedNumberOfCalls - 1];
90
89
  const lendRewards = Number(parseRawAmount(earnedBalances[0].toString(), 18));
91
- rewards[SupportedAssets.LEND] = { totalRewards: lendRewards + totalClaimableLend, claimableRewards: totalClaimableLend };
90
+ rewards["LEND"] = { totalRewards: lendRewards + totalClaimableLend, claimableRewards: totalClaimableLend };
92
91
  const payload = {
93
92
  chainId,
94
93
  account,
@@ -139,7 +138,7 @@ export const getAaveV2UserDataConverter = (lender, chainId, account, prices, pri
139
138
  lendingPositions[asset] = dataForAsset;
140
139
  }
141
140
  const rewards = {};
142
- rewards[SupportedAssets.TAIKO] = {
141
+ rewards["TAIKO"] = {
143
142
  totalRewards,
144
143
  claimableRewards: totalClaimableRewards
145
144
  };
@@ -1 +1 @@
1
- {"version":3,"file":"userCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/compound-v3/userCallParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAYxD,eAAO,MAAM,8BAA8B,GACzC,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,YAAY;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACvC,YAAY,GAAG,KACd,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,6BAA6B,GAAG,SAAS,EAAE,MAAM,CAmHrE,CAAA"}
1
+ {"version":3,"file":"userCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/compound-v3/userCallParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAWxD,eAAO,MAAM,8BAA8B,GACzC,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,YAAY;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACvC,YAAY,GAAG,KACd,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,6BAA6B,GAAG,SAAS,EAAE,MAAM,CAmHrE,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import { getAssetMeta, getCompoundV3Assets, toGenericPriceKey, toOracleKey, } from '../../../assets';
2
2
  import { getCompoundV3BaseAsset } from '../../addresses/compoundV3';
3
3
  import { parseRawAmount } from '../../../utils/parsing';
4
- import { Asset as SupportedAssets } from '@1delta/asset-registry';
5
4
  import { createBaseTypeUserState } from '../utils';
6
5
  export const getCompoundV3UserDataConverter = (lender, chainId, account, prices, pricesHist, lenderData) => {
7
6
  const assetAddresses = getCompoundV3Assets(chainId, lender);
@@ -84,7 +83,7 @@ export const getCompoundV3UserDataConverter = (lender, chainId, account, prices,
84
83
  chainId,
85
84
  baseAsset,
86
85
  rewards: {
87
- [SupportedAssets.COMP]: {
86
+ ['COMP']: {
88
87
  totalRewards: compRewards,
89
88
  claimableRewards: compRewards,
90
89
  },
@@ -1 +1 @@
1
- {"version":3,"file":"fetchUserData.d.ts","sourceRoot":"","sources":["../../../src/lending/user-data/fetchUserData.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,eAAe,EAAuB,MAAM,SAAS,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AA6FlD;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,GAClC,SAAS,MAAM,EACf,YAAY,eAAe,EAAE,EAC7B,cAAc,oBAAoB,EAClC,sBAAmB,EACnB,kBAAwC,EACxC,gBAAW,EACX,cAAY,KACX,OAAO,CAAC,GAAG,EAAE,CA+Bf,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,GACtC,SAAS,MAAM,EACf,YAAY,eAAe,EAAE,EAC7B,YAAY,GAAG,EAAE,EACjB,QAAQ,GAAG,EACX,YAAY,GAAG,EACf,aAAa,GAAG,KACf;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;CAsCzB,CAAA"}
1
+ {"version":3,"file":"fetchUserData.d.ts","sourceRoot":"","sources":["../../../src/lending/user-data/fetchUserData.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,eAAe,EAAuB,MAAM,SAAS,CAAA;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AA6FlD;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,GAClC,SAAS,MAAM,EACf,YAAY,eAAe,EAAE,EAC7B,cAAc,oBAAoB,EAClC,sBAAmB,EACnB,kBAAwC,EACxC,gBAAW,EACX,cAAY,KACX,OAAO,CAAC,GAAG,EAAE,CAgCf,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,GACtC,SAAS,MAAM,EACf,YAAY,eAAe,EAAE,EAC7B,YAAY,GAAG,EAAE,EACjB,QAAQ,GAAG,EACX,YAAY,GAAG,EACf,aAAa,GAAG,KACf;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;CAsCzB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"userCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/morpho/userCallParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAE/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAA;AA+CpD,eAAO,MAAM,kCAAkC,GAC7C,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,SAAS,MAAM,EAAE,EACjB,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,YAAY;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACvC,YAAY,GAAG,KACd,CACD,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAAE,GAAG,SAAS,EAC5E,MAAM,CAuFP,CAAA"}
1
+ {"version":3,"file":"userCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/morpho/userCallParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAE/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAA;AAiDpD,eAAO,MAAM,kCAAkC,GAC7C,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,SAAS,MAAM,EAAE,EACjB,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,YAAY;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACvC,YAAY,GAAG,KACd,CACD,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAAE,GAAG,SAAS,EAC5E,MAAM,CAkGP,CAAA"}
@@ -2,6 +2,7 @@ import { getAssetMeta, toGenericPriceKey, toOracleKey } from '../../../assets';
2
2
  import { createBaseTypeUserState } from '../utils';
3
3
  import { parseRawAmount } from '../../../utils/parsing';
4
4
  import { decodePackedDataset } from './decoder';
5
+ const CHUNK_SIZE = 100;
5
6
  const balanceData = {
6
7
  '0': {
7
8
  borrowDiscountedCollateral: 0,
@@ -42,7 +43,7 @@ const userDataEmpty = (account, chainId) => {
42
43
  };
43
44
  };
44
45
  export const getMorphoUserDataConverterWithlens = (lender, chainId, account, markets, prices, pricesHist, lenderData) => {
45
- const expectedNumberOfCalls = Math.ceil(markets.length / 100);
46
+ const expectedNumberOfCalls = Math.ceil(markets.length / CHUNK_SIZE);
46
47
  return [
47
48
  (data) => {
48
49
  // chunksizes depend on markets
@@ -53,36 +54,40 @@ export const getMorphoUserDataConverterWithlens = (lender, chainId, account, mar
53
54
  // to the real chunk
54
55
  // it is
55
56
  // (chunk number) * (chunksize = 100) + index
56
- function mapMarketToChunk(i, c) {
57
- return (c + 1) * 100 + i;
57
+ function mapMarketToChunk(indexInChunk, chunkIndex) {
58
+ return chunkIndex * CHUNK_SIZE + indexInChunk;
58
59
  }
59
60
  let marketsHandled = [];
60
- // de-chunk the calldata
61
- const returnDatas = data.flatMap((d) => decodePackedDataset(d));
62
61
  let datas = {};
63
- for (let i = 0; i < returnDatas.length; i++) {
62
+ // we loop over the return dat
63
+ for (let i = 0; i < data.length; i++) {
64
64
  let totalDebt24h = 0;
65
65
  let totalDeposits24h = 0;
66
- const balanceData = returnDatas[i];
67
- const markeId = markets[mapMarketToChunk(balanceData.index, i)];
68
- marketsHandled.push(markeId);
69
- const market = lenderData[markeId]?.params?.market;
70
- const { dataForMarket, addedDebt, addedDeposits } = createMorphoEntryFromMarketWithLens(balanceData, chainId, market, prices, pricesHist);
71
- totalDebt24h += addedDebt;
72
- totalDeposits24h += addedDeposits;
73
- const payload = {
74
- chainId,
75
- account,
76
- lendingPositions: { '0': dataForMarket },
77
- rewards: {},
78
- userEMode: 0,
79
- };
80
- const userData = createBaseTypeUserState(payload, lenderData[markeId].data, totalDeposits24h, totalDebt24h);
81
- datas[market.lender] = {
82
- ...payload,
83
- ...userData,
84
- id: market.id,
85
- };
66
+ // get balance data array for chunk
67
+ const balanceDatas = decodePackedDataset(data[i]);
68
+ // itereate of balanceDatas received in chunk
69
+ balanceDatas.forEach((balanceData) => {
70
+ // this will get the market by index
71
+ const markeId = markets[mapMarketToChunk(balanceData.index, i)];
72
+ marketsHandled.push(markeId);
73
+ const market = lenderData[markeId]?.params?.market;
74
+ const { dataForMarket, addedDebt, addedDeposits } = createMorphoEntryFromMarketWithLens(balanceData, chainId, market, prices, pricesHist);
75
+ totalDebt24h += addedDebt;
76
+ totalDeposits24h += addedDeposits;
77
+ const payload = {
78
+ chainId,
79
+ account,
80
+ lendingPositions: { '0': dataForMarket },
81
+ rewards: {},
82
+ userEMode: 0,
83
+ };
84
+ const userData = createBaseTypeUserState(payload, lenderData[markeId].data, totalDeposits24h, totalDebt24h);
85
+ datas[market.lender] = {
86
+ ...payload,
87
+ ...userData,
88
+ id: market.id,
89
+ };
90
+ });
86
91
  }
87
92
  for (const marketId of markets) {
88
93
  const pubData = lenderData[marketId];
@@ -116,6 +121,7 @@ function createMorphoEntryFromMarketWithLens(balanceInfo, chainId, market, price
116
121
  // prices
117
122
  const priceLoan = prices[loanKey] ?? 1;
118
123
  const priceHistLoan = pricesHist?.[loanKey] ?? priceLoan;
124
+ // balances
119
125
  const deposits = balanceInfo.supplyAssets;
120
126
  const borrow = balanceInfo.borrowAssets;
121
127
  const collateral = balanceInfo.collateral;
@@ -127,26 +133,29 @@ function createMorphoEntryFromMarketWithLens(balanceInfo, chainId, market, price
127
133
  addedDebt: 0,
128
134
  };
129
135
  const collateralAddress = market.collateralAddress.toLowerCase();
130
- const assetMeta = getAssetMeta(chainId, collateralAddress);
131
- const decimals = market.collateralDecimals ?? assetMeta?.decimals ?? 18;
132
- const depositDec = parseRawAmount(deposits.toString(), market.loanDecimals ?? loanMeta?.decimals ?? 18);
136
+ const collateralAssetMeta = getAssetMeta(chainId, collateralAddress);
137
+ // loan asset deposits
138
+ const loanDepositNumber = parseRawAmount(deposits.toString(), market.loanDecimals ?? loanMeta?.decimals ?? 18);
139
+ // collateral amount
140
+ const decimals = market.collateralDecimals ?? collateralAssetMeta?.decimals ?? 18;
133
141
  const collateralDec = parseRawAmount(collateral.toString(), decimals);
142
+ // borrow asset balance
134
143
  const borrowDec = parseRawAmount(borrow.toString(), market.loanDecimals ?? loanMeta?.decimals ?? 18);
135
144
  const dataForLoanAsset = {
136
145
  poolId: loanAddress,
137
146
  underlying: loanAddress,
138
- deposits: parseRawAmount(deposits.toString(), market.loanDecimals ?? loanMeta?.decimals ?? 18),
147
+ deposits: loanDepositNumber,
139
148
  depositsRaw: deposits.toString(),
140
149
  debtStable: '0',
141
150
  debt: borrowDec,
142
- depositsUSD: Number(depositDec) * priceLoan,
151
+ depositsUSD: Number(loanDepositNumber) * priceLoan,
143
152
  debtStableUSD: 0,
144
153
  debtUSD: Number(borrowDec) * priceLoan,
145
154
  stableBorrowRate: '0',
146
- collateralActive: true,
155
+ collateralActive: false,
147
156
  claimableRewards: 0,
148
157
  };
149
- const key = toOracleKey(assetMeta?.assetGroup) ??
158
+ const key = toOracleKey(collateralAssetMeta?.assetGroup) ??
150
159
  toGenericPriceKey(collateralAddress, chainId);
151
160
  // prices
152
161
  const price = prices[key] ?? 1;
@@ -170,7 +179,7 @@ function createMorphoEntryFromMarketWithLens(balanceInfo, chainId, market, price
170
179
  [loanAddress]: dataForLoanAsset,
171
180
  [collateralAddress]: dataForCollateralAsset,
172
181
  },
173
- addedDeposits: Number(depositDec) * priceHistLoan + Number(collateralDec) * priceHist,
182
+ addedDeposits: Number(loanDepositNumber) * priceHistLoan + Number(collateralDec) * priceHist,
174
183
  addedDebt: Number(borrowDec) * priceHistLoan,
175
184
  };
176
185
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/prices/defillama/index.ts"],"names":[],"mappings":"AA+OA,wBAAsB,kBAAkB,iBAwCvC;AAED,wBAAsB,sBAAsB,iBA4C3C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/prices/defillama/index.ts"],"names":[],"mappings":"AAkQA,wBAAsB,kBAAkB,iBAyCvC;AAED,wBAAsB,sBAAsB,iBA6C3C"}
@@ -1,4 +1,3 @@
1
- import fetch from 'axios';
2
1
  const prefixEthereum = 'ethereum:';
3
2
  const RETH = '0xae78736Cd615f374D3085123A210448E74Fc6393';
4
3
  const WBTC = '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599';
@@ -40,6 +39,10 @@ const EZETH = '0xbf5495Efe5DB9ce00f80364C8B423567e58d2110';
40
39
  const LBTC = '0x8236a87084f8B84306f72007F36F2618A5634494';
41
40
  const BRBTC = '0x2eC37d45FCAE65D9787ECf71dc85a444968f6646';
42
41
  const SDAI = '0x83f20f44975d03b1b09e64809b757c47f942beea';
42
+ const RUSD = '0x09d4214c03d01f49544c0448dbe3a27f768f2b34';
43
+ const USDF = '0xfa2b947eec368f42195f24f36d2af29f7c24cec2';
44
+ const USUAL = '0xc4441c2be5d8fa8126822b9929ca0b81ea0de38e';
45
+ const WOETH = '0xdcee70654261af21c44c093c300ed3bb97b78192';
43
46
  const datasEthereum = [
44
47
  RETH,
45
48
  WBTC,
@@ -81,6 +84,10 @@ const datasEthereum = [
81
84
  LBTC,
82
85
  BRBTC,
83
86
  SDAI,
87
+ RUSD,
88
+ USDF,
89
+ USUAL,
90
+ WOETH,
84
91
  ]
85
92
  .map((d) => prefixEthereum + d)
86
93
  .join(',');
@@ -109,6 +116,9 @@ const prefixHyperEVM = 'hyperliquid:';
109
116
  const WYPE = '0x5555555555555555555555555555555555555555';
110
117
  const WSTHYPE = '0x94e8396e0869c9f2200760af0621afd240e1cf38';
111
118
  const kHYPE = '0xfd739d4e423301ce9385c1fb8850539d657c296d';
119
+ const prefixSolana = 'solana:';
120
+ const JITOSOL = 'J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn';
121
+ const SOL = 'So11111111111111111111111111111111111111112';
112
122
  // const prefixKaia = 'kaia:'
113
123
  // const WKAIA = '0x19aac5f612f524b754ca7e7c41cbfa2e981a4432'
114
124
  const datasAvalanche = [WAVAX, SAVAX].map((d) => prefixAvalanche + d).join(',');
@@ -125,6 +135,7 @@ const datasSonic = [WS].map((d) => prefixSonic + d).join(',');
125
135
  const datasHyperEvm = [WYPE, WSTHYPE, kHYPE]
126
136
  .map((d) => prefixHyperEVM + d)
127
137
  .join(',');
138
+ const datasSolana = [JITOSOL, SOL].map((d) => prefixSolana + d).join(',');
128
139
  // const datasKaia = [WKAIA].map((d) => prefixKaia + d).join(',')
129
140
  const URL = `https://coins.llama.fi/prices/current/${[
130
141
  datasEthereum,
@@ -137,8 +148,9 @@ const URL = `https://coins.llama.fi/prices/current/${[
137
148
  datasFantom,
138
149
  datasHyperEvm,
139
150
  // datasKaia,
140
- datasSonic, //
151
+ datasSonic,
141
152
  datasPolygon,
153
+ datasSolana,
142
154
  ].join(',')}?searchWidth=4h`;
143
155
  const URL_HIST = (ref) => `https://coins.llama.fi/prices/historical/${ref}/${[
144
156
  datasEthereum,
@@ -152,7 +164,8 @@ const URL_HIST = (ref) => `https://coins.llama.fi/prices/historical/${ref}/${[
152
164
  // datasKaia,
153
165
  datasHyperEvm,
154
166
  datasPolygon,
155
- datasSonic, //
167
+ datasSonic,
168
+ datasSolana,
156
169
  ].join(',')}?searchWidth=4h`;
157
170
  const SYMBOL_MAP = {
158
171
  weth: 'WETH',
@@ -218,11 +231,17 @@ const SYMBOL_MAP = {
218
231
  khype: 'Kinetiq Staked HYPE::kHYPE',
219
232
  wsthype: 'Staked HYPE Shares::WSTHYPE',
220
233
  trumatic: 'TRUMATIC',
234
+ rusd: 'Reservoir rUSD::RUSD',
235
+ usdf: 'Falcon Finance::USDF',
236
+ usual: 'Usual::USUAL',
237
+ woeth: 'Wrapped OETH::WOETH',
238
+ jitosol: 'Jito Staked SOL::JitoSOL',
239
+ sol: 'SOL',
221
240
  };
222
241
  export async function fetchDefillamaData() {
223
242
  try {
224
- const res = await fetch(URL);
225
- let prices = Object.assign({}, ...Object.values(res.data.coins).map((k) => {
243
+ const res = await fetch(URL).then((a) => a.json());
244
+ let prices = Object.assign({}, ...Object.values(res.coins).map((k) => {
226
245
  // @ts-ignore
227
246
  return { [SYMBOL_MAP[k.symbol.toLowerCase()]]: k.price };
228
247
  }));
@@ -231,6 +250,7 @@ export async function fetchDefillamaData() {
231
250
  prices['ETH'] = prices['WETH'];
232
251
  prices['S'] = prices['WS'];
233
252
  prices['CORE'] = prices['WCORE'];
253
+ prices['WSOL'] = prices['SOL'];
234
254
  prices['AVAX'] = prices['WAVAX'];
235
255
  prices['METIS'] = prices['WMETIS'];
236
256
  // prices['WKAIA'] = prices['KAIA']
@@ -256,8 +276,8 @@ export async function fetchDefillamaData() {
256
276
  export async function fetchDefillamaHistData() {
257
277
  try {
258
278
  const nowMinus24 = Math.floor(Date.now() / 1000 - 24 * 3600);
259
- const resHist = await fetch(URL_HIST(nowMinus24));
260
- let histPrices = Object.assign({}, ...Object.values(resHist.data.coins).map((k) => {
279
+ const resHist = await fetch(URL_HIST(nowMinus24)).then((a) => a.json());
280
+ let histPrices = Object.assign({}, ...Object.values(resHist.coins).map((k) => {
261
281
  // @ts-ignore
262
282
  return { [SYMBOL_MAP[k.symbol.toLowerCase()]]: k.price };
263
283
  }));
@@ -266,6 +286,7 @@ export async function fetchDefillamaHistData() {
266
286
  histPrices['ETH'] = histPrices['WETH'];
267
287
  histPrices['S'] = histPrices['WS'];
268
288
  histPrices['CORE'] = histPrices['WCORE'];
289
+ histPrices['WSOL'] = histPrices['SOL'];
269
290
  histPrices['AVAX'] = histPrices['WAVAX'];
270
291
  histPrices['METIS'] = histPrices['WMETIS'];
271
292
  histPrices['HYPE'] = histPrices['WHYPE'];
@@ -1 +1 @@
1
- {"version":3,"file":"morpho.d.ts","sourceRoot":"","sources":["../../../../src/prices/main-prices/addresses/morpho.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,iBAAiB,EAAE,MAAM,CAAA;IACzB,uBAAuB,EAAE,MAAM,CAAA;CAChC;AAED,eAAO,MAAM,aAAa,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;CAq9E5D,CAAA"}
1
+ {"version":3,"file":"morpho.d.ts","sourceRoot":"","sources":["../../../../src/prices/main-prices/addresses/morpho.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,iBAAiB,EAAE,MAAM,CAAA;IACzB,uBAAuB,EAAE,MAAM,CAAA;CAChC;AAED,eAAO,MAAM,aAAa,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;CAi/E5D,CAAA"}