@stake-dao/reader 0.4.59 → 0.4.61

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":"fetch.d.ts","sourceRoot":"","sources":["../../../../src/strategies/pendle/fetch.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAG5C,OAAO,KAAK,EAAE,WAAW,EAAU,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAqBnF,UAAU,YAAY;IACpB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,QAAQ,EAAE,GAAG,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,aAAa,CAAA;IACvB,OAAO,EAAE,YAAY,CAAA;CACtB;AAED,eAAO,MAAM,WAAW,iEAAwE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoT3G,CAAA"}
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../src/strategies/pendle/fetch.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAG5C,OAAO,KAAK,EAAE,WAAW,EAAU,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAsBnF,UAAU,YAAY;IACpB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,QAAQ,EAAE,GAAG,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,aAAa,CAAA;IACvB,OAAO,EAAE,YAAY,CAAA;CACtB;AAED,eAAO,MAAM,WAAW,iEAAwE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwT3G,CAAA"}
@@ -0,0 +1,5 @@
1
+ declare const ignoreExtraRewards: {
2
+ '0x82d810ededb09614144900f914e75dd76700f19d': string[];
3
+ };
4
+ export default ignoreExtraRewards;
5
+ //# sourceMappingURL=ignoreExtraRewards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ignoreExtraRewards.d.ts","sourceRoot":"","sources":["../../../../src/strategies/pendle/ignoreExtraRewards.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,kBAAkB;;CAEvB,CAAA;AAED,eAAe,kBAAkB,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stake-dao/reader",
3
3
  "description": "",
4
- "version": "0.4.59",
4
+ "version": "0.4.61",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": {
7
7
  "type": "git",
@@ -35,7 +35,7 @@
35
35
  "graphql-request": "^6.0.0",
36
36
  "lodash-es": "^4.17.21",
37
37
  "viem": "^2.21.53",
38
- "@stake-dao/constants": "0.4.27"
38
+ "@stake-dao/constants": "0.4.28"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/lodash-es": "^4.17.12",
@@ -25,6 +25,7 @@ import { getAprBreakdown } from '../utils/getAprBreakdown.js'
25
25
  import { concatBytecode } from '../utils/index.js'
26
26
  import { buildPendleStrategies } from './build.js'
27
27
  import getPendleApiData from './getPendleApiData.js'
28
+ import ignoreExtraRewards from './ignoreExtraRewards.js'
28
29
  import pendlePoints from './pendlePoints.js'
29
30
 
30
31
  const pendleApiForMarket = async (market: string) =>
@@ -180,26 +181,30 @@ export const fetchPendle = async ({ prices, provider, rpc, explorerApiKey, explo
180
181
  let extraRewards = []
181
182
  if (pendleStratApiData.underlyingRewardApy > 0) {
182
183
  const extraApiData = pendleApiExtraData.find((el) => equalTlc(el.address, s.lpToken.address))
183
- extraRewards = extraApiData.underlyingRewardApyBreakdown.map((r) => {
184
- let nonBoostedApr = 0
185
-
186
- if (pendleStratApiData.proSymbol === 'USD0++') {
187
- nonBoostedApr = extraApiData.lpRewardApy
188
- } else {
189
- nonBoostedApr = r.absoluteApy / 2.5
190
- nonBoostedApr = nonBoostedApr * (extraApiData.totalSy / (extraApiData.totalSy + extraApiData.totalPt))
191
- }
192
-
193
- nonBoostedApr = nonBoostedApr * (100 - STRAT_FEES)
194
-
195
- return {
196
- address: r.asset.address,
197
- name: r.asset.name,
198
- symbol: r.asset.symbol,
199
- decimals: r.asset.decimals,
200
- apy: nonBoostedApr * boost,
201
- }
202
- })
184
+ const extraRewardsToIgnore = ignoreExtraRewards[lc(s.lpToken.address)] || []
185
+
186
+ extraRewards = extraApiData.underlyingRewardApyBreakdown
187
+ .filter((r) => !extraRewardsToIgnore.includes(lc(r.asset.address)))
188
+ .map((r) => {
189
+ let nonBoostedApr = 0
190
+
191
+ if (pendleStratApiData.proSymbol === 'USD0++') {
192
+ nonBoostedApr = extraApiData.lpRewardApy
193
+ } else {
194
+ nonBoostedApr = r.absoluteApy / 2.5
195
+ nonBoostedApr = nonBoostedApr * (extraApiData.totalSy / (extraApiData.totalSy + extraApiData.totalPt))
196
+ }
197
+
198
+ nonBoostedApr = nonBoostedApr * (100 - STRAT_FEES)
199
+
200
+ return {
201
+ address: r.asset.address,
202
+ name: r.asset.name,
203
+ symbol: r.asset.symbol,
204
+ decimals: r.asset.decimals,
205
+ apy: nonBoostedApr * boost,
206
+ }
207
+ })
203
208
  }
204
209
 
205
210
  const totalPt = pendleStratApiData.totalPt
@@ -0,0 +1,5 @@
1
+ const ignoreExtraRewards = {
2
+ '0x82d810ededb09614144900f914e75dd76700f19d': ['0xd533a949740bb3306d119cc777fa900ba034cd52'],
3
+ }
4
+
5
+ export default ignoreExtraRewards
@@ -21,7 +21,7 @@ export const computeYearnApr = (args: {
21
21
 
22
22
  const vaultMonthlyApr = yearnStratApiData ? yearnStratApiData.apr.points.monthAgo : 0
23
23
  const vaultWeeklyApr = yearnStratApiData ? yearnStratApiData.apr.points.weekAgo : 0
24
- const underlyingApr = (vaultMonthlyApr === 0 ? vaultWeeklyApr : vaultMonthlyApr) * 100
24
+ const underlyingApr = (vaultWeeklyApr === 0 ? vaultMonthlyApr : vaultWeeklyApr) * 100
25
25
 
26
26
  const totalAssets = Number(formatUnits(rawTotalAssets, strat.gaugeToken.decimals))
27
27