@1delta/margin-fetcher 0.0.30 → 0.0.31

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.
@@ -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;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"}
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,CA4FP,CAAA"}
@@ -61,8 +61,6 @@ export const getMorphoUserDataConverterWithlens = (lender, chainId, account, mar
61
61
  let datas = {};
62
62
  // we loop over the return dat
63
63
  for (let i = 0; i < data.length; i++) {
64
- let totalDebt24h = 0;
65
- let totalDeposits24h = 0;
66
64
  // get balance data array for chunk
67
65
  const balanceDatas = decodePackedDataset(data[i]);
68
66
  // itereate of balanceDatas received in chunk
@@ -72,8 +70,6 @@ export const getMorphoUserDataConverterWithlens = (lender, chainId, account, mar
72
70
  marketsHandled.push(markeId);
73
71
  const market = lenderData[markeId]?.params?.market;
74
72
  const { dataForMarket, addedDebt, addedDeposits } = createMorphoEntryFromMarketWithLens(balanceData, chainId, market, prices, pricesHist);
75
- totalDebt24h += addedDebt;
76
- totalDeposits24h += addedDeposits;
77
73
  const payload = {
78
74
  chainId,
79
75
  account,
@@ -81,7 +77,7 @@ export const getMorphoUserDataConverterWithlens = (lender, chainId, account, mar
81
77
  rewards: {},
82
78
  userEMode: 0,
83
79
  };
84
- const userData = createBaseTypeUserState(payload, lenderData[markeId].data, totalDeposits24h, totalDebt24h);
80
+ const userData = createBaseTypeUserState(payload, lenderData[markeId].data, addedDeposits, addedDebt);
85
81
  datas[market.lender] = {
86
82
  ...payload,
87
83
  ...userData,
@@ -179,7 +175,8 @@ function createMorphoEntryFromMarketWithLens(balanceInfo, chainId, market, price
179
175
  [loanAddress]: dataForLoanAsset,
180
176
  [collateralAddress]: dataForCollateralAsset,
181
177
  },
182
- addedDeposits: Number(loanDepositNumber) * priceHistLoan + Number(collateralDec) * priceHist,
178
+ addedDeposits: Number(loanDepositNumber) * priceHistLoan +
179
+ Number(collateralDec) * priceHist,
183
180
  addedDebt: Number(borrowDec) * priceHistLoan,
184
181
  };
185
182
  }
@@ -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;CAi/E5D,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;CAw/E5D,CAAA"}
@@ -1029,6 +1029,13 @@ export const MrophoOracles = {
1029
1029
  loanAssetDecimals: 18,
1030
1030
  collateralAssetDecimals: 18,
1031
1031
  },
1032
+ {
1033
+ oracle: '0xC3dA445C9c4Cd78325C6DCDD314936C2Aa226372',
1034
+ loanAsset: '0xb0f70c0bd6fd87dbeb7c10dc692a2a6106817072',
1035
+ collateralAsset: '0xecac9c5f704e954931349da37f60e39f515c11c1',
1036
+ loanAssetDecimals: 8,
1037
+ collateralAssetDecimals: 8,
1038
+ },
1032
1039
  {
1033
1040
  oracle: '0xB60F728BdcE5e3921C0E42c1a6F07A1313D0040e',
1034
1041
  loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
@@ -1043,13 +1050,6 @@ export const MrophoOracles = {
1043
1050
  loanAssetDecimals: 6,
1044
1051
  collateralAssetDecimals: 18,
1045
1052
  },
1046
- {
1047
- oracle: '0xC3dA445C9c4Cd78325C6DCDD314936C2Aa226372',
1048
- loanAsset: '0xb0f70c0bd6fd87dbeb7c10dc692a2a6106817072',
1049
- collateralAsset: '0xecac9c5f704e954931349da37f60e39f515c11c1',
1050
- loanAssetDecimals: 8,
1051
- collateralAssetDecimals: 8,
1052
- },
1053
1053
  {
1054
1054
  oracle: '0xBa4c6d027b3c08Cb8c21840501Cd04ad6Bb37Cd0',
1055
1055
  loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
@@ -1072,11 +1072,11 @@ export const MrophoOracles = {
1072
1072
  collateralAssetDecimals: 6,
1073
1073
  },
1074
1074
  {
1075
- oracle: '0x970b106C6C1df8276577dBdC8FdA010e418fC1EC',
1076
- loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1077
- collateralAsset: '0xee7d8bcfb72bc1880d0cf19822eb0a2e6577ab62',
1075
+ oracle: '0xD978CE03d8BB0eb3f09cB2a469DbbC25DB42F3Ae',
1076
+ loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
1077
+ collateralAsset: '0x9a6bd7b6fd5c4f87eb66356441502fc7dcdd185b',
1078
1078
  loanAssetDecimals: 6,
1079
- collateralAssetDecimals: 18,
1079
+ collateralAssetDecimals: 6,
1080
1080
  },
1081
1081
  {
1082
1082
  oracle: '0x3C40506CcD8f124f05a900446d38dDA4baAfd82d',
@@ -1086,25 +1086,25 @@ export const MrophoOracles = {
1086
1086
  collateralAssetDecimals: 8,
1087
1087
  },
1088
1088
  {
1089
- oracle: '0xD978CE03d8BB0eb3f09cB2a469DbbC25DB42F3Ae',
1090
- loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
1091
- collateralAsset: '0x9a6bd7b6fd5c4f87eb66356441502fc7dcdd185b',
1089
+ oracle: '0x970b106C6C1df8276577dBdC8FdA010e418fC1EC',
1090
+ loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1091
+ collateralAsset: '0xee7d8bcfb72bc1880d0cf19822eb0a2e6577ab62',
1092
1092
  loanAssetDecimals: 6,
1093
- collateralAssetDecimals: 6,
1093
+ collateralAssetDecimals: 18,
1094
1094
  },
1095
1095
  {
1096
- oracle: '0x2477367cFF71b31b4BE6963e5691859E8fcDF084',
1097
- loanAsset: '0x2dca96907fde857dd3d816880a0df407eeb2d2f2',
1098
- collateralAsset: '0xee7d8bcfb72bc1880d0cf19822eb0a2e6577ab62',
1096
+ oracle: '0x83F4197076614efe8e4c37BB9EFBfeaD08d4719f',
1097
+ loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1098
+ collateralAsset: '0xb0f70c0bd6fd87dbeb7c10dc692a2a6106817072',
1099
1099
  loanAssetDecimals: 6,
1100
- collateralAssetDecimals: 18,
1100
+ collateralAssetDecimals: 8,
1101
1101
  },
1102
1102
  {
1103
- oracle: '0x07A9c82f38aAD9855FaF76D398F9C64a7A12F0AE',
1103
+ oracle: '0x2477367cFF71b31b4BE6963e5691859E8fcDF084',
1104
1104
  loanAsset: '0x2dca96907fde857dd3d816880a0df407eeb2d2f2',
1105
- collateralAsset: '0x0913da6da4b42f538b445599b46bb4622342cf52',
1105
+ collateralAsset: '0xee7d8bcfb72bc1880d0cf19822eb0a2e6577ab62',
1106
1106
  loanAssetDecimals: 6,
1107
- collateralAssetDecimals: 8,
1107
+ collateralAssetDecimals: 18,
1108
1108
  },
1109
1109
  {
1110
1110
  oracle: '0xcC139318686969b9D30Dd62aA206725B269DA40d',
@@ -1114,9 +1114,9 @@ export const MrophoOracles = {
1114
1114
  collateralAssetDecimals: 8,
1115
1115
  },
1116
1116
  {
1117
- oracle: '0x83F4197076614efe8e4c37BB9EFBfeaD08d4719f',
1118
- loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1119
- collateralAsset: '0xb0f70c0bd6fd87dbeb7c10dc692a2a6106817072',
1117
+ oracle: '0x07A9c82f38aAD9855FaF76D398F9C64a7A12F0AE',
1118
+ loanAsset: '0x2dca96907fde857dd3d816880a0df407eeb2d2f2',
1119
+ collateralAsset: '0x0913da6da4b42f538b445599b46bb4622342cf52',
1120
1120
  loanAssetDecimals: 6,
1121
1121
  collateralAssetDecimals: 8,
1122
1122
  },
@@ -1176,6 +1176,13 @@ export const MrophoOracles = {
1176
1176
  loanAssetDecimals: 6,
1177
1177
  collateralAssetDecimals: 8,
1178
1178
  },
1179
+ {
1180
+ oracle: '0xaa9853c78B92606b21cE57Da7F04F301f031Aba4',
1181
+ loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
1182
+ collateralAsset: '0xe007ca01894c863d7898045ed5a3b4abf0b18f37',
1183
+ loanAssetDecimals: 6,
1184
+ collateralAssetDecimals: 18,
1185
+ },
1179
1186
  {
1180
1187
  oracle: '0xcb2d3027Be1Fe4c88fc1840187efCF301Ff7176a',
1181
1188
  loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
@@ -1204,6 +1211,13 @@ export const MrophoOracles = {
1204
1211
  loanAssetDecimals: 6,
1205
1212
  collateralAssetDecimals: 18,
1206
1213
  },
1214
+ {
1215
+ oracle: '0x269013966Ef83A88B75f0573199CF1Cad8c30f82',
1216
+ loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1217
+ collateralAsset: '0xecac9c5f704e954931349da37f60e39f515c11c1',
1218
+ loanAssetDecimals: 6,
1219
+ collateralAssetDecimals: 8,
1220
+ },
1207
1221
  {
1208
1222
  oracle: '0x1c5f3862c913E015eD0a2A9d71E13BE74101F47d',
1209
1223
  loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
@@ -1218,13 +1232,6 @@ export const MrophoOracles = {
1218
1232
  loanAssetDecimals: 6,
1219
1233
  collateralAssetDecimals: 18,
1220
1234
  },
1221
- {
1222
- oracle: '0x269013966Ef83A88B75f0573199CF1Cad8c30f82',
1223
- loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1224
- collateralAsset: '0xecac9c5f704e954931349da37f60e39f515c11c1',
1225
- loanAssetDecimals: 6,
1226
- collateralAssetDecimals: 8,
1227
- },
1228
1235
  {
1229
1236
  oracle: '0xe8F70671Bc494A96332c809d042bD9bF09452B57',
1230
1237
  loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/yields/index.ts"],"names":[],"mappings":"AAgGA,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,qBAAqB,EAAE,GAAG,CAAA;IAC1B,oBAAoB,EAAE,GAAG,CAAA;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;KAAE,CAAA;IACxD,aAAa,EAAE;QACb,CAAC,OAAO,EAAE,MAAM,GAAG;YACjB,CAAC,MAAM,EAAE,MAAM,GAAG;gBAAE,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAAA;aAAE,CAAA;SACzD,CAAA;KACF,CAAA;CACF;AAcD,eAAO,MAAM,kBAAkB,uCA0a9B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/yields/index.ts"],"names":[],"mappings":"AAkGA,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,qBAAqB,EAAE,GAAG,CAAA;IAC1B,oBAAoB,EAAE,GAAG,CAAA;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;KAAE,CAAA;IACxD,aAAa,EAAE;QACb,CAAC,OAAO,EAAE,MAAM,GAAG;YACjB,CAAC,MAAM,EAAE,MAAM,GAAG;gBAAE,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAAA;aAAE,CAAA;SACzD,CAAA;KACF,CAAA;CACF;AAcD,eAAO,MAAM,kBAAkB,uCA4b9B,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import { apyToAprPercent, apyToApr } from '../utils/parsing';
2
+ import { addressToAssetYearn } from './yieldTypes';
2
3
  const hyUSD = 'High Yield USD Base::HYUSD';
3
4
  const bsdETH = 'Based ETH::BSDETH';
4
5
  const wstHype = 'Staked HYPE Shares::WSTHYPE';
@@ -61,6 +62,7 @@ const FeedData = {
61
62
  ETHZERO: 'https://app.usual.money/api/rewards/rates/ETH0',
62
63
  JITOSOL: 'https://www.jito.network/api/getJitoPoolStats/',
63
64
  THBILL: 'https://thbill-api.theo.xyz/snapshots',
65
+ YEARN_KATANA: 'https://katana-apr-service.vercel.app/api/vaults',
64
66
  };
65
67
  const LenderAPIs = {
66
68
  MERIDIAN: 'https://omnidex.bmaa3ajd1gjri.eu-west-2.cs.amazonlightsail.com/lending_yields',
@@ -175,6 +177,18 @@ export const fetchGeneralYields = async () => {
175
177
  const res = await fetch(FeedData.ETHX).then((r) => r.json());
176
178
  return apyToAprPercent(res.value);
177
179
  });
180
+ const yearnKatanaPromise = safeFetch('YEARN_KATANA', async () => {
181
+ const res = await fetch(FeedData.YEARN_KATANA).then((r) => r.json());
182
+ let map = {};
183
+ Object.entries(res).forEach(([addr, data]) => {
184
+ const key = addressToAssetYearn[addr.toLowerCase()];
185
+ if (key) {
186
+ const apr = ((data.apr.netAPR ?? 0) + (data.apr.extra.extrinsicYield ?? 0)) * 100;
187
+ map[key] = apr;
188
+ }
189
+ });
190
+ return map;
191
+ });
178
192
  const osEthPromise = safeFetch('OSETH', async () => {
179
193
  const res = await fetch(FeedData.OSETH, {
180
194
  method: 'POST',
@@ -223,7 +237,7 @@ export const fetchGeneralYields = async () => {
223
237
  const jitoSolPromise = safeFetch('JITOSOL', async () => {
224
238
  const res = await fetch(FeedData.JITOSOL, {
225
239
  method: 'GET',
226
- headers: { Accept: 'application/json' },
240
+ headers: { Accept: 'application/json', 'User-Agent': '1delta/yields' },
227
241
  }).then((r) => r.json());
228
242
  const val = averageDataLastN(res?.getStakePoolStats?.apy, 7);
229
243
  return apyToApr(val) * 100;
@@ -362,7 +376,7 @@ export const fetchGeneralYields = async () => {
362
376
  },
363
377
  })));
364
378
  });
365
- const [wstethData, ezethData, rethData, weethData, stmaticData, methData, maticXdata, susdeData, meridianData, savaxData, cbethData, rsethData, trumaticData, rtokensData, hypeData, osEthData, ethXData, pufEthData, angleData, susdsData, srUsdData, yusdData, rlpData, wstusrData, csusdlData, sdeusdData, rswethData, ynethxData, ethZeroData, usdZeroPlusData, jitoSolData, thBillData,] = await Promise.all([
379
+ const [wstethData, ezethData, rethData, weethData, stmaticData, methData, maticXdata, susdeData, meridianData, savaxData, cbethData, rsethData, trumaticData, rtokensData, hypeData, osEthData, ethXData, pufEthData, angleData, susdsData, srUsdData, yusdData, rlpData, wstusrData, csusdlData, sdeusdData, rswethData, ynethxData, ethZeroData, usdZeroPlusData, jitoSolData, thBillData, yearnKatanaData,] = await Promise.all([
366
380
  wstethPromise,
367
381
  ezethPromise,
368
382
  rethPromise,
@@ -395,6 +409,7 @@ export const fetchGeneralYields = async () => {
395
409
  usdZeroPlusPromise,
396
410
  jitoSolPromise,
397
411
  thbillPromise,
412
+ yearnKatanaPromise,
398
413
  ]);
399
414
  const data = {
400
415
  intrinsicYields: {
@@ -432,6 +447,7 @@ export const fetchGeneralYields = async () => {
432
447
  ...rtokensData,
433
448
  ...hypeData,
434
449
  ...angleData,
450
+ ...yearnKatanaData,
435
451
  },
436
452
  lenderRewards: {
437
453
  '167000': {
@@ -0,0 +1,76 @@
1
+ export type YearnVault = {
2
+ address: string;
3
+ symbol: string;
4
+ name: string;
5
+ chainID: number;
6
+ token: {
7
+ address: string;
8
+ name: string;
9
+ symbol: string;
10
+ description: string;
11
+ decimals: number;
12
+ };
13
+ tvl: {
14
+ totalAssets: string;
15
+ tvl: number;
16
+ price: number;
17
+ };
18
+ apr: {
19
+ type: string;
20
+ netAPR: number | null;
21
+ fees: {
22
+ performance: number;
23
+ management: number;
24
+ };
25
+ points: {
26
+ weekAgo: number;
27
+ monthAgo: number;
28
+ inception: number;
29
+ };
30
+ pricePerShare: {
31
+ today: number;
32
+ weekAgo: number;
33
+ monthAgo: number;
34
+ };
35
+ extra: {
36
+ stakingRewardsAPR: number | null;
37
+ gammaRewardAPR: number | null;
38
+ katanaRewardsAPR: number | null;
39
+ katanaAppRewardsAPR: number | null;
40
+ FixedRateKatanaRewards: number | null;
41
+ katanaBonusAPY: number | null;
42
+ extrinsicYield: number | null;
43
+ katanaNativeYield: number | null;
44
+ };
45
+ forwardAPR: {
46
+ type: string;
47
+ netAPR: number | null;
48
+ composite: {
49
+ boost: number | null;
50
+ poolAPY: number | null;
51
+ boostedAPR: number | null;
52
+ baseAPR: number | null;
53
+ cvxAPR: number | null;
54
+ rewardsAPR: number | null;
55
+ };
56
+ };
57
+ };
58
+ strategies: {
59
+ address: string;
60
+ name: string;
61
+ status: string;
62
+ netAPR?: number;
63
+ details: {
64
+ totalDebt: string;
65
+ totalLoss: string;
66
+ totalGain: string;
67
+ performanceFee: number;
68
+ lastReport: number;
69
+ debtRatio?: number;
70
+ };
71
+ }[];
72
+ };
73
+ export declare const addressToAssetYearn: {
74
+ [a: string]: string;
75
+ };
76
+ //# sourceMappingURL=yieldTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yieldTypes.d.ts","sourceRoot":"","sources":["../../src/yields/yieldTypes.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAA;QACf,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,WAAW,EAAE,MAAM,CAAA;QACnB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,GAAG,EAAE;QACH,WAAW,EAAE,MAAM,CAAA;QACnB,GAAG,EAAE,MAAM,CAAA;QACX,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;QACrB,IAAI,EAAE;YACJ,WAAW,EAAE,MAAM,CAAA;YACnB,UAAU,EAAE,MAAM,CAAA;SACnB,CAAA;QACD,MAAM,EAAE;YACN,OAAO,EAAE,MAAM,CAAA;YACf,QAAQ,EAAE,MAAM,CAAA;YAChB,SAAS,EAAE,MAAM,CAAA;SAClB,CAAA;QACD,aAAa,EAAE;YACb,KAAK,EAAE,MAAM,CAAA;YACb,OAAO,EAAE,MAAM,CAAA;YACf,QAAQ,EAAE,MAAM,CAAA;SACjB,CAAA;QACD,KAAK,EAAE;YACL,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;YAChC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;YAC7B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;YAC/B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAA;YAClC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;YACrC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;YAC7B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;YAC7B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;SACjC,CAAA;QACD,UAAU,EAAE;YACV,IAAI,EAAE,MAAM,CAAA;YACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;YACrB,SAAS,EAAE;gBACT,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;gBACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;gBACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;gBACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;gBACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;gBACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;aAC1B,CAAA;SACF,CAAA;KACF,CAAA;IACD,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAA;QACf,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,OAAO,EAAE;YACP,SAAS,EAAE,MAAM,CAAA;YACjB,SAAS,EAAE,MAAM,CAAA;YACjB,SAAS,EAAE,MAAM,CAAA;YACjB,cAAc,EAAE,MAAM,CAAA;YACtB,UAAU,EAAE,MAAM,CAAA;YAClB,SAAS,CAAC,EAAE,MAAM,CAAA;SACnB,CAAA;KACF,EAAE,CAAA;CACJ,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAMtD,CAAA"}
@@ -0,0 +1,7 @@
1
+ export const addressToAssetYearn = {
2
+ '0xe007ca01894c863d7898045ed5a3b4abf0b18f37': 'vbETH yVault::yvvbETH',
3
+ '0x80c34bd3a3569e126e7055831036aa7b212cb159': 'vbUSDC yVault::yvvbUSDC',
4
+ '0x9a6bd7b6fd5c4f87eb66356441502fc7dcdd185b': 'vbUSDT yVault::yvvbUSDT',
5
+ '0xaa0362ecc584b985056e47812931270b99c91f9d': 'vbWBTC yVault::yvvbWBTC',
6
+ '0x93fec6639717b6215a48e5a72a162c50dcc40d68': 'vbAUSD yVault::yvvbAUSD',
7
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1delta/margin-fetcher",
3
- "version": "0.0.30",
3
+ "version": "0.0.31",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -83,9 +83,6 @@ export const getMorphoUserDataConverterWithlens = (
83
83
 
84
84
  // we loop over the return dat
85
85
  for (let i = 0; i < data.length; i++) {
86
- let totalDebt24h = 0
87
- let totalDeposits24h = 0
88
-
89
86
  // get balance data array for chunk
90
87
  const balanceDatas = decodePackedDataset(data[i])
91
88
 
@@ -107,9 +104,6 @@ export const getMorphoUserDataConverterWithlens = (
107
104
  pricesHist,
108
105
  )
109
106
 
110
- totalDebt24h += addedDebt
111
- totalDeposits24h += addedDeposits
112
-
113
107
  const payload = {
114
108
  chainId,
115
109
  account,
@@ -121,8 +115,8 @@ export const getMorphoUserDataConverterWithlens = (
121
115
  const userData = createBaseTypeUserState(
122
116
  payload,
123
117
  lenderData[markeId].data,
124
- totalDeposits24h,
125
- totalDebt24h,
118
+ addedDeposits,
119
+ addedDebt,
126
120
  )
127
121
 
128
122
  datas[market.lender] = {
@@ -174,7 +168,6 @@ function createMorphoEntryFromMarketWithLens(
174
168
  // prices
175
169
  const priceLoan = prices[loanKey] ?? 1
176
170
  const priceHistLoan = pricesHist?.[loanKey] ?? priceLoan
177
-
178
171
  // balances
179
172
  const deposits = balanceInfo.supplyAssets
180
173
  const borrow = balanceInfo.borrowAssets
@@ -250,7 +243,8 @@ function createMorphoEntryFromMarketWithLens(
250
243
  [collateralAddress]: dataForCollateralAsset,
251
244
  },
252
245
  addedDeposits:
253
- Number(loanDepositNumber) * priceHistLoan + Number(collateralDec) * priceHist,
246
+ Number(loanDepositNumber) * priceHistLoan +
247
+ Number(collateralDec) * priceHist,
254
248
  addedDebt: Number(borrowDec) * priceHistLoan,
255
249
  }
256
250
  }
@@ -1038,6 +1038,13 @@ export const MrophoOracles: { [c: string]: MrophoOracleInfo[] } = {
1038
1038
  loanAssetDecimals: 18,
1039
1039
  collateralAssetDecimals: 18,
1040
1040
  },
1041
+ {
1042
+ oracle: '0xC3dA445C9c4Cd78325C6DCDD314936C2Aa226372',
1043
+ loanAsset: '0xb0f70c0bd6fd87dbeb7c10dc692a2a6106817072',
1044
+ collateralAsset: '0xecac9c5f704e954931349da37f60e39f515c11c1',
1045
+ loanAssetDecimals: 8,
1046
+ collateralAssetDecimals: 8,
1047
+ },
1041
1048
  {
1042
1049
  oracle: '0xB60F728BdcE5e3921C0E42c1a6F07A1313D0040e',
1043
1050
  loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
@@ -1052,13 +1059,6 @@ export const MrophoOracles: { [c: string]: MrophoOracleInfo[] } = {
1052
1059
  loanAssetDecimals: 6,
1053
1060
  collateralAssetDecimals: 18,
1054
1061
  },
1055
- {
1056
- oracle: '0xC3dA445C9c4Cd78325C6DCDD314936C2Aa226372',
1057
- loanAsset: '0xb0f70c0bd6fd87dbeb7c10dc692a2a6106817072',
1058
- collateralAsset: '0xecac9c5f704e954931349da37f60e39f515c11c1',
1059
- loanAssetDecimals: 8,
1060
- collateralAssetDecimals: 8,
1061
- },
1062
1062
  {
1063
1063
  oracle: '0xBa4c6d027b3c08Cb8c21840501Cd04ad6Bb37Cd0',
1064
1064
  loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
@@ -1081,11 +1081,11 @@ export const MrophoOracles: { [c: string]: MrophoOracleInfo[] } = {
1081
1081
  collateralAssetDecimals: 6,
1082
1082
  },
1083
1083
  {
1084
- oracle: '0x970b106C6C1df8276577dBdC8FdA010e418fC1EC',
1085
- loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1086
- collateralAsset: '0xee7d8bcfb72bc1880d0cf19822eb0a2e6577ab62',
1084
+ oracle: '0xD978CE03d8BB0eb3f09cB2a469DbbC25DB42F3Ae',
1085
+ loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
1086
+ collateralAsset: '0x9a6bd7b6fd5c4f87eb66356441502fc7dcdd185b',
1087
1087
  loanAssetDecimals: 6,
1088
- collateralAssetDecimals: 18,
1088
+ collateralAssetDecimals: 6,
1089
1089
  },
1090
1090
  {
1091
1091
  oracle: '0x3C40506CcD8f124f05a900446d38dDA4baAfd82d',
@@ -1095,25 +1095,25 @@ export const MrophoOracles: { [c: string]: MrophoOracleInfo[] } = {
1095
1095
  collateralAssetDecimals: 8,
1096
1096
  },
1097
1097
  {
1098
- oracle: '0xD978CE03d8BB0eb3f09cB2a469DbbC25DB42F3Ae',
1099
- loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
1100
- collateralAsset: '0x9a6bd7b6fd5c4f87eb66356441502fc7dcdd185b',
1098
+ oracle: '0x970b106C6C1df8276577dBdC8FdA010e418fC1EC',
1099
+ loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1100
+ collateralAsset: '0xee7d8bcfb72bc1880d0cf19822eb0a2e6577ab62',
1101
1101
  loanAssetDecimals: 6,
1102
- collateralAssetDecimals: 6,
1102
+ collateralAssetDecimals: 18,
1103
1103
  },
1104
1104
  {
1105
- oracle: '0x2477367cFF71b31b4BE6963e5691859E8fcDF084',
1106
- loanAsset: '0x2dca96907fde857dd3d816880a0df407eeb2d2f2',
1107
- collateralAsset: '0xee7d8bcfb72bc1880d0cf19822eb0a2e6577ab62',
1105
+ oracle: '0x83F4197076614efe8e4c37BB9EFBfeaD08d4719f',
1106
+ loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1107
+ collateralAsset: '0xb0f70c0bd6fd87dbeb7c10dc692a2a6106817072',
1108
1108
  loanAssetDecimals: 6,
1109
- collateralAssetDecimals: 18,
1109
+ collateralAssetDecimals: 8,
1110
1110
  },
1111
1111
  {
1112
- oracle: '0x07A9c82f38aAD9855FaF76D398F9C64a7A12F0AE',
1112
+ oracle: '0x2477367cFF71b31b4BE6963e5691859E8fcDF084',
1113
1113
  loanAsset: '0x2dca96907fde857dd3d816880a0df407eeb2d2f2',
1114
- collateralAsset: '0x0913da6da4b42f538b445599b46bb4622342cf52',
1114
+ collateralAsset: '0xee7d8bcfb72bc1880d0cf19822eb0a2e6577ab62',
1115
1115
  loanAssetDecimals: 6,
1116
- collateralAssetDecimals: 8,
1116
+ collateralAssetDecimals: 18,
1117
1117
  },
1118
1118
  {
1119
1119
  oracle: '0xcC139318686969b9D30Dd62aA206725B269DA40d',
@@ -1123,9 +1123,9 @@ export const MrophoOracles: { [c: string]: MrophoOracleInfo[] } = {
1123
1123
  collateralAssetDecimals: 8,
1124
1124
  },
1125
1125
  {
1126
- oracle: '0x83F4197076614efe8e4c37BB9EFBfeaD08d4719f',
1127
- loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1128
- collateralAsset: '0xb0f70c0bd6fd87dbeb7c10dc692a2a6106817072',
1126
+ oracle: '0x07A9c82f38aAD9855FaF76D398F9C64a7A12F0AE',
1127
+ loanAsset: '0x2dca96907fde857dd3d816880a0df407eeb2d2f2',
1128
+ collateralAsset: '0x0913da6da4b42f538b445599b46bb4622342cf52',
1129
1129
  loanAssetDecimals: 6,
1130
1130
  collateralAssetDecimals: 8,
1131
1131
  },
@@ -1185,6 +1185,13 @@ export const MrophoOracles: { [c: string]: MrophoOracleInfo[] } = {
1185
1185
  loanAssetDecimals: 6,
1186
1186
  collateralAssetDecimals: 8,
1187
1187
  },
1188
+ {
1189
+ oracle: '0xaa9853c78B92606b21cE57Da7F04F301f031Aba4',
1190
+ loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
1191
+ collateralAsset: '0xe007ca01894c863d7898045ed5a3b4abf0b18f37',
1192
+ loanAssetDecimals: 6,
1193
+ collateralAssetDecimals: 18,
1194
+ },
1188
1195
  {
1189
1196
  oracle: '0xcb2d3027Be1Fe4c88fc1840187efCF301Ff7176a',
1190
1197
  loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
@@ -1213,6 +1220,13 @@ export const MrophoOracles: { [c: string]: MrophoOracleInfo[] } = {
1213
1220
  loanAssetDecimals: 6,
1214
1221
  collateralAssetDecimals: 18,
1215
1222
  },
1223
+ {
1224
+ oracle: '0x269013966Ef83A88B75f0573199CF1Cad8c30f82',
1225
+ loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1226
+ collateralAsset: '0xecac9c5f704e954931349da37f60e39f515c11c1',
1227
+ loanAssetDecimals: 6,
1228
+ collateralAssetDecimals: 8,
1229
+ },
1216
1230
  {
1217
1231
  oracle: '0x1c5f3862c913E015eD0a2A9d71E13BE74101F47d',
1218
1232
  loanAsset: '0x203a662b0bd271a6ed5a60edfbd04bfce608fd36',
@@ -1227,13 +1241,6 @@ export const MrophoOracles: { [c: string]: MrophoOracleInfo[] } = {
1227
1241
  loanAssetDecimals: 6,
1228
1242
  collateralAssetDecimals: 18,
1229
1243
  },
1230
- {
1231
- oracle: '0x269013966Ef83A88B75f0573199CF1Cad8c30f82',
1232
- loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
1233
- collateralAsset: '0xecac9c5f704e954931349da37f60e39f515c11c1',
1234
- loanAssetDecimals: 6,
1235
- collateralAssetDecimals: 8,
1236
- },
1237
1244
  {
1238
1245
  oracle: '0xe8F70671Bc494A96332c809d042bD9bF09452B57',
1239
1246
  loanAsset: '0x00000000efe302beaa2b3e6e1b18d08d69a9012a',
@@ -1,4 +1,5 @@
1
1
  import { apyToAprPercent, apyToApr } from '../utils/parsing'
2
+ import { addressToAssetYearn, YearnVault } from './yieldTypes'
2
3
 
3
4
  const hyUSD = 'High Yield USD Base::HYUSD'
4
5
  const bsdETH = 'Based ETH::BSDETH'
@@ -65,6 +66,7 @@ const FeedData = {
65
66
  ETHZERO: 'https://app.usual.money/api/rewards/rates/ETH0',
66
67
  JITOSOL: 'https://www.jito.network/api/getJitoPoolStats/',
67
68
  THBILL: 'https://thbill-api.theo.xyz/snapshots',
69
+ YEARN_KATANA: 'https://katana-apr-service.vercel.app/api/vaults',
68
70
  }
69
71
 
70
72
  const LenderAPIs = {
@@ -219,6 +221,22 @@ export const fetchGeneralYields = async () => {
219
221
  return apyToAprPercent(res.value)
220
222
  })
221
223
 
224
+ const yearnKatanaPromise = safeFetch('YEARN_KATANA', async () => {
225
+ const res: { [address: string]: YearnVault } = await fetch(
226
+ FeedData.YEARN_KATANA,
227
+ ).then((r) => r.json())
228
+ let map: any = {}
229
+ Object.entries(res).forEach(([addr, data]) => {
230
+ const key = addressToAssetYearn[addr.toLowerCase()]
231
+ if (key) {
232
+ const apr =
233
+ ((data.apr.netAPR ?? 0) + (data.apr.extra.extrinsicYield ?? 0)) * 100
234
+ map[key] = apr
235
+ }
236
+ })
237
+ return map
238
+ })
239
+
222
240
  const osEthPromise = safeFetch('OSETH', async () => {
223
241
  const res = await fetch(FeedData.OSETH, {
224
242
  method: 'POST',
@@ -274,7 +292,7 @@ export const fetchGeneralYields = async () => {
274
292
  const jitoSolPromise = safeFetch('JITOSOL', async () => {
275
293
  const res = await fetch(FeedData.JITOSOL, {
276
294
  method: 'GET',
277
- headers: { Accept: 'application/json' },
295
+ headers: { Accept: 'application/json', 'User-Agent': '1delta/yields' },
278
296
  }).then((r) => r.json())
279
297
  const val = averageDataLastN(res?.getStakePoolStats?.apy, 7)
280
298
  return apyToApr(val) * 100
@@ -317,7 +335,6 @@ export const fetchGeneralYields = async () => {
317
335
  method: 'GET',
318
336
  headers: {
319
337
  Accept: 'application/json',
320
-
321
338
  'User-Agent': '1delta/yields',
322
339
  },
323
340
  }).then((r) => r.json())
@@ -469,6 +486,7 @@ export const fetchGeneralYields = async () => {
469
486
  usdZeroPlusData,
470
487
  jitoSolData,
471
488
  thBillData,
489
+ yearnKatanaData,
472
490
  ] = await Promise.all([
473
491
  wstethPromise,
474
492
  ezethPromise,
@@ -502,6 +520,7 @@ export const fetchGeneralYields = async () => {
502
520
  usdZeroPlusPromise,
503
521
  jitoSolPromise,
504
522
  thbillPromise,
523
+ yearnKatanaPromise,
505
524
  ])
506
525
 
507
526
  const data: YieldDataWithTimestamp = {
@@ -540,6 +559,7 @@ export const fetchGeneralYields = async () => {
540
559
  ...rtokensData,
541
560
  ...hypeData,
542
561
  ...angleData,
562
+ ...yearnKatanaData,
543
563
  },
544
564
  lenderRewards: {
545
565
  '167000': {
@@ -0,0 +1,80 @@
1
+ export type YearnVault = {
2
+ address: string
3
+ symbol: string
4
+ name: string
5
+ chainID: number
6
+ token: {
7
+ address: string
8
+ name: string
9
+ symbol: string
10
+ description: string
11
+ decimals: number
12
+ }
13
+ tvl: {
14
+ totalAssets: string
15
+ tvl: number
16
+ price: number
17
+ }
18
+ apr: {
19
+ type: string
20
+ netAPR: number | null
21
+ fees: {
22
+ performance: number
23
+ management: number
24
+ }
25
+ points: {
26
+ weekAgo: number
27
+ monthAgo: number
28
+ inception: number
29
+ }
30
+ pricePerShare: {
31
+ today: number
32
+ weekAgo: number
33
+ monthAgo: number
34
+ }
35
+ extra: {
36
+ stakingRewardsAPR: number | null
37
+ gammaRewardAPR: number | null
38
+ katanaRewardsAPR: number | null
39
+ katanaAppRewardsAPR: number | null
40
+ FixedRateKatanaRewards: number | null
41
+ katanaBonusAPY: number | null
42
+ extrinsicYield: number | null
43
+ katanaNativeYield: number | null
44
+ }
45
+ forwardAPR: {
46
+ type: string
47
+ netAPR: number | null
48
+ composite: {
49
+ boost: number | null
50
+ poolAPY: number | null
51
+ boostedAPR: number | null
52
+ baseAPR: number | null
53
+ cvxAPR: number | null
54
+ rewardsAPR: number | null
55
+ }
56
+ }
57
+ }
58
+ strategies: {
59
+ address: string
60
+ name: string
61
+ status: string
62
+ netAPR?: number
63
+ details: {
64
+ totalDebt: string
65
+ totalLoss: string
66
+ totalGain: string
67
+ performanceFee: number
68
+ lastReport: number
69
+ debtRatio?: number
70
+ }
71
+ }[]
72
+ }
73
+
74
+ export const addressToAssetYearn: { [a: string]: string } = {
75
+ '0xe007ca01894c863d7898045ed5a3b4abf0b18f37': 'vbETH yVault::yvvbETH',
76
+ '0x80c34bd3a3569e126e7055831036aa7b212cb159': 'vbUSDC yVault::yvvbUSDC',
77
+ '0x9a6bd7b6fd5c4f87eb66356441502fc7dcdd185b': 'vbUSDT yVault::yvvbUSDT',
78
+ '0xaa0362ecc584b985056e47812931270b99c91f9d': 'vbWBTC yVault::yvvbWBTC',
79
+ '0x93fec6639717b6215a48e5a72a162c50dcc40d68': 'vbAUSD yVault::yvvbAUSD',
80
+ }
@@ -6,7 +6,6 @@ import {
6
6
  generateLendingPairs,
7
7
  getLenderPublicData,
8
8
  getLenderPublicDataAll,
9
- getTopPairs,
10
9
  } from '../src'
11
10
  import { getEvmClient, multicallRetry } from '@1delta/providers'
12
11
  import { Chain, Lender } from '@1delta/asset-registry'
@@ -20,7 +19,7 @@ describe(
20
19
  const chainId = Chain.ARBITRUM_ONE
21
20
 
22
21
  const ps = [
23
- fetchMainPrices([chainId], getEvmClient),
22
+ fetchMainPrices([chainId]),
24
23
  fetchGeneralYields(),
25
24
  ]
26
25
 
@@ -46,7 +45,7 @@ describe(
46
45
  const chainId = Chain.POLYGON_MAINNET
47
46
 
48
47
  const ps = [
49
- fetchMainPrices([chainId], getEvmClient),
48
+ fetchMainPrices([chainId]),
50
49
  fetchGeneralYields(),
51
50
  ]
52
51
 
@@ -2,7 +2,7 @@ import { describe, it } from 'vitest'
2
2
  import { fetchMorphoPriceMeta } from './morpho'
3
3
  import { Chain } from '@1delta/asset-registry'
4
4
 
5
- const chainId = Chain.BASE
5
+ const chainId = Chain.KATANA
6
6
  describe(
7
7
  'find prices',
8
8
  () => {
@@ -9,8 +9,8 @@ import { LenderUserQuery } from '../src/lending/user-data/types'
9
9
  import { prettyPrint } from './utils'
10
10
 
11
11
  // random user with ETH
12
- const TEST_ADDRESS = '0xaffe73AA5EBd0CD95D89ab9fa2512Fc9e2d3289b'
13
- let prices, yields
12
+ const TEST_ADDRESS = '0xbadA9c382165b31419F4CC0eDf0Fa84f80A3C8E5'
13
+ let prices, yields, pricesHist
14
14
 
15
15
  async function getUserData(chainId: Chain, publicData: any) {
16
16
  // Define user queries
@@ -51,14 +51,13 @@ describe(
51
51
  `https://margin-data.1delta.io/lending-multi?chains=${chainId}`,
52
52
  ).then((a) => a.json())
53
53
  prices = all.prices
54
+ pricesHist = all.priceHist
54
55
  yields = all.yields
55
56
  const publicData = all.data[chainId]
56
57
  const { userData } = await getUserData(chainId, publicData)
57
58
 
58
59
  prettyPrint(
59
- userData[
60
- 'MORPHO_BLUE_16DED80178992B02F7C467C373CFC9F4EEE7F0356DF672F6A768EC92B2FFDEFF'
61
- ],
60
+ userData ['MORPHO_BLUE_6691CDCADD5D23AC68D2C1CF54DC97AB8242D2A888230DE411094480252C2ED3'],
62
61
  )
63
62
 
64
63
  // Basic validation