@1delta/margin-fetcher 0.0.27 → 0.0.29

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 (37) hide show
  1. package/dist/lending/user-data/aave-v3-type/userCallParse.d.ts +2 -2
  2. package/dist/lending/user-data/aave-v3-type/userCallParse.d.ts.map +1 -1
  3. package/dist/lending/user-data/aave-v3-type/userCallParse.js +13 -12
  4. package/dist/lending/user-data/fetchUserData.d.ts +5 -2
  5. package/dist/lending/user-data/fetchUserData.d.ts.map +1 -1
  6. package/dist/lending/user-data/fetchUserData.js +7 -4
  7. package/dist/lending/user-data/morpho/userCallParse.d.ts.map +1 -1
  8. package/dist/lending/user-data/morpho/userCallParse.js +43 -34
  9. package/dist/prices/defillama/index.d.ts.map +1 -1
  10. package/dist/prices/defillama/index.js +28 -7
  11. package/dist/prices/main-prices/addresses/morpho.d.ts.map +1 -1
  12. package/dist/prices/main-prices/addresses/morpho.js +353 -325
  13. package/dist/prices/main-prices/fetchOracleData.js +4 -2
  14. package/dist/utils/multicall.d.ts +2 -1
  15. package/dist/utils/multicall.d.ts.map +1 -1
  16. package/dist/utils/multicall.js +12 -6
  17. package/dist/yields/index.d.ts.map +1 -1
  18. package/dist/yields/index.js +57 -8
  19. package/package.json +2 -2
  20. package/src/lending/user-data/aave-v3-type/userCallParse.ts +45 -31
  21. package/src/lending/user-data/fetchUserData.ts +19 -4
  22. package/src/lending/user-data/morpho/userCallParse.ts +65 -51
  23. package/src/prices/defillama/index.ts +29 -8
  24. package/src/prices/main-prices/addresses/morpho.ts +353 -325
  25. package/src/prices/main-prices/fetchOracleData.ts +5 -2
  26. package/src/utils/multicall.ts +15 -4
  27. package/src/yields/index.ts +67 -7
  28. package/test/dataMainnet.ts +45256 -0
  29. package/test/mainPriceMB.test.ts +1 -2
  30. package/test/mainPrices.test.ts +1 -1
  31. package/test/morphoPrice.test.ts +1 -1
  32. package/test/userDataAave.test.ts +2 -7
  33. package/test/userDataAaveMainnet.test.ts +102 -0
  34. package/test/userDataAll.test.ts +1 -4
  35. package/test/userDataMorpho.test.ts +1 -1
  36. package/test/userDataMorphoEthereum.test.ts +77 -0
  37. package/test/userDataMorphoKatana.test.ts +75 -0
@@ -1,5 +1,3 @@
1
- import fetch from 'axios'
2
-
3
1
  const prefixEthereum = 'ethereum:'
4
2
  const RETH = '0xae78736Cd615f374D3085123A210448E74Fc6393'
5
3
  const WBTC = '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599'
@@ -41,6 +39,10 @@ const EZETH = '0xbf5495Efe5DB9ce00f80364C8B423567e58d2110'
41
39
  const LBTC = '0x8236a87084f8B84306f72007F36F2618A5634494'
42
40
  const BRBTC = '0x2eC37d45FCAE65D9787ECf71dc85a444968f6646'
43
41
  const SDAI = '0x83f20f44975d03b1b09e64809b757c47f942beea'
42
+ const RUSD = '0x09d4214c03d01f49544c0448dbe3a27f768f2b34'
43
+ const USDF = '0xfa2b947eec368f42195f24f36d2af29f7c24cec2'
44
+ const USUAL = '0xc4441c2be5d8fa8126822b9929ca0b81ea0de38e'
45
+ const WOETH = '0xdcee70654261af21c44c093c300ed3bb97b78192'
44
46
  const datasEthereum = [
45
47
  RETH,
46
48
  WBTC,
@@ -82,6 +84,10 @@ const datasEthereum = [
82
84
  LBTC,
83
85
  BRBTC,
84
86
  SDAI,
87
+ RUSD,
88
+ USDF,
89
+ USUAL,
90
+ WOETH,
85
91
  ]
86
92
  .map((d) => prefixEthereum + d)
87
93
  .join(',')
@@ -122,6 +128,10 @@ const WYPE = '0x5555555555555555555555555555555555555555'
122
128
  const WSTHYPE = '0x94e8396e0869c9f2200760af0621afd240e1cf38'
123
129
  const kHYPE = '0xfd739d4e423301ce9385c1fb8850539d657c296d'
124
130
 
131
+ const prefixSolana = 'solana:'
132
+ const JITOSOL = 'J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn'
133
+ const SOL = 'So11111111111111111111111111111111111111112'
134
+
125
135
  // const prefixKaia = 'kaia:'
126
136
  // const WKAIA = '0x19aac5f612f524b754ca7e7c41cbfa2e981a4432'
127
137
 
@@ -139,6 +149,7 @@ const datasSonic = [WS].map((d) => prefixSonic + d).join(',')
139
149
  const datasHyperEvm = [WYPE, WSTHYPE, kHYPE]
140
150
  .map((d) => prefixHyperEVM + d)
141
151
  .join(',')
152
+ const datasSolana = [JITOSOL, SOL].map((d) => prefixSolana + d).join(',')
142
153
  // const datasKaia = [WKAIA].map((d) => prefixKaia + d).join(',')
143
154
 
144
155
  const URL = `https://coins.llama.fi/prices/current/${[
@@ -152,8 +163,9 @@ const URL = `https://coins.llama.fi/prices/current/${[
152
163
  datasFantom,
153
164
  datasHyperEvm,
154
165
  // datasKaia,
155
- datasSonic, //
166
+ datasSonic,
156
167
  datasPolygon,
168
+ datasSolana,
157
169
  ].join(',')}?searchWidth=4h`
158
170
  const URL_HIST = (ref: number) =>
159
171
  `https://coins.llama.fi/prices/historical/${ref}/${[
@@ -168,7 +180,8 @@ const URL_HIST = (ref: number) =>
168
180
  // datasKaia,
169
181
  datasHyperEvm,
170
182
  datasPolygon,
171
- datasSonic, //
183
+ datasSonic,
184
+ datasSolana,
172
185
  ].join(',')}?searchWidth=4h`
173
186
 
174
187
  const SYMBOL_MAP = {
@@ -235,15 +248,21 @@ const SYMBOL_MAP = {
235
248
  khype: 'Kinetiq Staked HYPE::kHYPE',
236
249
  wsthype: 'Staked HYPE Shares::WSTHYPE',
237
250
  trumatic: 'TRUMATIC',
251
+ rusd: 'Reservoir rUSD::RUSD',
252
+ usdf: 'Falcon Finance::USDF',
253
+ usual: 'Usual::USUAL',
254
+ woeth: 'Wrapped OETH::WOETH',
255
+ jitosol: 'Jito Staked SOL::JitoSOL',
256
+ sol: 'SOL',
238
257
  }
239
258
 
240
259
  export async function fetchDefillamaData() {
241
260
  try {
242
- const res: any = await fetch(URL)
261
+ const res: any = await fetch(URL).then((a) => a.json())
243
262
 
244
263
  let prices = Object.assign(
245
264
  {},
246
- ...Object.values(res.data.coins).map((k: any) => {
265
+ ...Object.values(res.coins).map((k: any) => {
247
266
  // @ts-ignore
248
267
  return { [SYMBOL_MAP[k.symbol.toLowerCase()]]: k.price }
249
268
  }),
@@ -254,6 +273,7 @@ export async function fetchDefillamaData() {
254
273
  prices['ETH'] = prices['WETH']
255
274
  prices['S'] = prices['WS']
256
275
  prices['CORE'] = prices['WCORE']
276
+ prices['WSOL'] = prices['SOL']
257
277
  prices['AVAX'] = prices['WAVAX']
258
278
  prices['METIS'] = prices['WMETIS']
259
279
  // prices['WKAIA'] = prices['KAIA']
@@ -282,11 +302,11 @@ export async function fetchDefillamaData() {
282
302
  export async function fetchDefillamaHistData() {
283
303
  try {
284
304
  const nowMinus24 = Math.floor(Date.now() / 1000 - 24 * 3600)
285
- const resHist: any = await fetch(URL_HIST(nowMinus24))
305
+ const resHist: any = await fetch(URL_HIST(nowMinus24)).then((a) => a.json())
286
306
 
287
307
  let histPrices = Object.assign(
288
308
  {},
289
- ...Object.values(resHist.data.coins).map((k: any) => {
309
+ ...Object.values(resHist.coins).map((k: any) => {
290
310
  // @ts-ignore
291
311
  return { [SYMBOL_MAP[k.symbol.toLowerCase()]]: k.price }
292
312
  }),
@@ -297,6 +317,7 @@ export async function fetchDefillamaHistData() {
297
317
  histPrices['ETH'] = histPrices['WETH']
298
318
  histPrices['S'] = histPrices['WS']
299
319
  histPrices['CORE'] = histPrices['WCORE']
320
+ histPrices['WSOL'] = histPrices['SOL']
300
321
  histPrices['AVAX'] = histPrices['WAVAX']
301
322
  histPrices['METIS'] = histPrices['WMETIS']
302
323
  histPrices['HYPE'] = histPrices['WHYPE']