@stake-dao/reader 0.5.24 → 0.5.25

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.
@@ -0,0 +1,4 @@
1
+ import type { OnlyBoostData } from '../../types.js';
2
+ declare const getLegacyOnlyboostData: (data: any, chainId: number, stakeDaoVeBoost: string, convexVeBoost: string, veCrvTotalSupply: string, curveGaugeTotalSupply: bigint, strategyHoldings: bigint, workingBalance: bigint, baseTotalSupply: bigint, lpPriceInUsd: number, maxApr: number, baseRewardPrice: number) => OnlyBoostData;
3
+ export default getLegacyOnlyboostData;
4
+ //# sourceMappingURL=getLegacyOnlyboostData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLegacyOnlyboostData.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/curve/fetch/getLegacyOnlyboostData.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGnD,QAAA,MAAM,sBAAsB,SACpB,GAAG,WACA,MAAM,mBACE,MAAM,iBACR,MAAM,oBACH,MAAM,yBACD,MAAM,oBACX,MAAM,kBACR,MAAM,mBACL,MAAM,gBACT,MAAM,UACZ,MAAM,mBACG,MAAM,KACtB,aA8GF,CAAA;AAED,eAAe,sBAAsB,CAAA"}
@@ -1,4 +1,35 @@
1
1
  import type { OnlyBoostData } from '../../types.js';
2
- declare const getOnlyboostData: (data: any, chainId: number, stakeDaoVeBoost: string, convexVeBoost: string, veCrvTotalSupply: string, curveGaugeTotalSupply: bigint, strategyHoldings: bigint, workingBalance: bigint, baseTotalSupply: bigint, lpPriceInUsd: number, maxApr: number, baseRewardPrice: number) => OnlyBoostData;
2
+ type GetOnlyBoostDataArgs = {
3
+ protocol: string;
4
+ sidecar: string;
5
+ totalSupply: bigint;
6
+ sidecarSupply: bigint;
7
+ stakeDaoSupply: bigint;
8
+ sidecarTotalSupply: bigint;
9
+ sidecarWorkingBalance: bigint;
10
+ sidecarRewardRate: bigint;
11
+ sidecarOptSupply: bigint;
12
+ stakeDaoOptSupply: bigint;
13
+ chainId: number;
14
+ stakeDaoVeBoost: string;
15
+ sidecarVeBoost: string;
16
+ veTknTotalSupply: string;
17
+ gaugeTotalSupply: bigint;
18
+ workingBalance: bigint;
19
+ baseTotalSupply: bigint;
20
+ lpPriceInUsd: number;
21
+ maxApr: number;
22
+ baseRewardPrice: number;
23
+ };
24
+ export declare const extractSidecarPool: (protocol: string, metadata: any) => {
25
+ id: number;
26
+ address: any;
27
+ } | undefined;
28
+ export declare const extractFromMetadata: (protocol: string, metadata: any) => {
29
+ sidecarTotalSupply: bigint;
30
+ sidecarWorkingBalance: bigint;
31
+ sidecarRewardRate: bigint;
32
+ };
33
+ declare const getOnlyboostData: ({ protocol, sidecar, totalSupply, sidecarSupply, stakeDaoSupply, sidecarTotalSupply, sidecarWorkingBalance, sidecarRewardRate, sidecarOptSupply, stakeDaoOptSupply, chainId, stakeDaoVeBoost, sidecarVeBoost, veTknTotalSupply, gaugeTotalSupply, workingBalance, baseTotalSupply, lpPriceInUsd, maxApr, baseRewardPrice, }: GetOnlyBoostDataArgs) => OnlyBoostData;
3
34
  export default getOnlyboostData;
4
35
  //# sourceMappingURL=getOnlyboostData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getOnlyboostData.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/curve/fetch/getOnlyboostData.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGnD,QAAA,MAAM,gBAAgB,SACd,GAAG,WACA,MAAM,mBACE,MAAM,iBACR,MAAM,oBACH,MAAM,yBACD,MAAM,oBACX,MAAM,kBACR,MAAM,mBACL,MAAM,gBACT,MAAM,UACZ,MAAM,mBACG,MAAM,KACtB,aA8GF,CAAA;AAED,eAAe,gBAAgB,CAAA"}
1
+ {"version":3,"file":"getOnlyboostData.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/curve/fetch/getOnlyboostData.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGnD,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,iBAAiB,EAAE,MAAM,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,MAAM,CAAA;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,kBAAkB,aAAc,MAAM,YAAY,GAAG;;;aAYjE,CAAA;AAED,eAAO,MAAM,mBAAmB,aAAc,MAAM,YAAY,GAAG;;;;CAkBlE,CAAA;AASD,QAAA,MAAM,gBAAgB,gUAqBnB,oBAAoB,KAAG,aAmGzB,CAAA;AAED,eAAe,gBAAgB,CAAA"}
@@ -45,7 +45,7 @@ export type OnlyBoostData = {
45
45
  boost: number;
46
46
  optimalBoost: number;
47
47
  stakeDao: OnlyBoostProtocolData;
48
- convex: OnlyBoostProtocolData;
48
+ sidecar: OnlyBoostProtocolData;
49
49
  };
50
50
  export type SdGauge = {
51
51
  address: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/strategies/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/strategies/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/strategies/v2/parse.ts"],"names":[],"mappings":"AA8CA,eAAO,MAAM,aAAa,WAAY,GAAG,aAAa,GAAG,EAAE,SAAS,GAAG,UAsPtE,CAAA"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/strategies/v2/parse.ts"],"names":[],"mappings":"AAgDA,eAAO,MAAM,aAAa,WAAY,GAAG,aAAa,GAAG,EAAE,SAAS,GAAG,UA+OtE,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stake-dao/reader",
3
3
  "description": "",
4
- "version": "0.5.24",
4
+ "version": "0.5.25",
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.35.0",
38
- "@stake-dao/constants": "0.5.7"
38
+ "@stake-dao/constants": "0.5.8"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/lodash-es": "^4.17.12",
@@ -151,7 +151,8 @@ export const parse = async ({ locker, raw, common, prices }: ParseLockers) => {
151
151
  const tokenPriceInUsd = tokenPrice ? tokenPrice.usdPrice : 0
152
152
  const sdTokenPriceInUsd = raw.peg !== '-' ? tokenPriceInUsd * Number(raw.peg) : tokenPriceInUsd
153
153
 
154
- const tvl = raw.totalSupplyStaked ? Number(raw.totalSupplyStaked) * sdTokenPriceInUsd : 0
154
+ const tvl = raw.tokenLocked ? Number(raw.tokenLocked) * tokenPriceInUsd : 0
155
+ const tvlForApr = raw.totalSupplyStaked ? Number(raw.totalSupplyStaked) * sdTokenPriceInUsd : 0
155
156
 
156
157
  const veBoostApr =
157
158
  locker.veBoost && raw.veBoost
@@ -172,10 +173,16 @@ export const parse = async ({ locker, raw, common, prices }: ParseLockers) => {
172
173
  const oneYearRate = rate * BigInt(ONE_YEAR)
173
174
 
174
175
  let apr = streaming
175
- ? rewardPrice && tvl > 0
176
+ ? rewardPrice && tvlForApr > 0
176
177
  ? r.address === tokenWithId('sdt', 1)?.address
177
- ? getMinSdtApr(oneYearRate, Number(raw.totalSupplyStaked), Number(raw.gaugeWorkingSupply), rewardPrice, tvl)
178
- : ((Number(formatUnits(oneYearRate, r.decimals)) * rewardPrice) / tvl) * 100
178
+ ? getMinSdtApr(
179
+ oneYearRate,
180
+ Number(raw.totalSupplyStaked),
181
+ Number(raw.gaugeWorkingSupply),
182
+ rewardPrice,
183
+ tvlForApr,
184
+ )
185
+ : ((Number(formatUnits(oneYearRate, r.decimals)) * rewardPrice) / tvlForApr) * 100
179
186
  : 0
180
187
  : 0
181
188
 
@@ -0,0 +1,133 @@
1
+ import { ONE_YEAR, Zero } from '@stake-dao/constants'
2
+ import { formatUnits, parseEther } from 'viem'
3
+ import { mainnet } from 'viem/chains'
4
+ import { projectWorkingBalance } from '../../../utils.js'
5
+ import type { OnlyBoostData } from '../../types.js'
6
+ import { getBoost } from '../../utils/boost.js'
7
+
8
+ const getLegacyOnlyboostData = (
9
+ data: any,
10
+ chainId: number,
11
+ stakeDaoVeBoost: string,
12
+ convexVeBoost: string,
13
+ veCrvTotalSupply: string,
14
+ curveGaugeTotalSupply: bigint,
15
+ strategyHoldings: bigint,
16
+ workingBalance: bigint,
17
+ baseTotalSupply: bigint,
18
+ lpPriceInUsd: number,
19
+ maxApr: number,
20
+ baseRewardPrice: number,
21
+ ): OnlyBoostData => {
22
+ const active = data.active
23
+ const convexImpl = data.convexImpl
24
+
25
+ const totalSupply = formatUnits(active ? data.totalSupply : baseTotalSupply, 0)
26
+
27
+ // Current
28
+ const stakeDaoSupply = formatUnits(data.stakeDaoSupply, 0)
29
+ const convexSupply = formatUnits(data.convexSupply, 0)
30
+
31
+ const stakeDaoTvl = Number(formatUnits(data.stakeDaoSupply, 18)) * lpPriceInUsd
32
+ const convexTvl = Number(formatUnits(data.convexSupply, 18)) * lpPriceInUsd
33
+
34
+ const stakeDaoShare = Number(stakeDaoSupply) / Number(totalSupply)
35
+ const convexShare = Number(convexSupply) / Number(totalSupply)
36
+
37
+ const stakeDaoBoost = getBoost('curve', strategyHoldings, workingBalance)
38
+ const convexBoost = getBoost('curve', data.convexStrategyHoldings, data.convexWorkingBalance)
39
+
40
+ let convexApr =
41
+ ((Number(formatUnits(data.convexRewardRate * BigInt(ONE_YEAR), 18)) * baseRewardPrice) /
42
+ (convexTvl > 0 ? convexTvl : 1)) *
43
+ 100
44
+ convexApr = convexApr > maxApr ? maxApr : convexApr
45
+
46
+ let convexRealBoost = convexBoost
47
+ if (chainId === mainnet.id) convexRealBoost = maxApr > 0 ? (convexApr / maxApr) * 2.5 : 0
48
+
49
+ const stakeDaoWorkingBalanceShare = formatUnits(workingBalance, 0)
50
+ const convexWorkingBalanceShare =
51
+ data.convexStrategyHoldings > Zero && data.convexWorkingBalance > Zero
52
+ ? (((data.convexSupply * parseEther('1')) / data.convexStrategyHoldings) * data.convexWorkingBalance) /
53
+ parseEther('1')
54
+ : Zero
55
+
56
+ // Optimal
57
+ const stakeDaoOptSupply = formatUnits(data.stakeDaoOptSupply, 0)
58
+ const convexOptSupply = formatUnits(data.convexOptSupply, 0)
59
+
60
+ const stakeDaoOptTvl = Number(formatUnits(data.stakeDaoOptSupply, 18)) * lpPriceInUsd
61
+ const convexOptTvl = Number(formatUnits(data.convexOptSupply, 18)) * lpPriceInUsd
62
+
63
+ const stakeDaoOptShare = Number(stakeDaoOptSupply) / Number(totalSupply)
64
+ const convexOptShare = Number(convexOptSupply) / Number(totalSupply)
65
+
66
+ const stakeDaoOptStrategyHoldings = strategyHoldings - data.stakeDaoSupply + data.stakeDaoOptSupply
67
+ const convexOptStrategyHoldings = data.convexStrategyHoldings - data.convexSupply + data.convexOptSupply
68
+
69
+ const stakeDaoOptWorkingBalance = projectWorkingBalance(
70
+ BigInt(stakeDaoVeBoost),
71
+ BigInt(veCrvTotalSupply),
72
+ stakeDaoOptStrategyHoldings,
73
+ curveGaugeTotalSupply,
74
+ )
75
+ const convexOptWorkingBalance = projectWorkingBalance(
76
+ BigInt(convexVeBoost),
77
+ BigInt(veCrvTotalSupply),
78
+ convexOptStrategyHoldings,
79
+ curveGaugeTotalSupply,
80
+ )
81
+
82
+ const stakeDaoOptBoost = getBoost('curve', stakeDaoOptStrategyHoldings, stakeDaoOptWorkingBalance)
83
+ const convexOptBoost = getBoost('curve', convexOptStrategyHoldings, convexOptWorkingBalance)
84
+
85
+ const boost =
86
+ maxApr > 0 && Number(totalSupply) > 0 ? stakeDaoBoost * stakeDaoShare + convexRealBoost * convexShare : 2.5
87
+ const optimalBoost =
88
+ maxApr > 0 && Number(totalSupply) > 0 ? stakeDaoOptBoost * stakeDaoOptShare + convexOptBoost * convexOptShare : 2.5
89
+
90
+ return {
91
+ active,
92
+ implementations: [{ key: 'convex', address: convexImpl }],
93
+
94
+ totalSupply,
95
+ boost,
96
+ optimalBoost,
97
+
98
+ stakeDao: {
99
+ tvl: stakeDaoTvl,
100
+ supply: stakeDaoSupply,
101
+ boost: stakeDaoBoost,
102
+ share: stakeDaoShare,
103
+ workingBalance: stakeDaoWorkingBalanceShare,
104
+ workingBalanceShare: stakeDaoWorkingBalanceShare,
105
+ optimal: {
106
+ tvl: stakeDaoOptTvl,
107
+ supply: stakeDaoOptSupply,
108
+ boost: stakeDaoOptBoost,
109
+ share: stakeDaoOptShare,
110
+ },
111
+ },
112
+ sidecar: {
113
+ tvl: convexTvl,
114
+ supply: convexSupply,
115
+ boost: convexBoost,
116
+ share: convexShare,
117
+ workingBalance: formatUnits(data.convexWorkingBalance, 0),
118
+ workingBalanceShare: formatUnits(convexWorkingBalanceShare, 0),
119
+ optimal: {
120
+ tvl: convexOptTvl,
121
+ supply: convexOptSupply,
122
+ boost: convexOptBoost,
123
+ share: convexOptShare,
124
+ },
125
+ claimable: data.claimableData.map((c: any) => ({
126
+ token: c.token,
127
+ claimable: formatUnits(c.claimable, 0),
128
+ })),
129
+ },
130
+ }
131
+ }
132
+
133
+ export default getLegacyOnlyboostData
@@ -1,131 +1,192 @@
1
1
  import { ONE_YEAR, Zero } from '@stake-dao/constants'
2
- import { formatUnits, parseEther } from 'viem'
2
+ import { formatUnits, parseEther, zeroAddress } from 'viem'
3
3
  import { mainnet } from 'viem/chains'
4
4
  import { projectWorkingBalance } from '../../../utils.js'
5
5
  import type { OnlyBoostData } from '../../types.js'
6
6
  import { getBoost } from '../../utils/boost.js'
7
7
 
8
- const getOnlyboostData = (
9
- data: any,
10
- chainId: number,
11
- stakeDaoVeBoost: string,
12
- convexVeBoost: string,
13
- veCrvTotalSupply: string,
14
- curveGaugeTotalSupply: bigint,
15
- strategyHoldings: bigint,
16
- workingBalance: bigint,
17
- baseTotalSupply: bigint,
18
- lpPriceInUsd: number,
19
- maxApr: number,
20
- baseRewardPrice: number,
21
- ): OnlyBoostData => {
22
- const active = data.active
23
- const convexImpl = data.convexImpl
24
-
25
- const totalSupply = formatUnits(active ? data.totalSupply : baseTotalSupply, 0)
8
+ type GetOnlyBoostDataArgs = {
9
+ protocol: string
10
+ sidecar: string
11
+ totalSupply: bigint
12
+ sidecarSupply: bigint
13
+ stakeDaoSupply: bigint
14
+ sidecarTotalSupply: bigint
15
+ sidecarWorkingBalance: bigint
16
+ sidecarRewardRate: bigint
17
+ sidecarOptSupply: bigint
18
+ stakeDaoOptSupply: bigint
19
+ chainId: number
20
+ stakeDaoVeBoost: string
21
+ sidecarVeBoost: string
22
+ veTknTotalSupply: string
23
+ gaugeTotalSupply: bigint
24
+ workingBalance: bigint
25
+ baseTotalSupply: bigint
26
+ lpPriceInUsd: number
27
+ maxApr: number
28
+ baseRewardPrice: number
29
+ }
26
30
 
27
- // Current
28
- const stakeDaoSupply = formatUnits(data.stakeDaoSupply, 0)
29
- const convexSupply = formatUnits(data.convexSupply, 0)
31
+ export const extractSidecarPool = (protocol: string, metadata: any) => {
32
+ if (metadata.pid) {
33
+ if (protocol === 'curve' && metadata.convexBaseRewardPool) {
34
+ return { id: Number(metadata.pid), address: metadata.convexBaseRewardPool }
35
+ }
36
+
37
+ if (protocol === 'balancer' && metadata.auraRewardPool) {
38
+ return { id: Number(metadata.pid), address: metadata.auraRewardPool }
39
+ }
40
+ }
41
+
42
+ return undefined
43
+ }
44
+
45
+ export const extractFromMetadata = (protocol: string, metadata: any) => {
46
+ if (protocol === 'curve') {
47
+ return {
48
+ sidecarTotalSupply: BigInt(metadata.convexTotalSupply || '0'),
49
+ sidecarWorkingBalance: BigInt(metadata.workingBalanceConvex || '0'),
50
+ sidecarRewardRate: BigInt(metadata.convexRewardRate || '0'),
51
+ }
52
+ }
53
+
54
+ if (protocol === 'balancer') {
55
+ return {
56
+ sidecarTotalSupply: BigInt(metadata.auraTotalSupply || '0'),
57
+ sidecarWorkingBalance: BigInt(metadata.workingBalanceAura || '0'),
58
+ sidecarRewardRate: BigInt(metadata.auraRewardRate || '0'),
59
+ }
60
+ }
61
+
62
+ return { sidecarTotalSupply: Zero, sidecarWorkingBalance: Zero, sidecarRewardRate: Zero }
63
+ }
30
64
 
31
- const stakeDaoTvl = Number(formatUnits(data.stakeDaoSupply, 18)) * lpPriceInUsd
32
- const convexTvl = Number(formatUnits(data.convexSupply, 18)) * lpPriceInUsd
65
+ const getSidecarId = (protocol: string) => {
66
+ if (protocol === 'curve') return 'convex'
67
+ if (protocol === 'balancer') return 'aura'
68
+
69
+ return ''
70
+ }
71
+
72
+ const getOnlyboostData = ({
73
+ protocol,
74
+ sidecar,
75
+ totalSupply,
76
+ sidecarSupply,
77
+ stakeDaoSupply,
78
+ sidecarTotalSupply,
79
+ sidecarWorkingBalance,
80
+ sidecarRewardRate,
81
+ sidecarOptSupply,
82
+ stakeDaoOptSupply,
83
+ chainId,
84
+ stakeDaoVeBoost,
85
+ sidecarVeBoost,
86
+ veTknTotalSupply,
87
+ gaugeTotalSupply,
88
+ workingBalance,
89
+ baseTotalSupply,
90
+ lpPriceInUsd,
91
+ maxApr,
92
+ baseRewardPrice,
93
+ }: GetOnlyBoostDataArgs): OnlyBoostData => {
94
+ const active = sidecar !== zeroAddress
95
+ totalSupply = active ? totalSupply : baseTotalSupply
96
+
97
+ // Current
98
+ const stakeDaoTvl = Number(formatUnits(stakeDaoSupply, 18)) * lpPriceInUsd
99
+ const sidecarTvl = Number(formatUnits(sidecarSupply, 18)) * lpPriceInUsd
33
100
 
34
101
  const stakeDaoShare = Number(stakeDaoSupply) / Number(totalSupply)
35
- const convexShare = Number(convexSupply) / Number(totalSupply)
102
+ const sidecarShare = Number(sidecarSupply) / Number(totalSupply)
36
103
 
37
- const stakeDaoBoost = getBoost('curve', strategyHoldings, workingBalance)
38
- const convexBoost = getBoost('curve', data.convexStrategyHoldings, data.convexWorkingBalance)
104
+ const stakeDaoBoost = getBoost(protocol, stakeDaoSupply, workingBalance)
105
+ const sidecarBoost = getBoost(protocol, sidecarTotalSupply, sidecarWorkingBalance)
39
106
 
40
- let convexApr =
41
- ((Number(formatUnits(data.convexRewardRate * BigInt(ONE_YEAR), 18)) * baseRewardPrice) /
42
- (convexTvl > 0 ? convexTvl : 1)) *
107
+ let sidecarApr =
108
+ ((Number(formatUnits(sidecarRewardRate * BigInt(ONE_YEAR), 18)) * baseRewardPrice) /
109
+ (sidecarTvl > 0 ? sidecarTvl : 1)) *
43
110
  100
44
- convexApr = convexApr > maxApr ? maxApr : convexApr
111
+ sidecarApr = sidecarApr > maxApr ? maxApr : sidecarApr
45
112
 
46
- let convexRealBoost = convexBoost
47
- if (chainId === mainnet.id) convexRealBoost = maxApr > 0 ? (convexApr / maxApr) * 2.5 : 0
113
+ let sidecarRealBoost = sidecarBoost
114
+ if (chainId === mainnet.id) sidecarRealBoost = maxApr > 0 ? (sidecarApr / maxApr) * 2.5 : 0
48
115
 
49
116
  const stakeDaoWorkingBalanceShare = formatUnits(workingBalance, 0)
50
- const convexWorkingBalanceShare =
51
- data.convexStrategyHoldings > Zero && data.convexWorkingBalance > Zero
52
- ? (((data.convexSupply * parseEther('1')) / data.convexStrategyHoldings) * data.convexWorkingBalance) /
53
- parseEther('1')
117
+ const sidecarWorkingBalanceShare =
118
+ sidecarTotalSupply > Zero && sidecarWorkingBalance > Zero
119
+ ? (((sidecarSupply * parseEther('1')) / sidecarTotalSupply) * sidecarWorkingBalance) / parseEther('1')
54
120
  : Zero
55
121
 
56
122
  // Optimal
57
- const stakeDaoOptSupply = formatUnits(data.stakeDaoOptSupply, 0)
58
- const convexOptSupply = formatUnits(data.convexOptSupply, 0)
59
-
60
- const stakeDaoOptTvl = Number(formatUnits(data.stakeDaoOptSupply, 18)) * lpPriceInUsd
61
- const convexOptTvl = Number(formatUnits(data.convexOptSupply, 18)) * lpPriceInUsd
123
+ const stakeDaoOptTvl = Number(formatUnits(stakeDaoOptSupply, 18)) * lpPriceInUsd
124
+ const sidecarOptTvl = Number(formatUnits(sidecarOptSupply, 18)) * lpPriceInUsd
62
125
 
63
126
  const stakeDaoOptShare = Number(stakeDaoOptSupply) / Number(totalSupply)
64
- const convexOptShare = Number(convexOptSupply) / Number(totalSupply)
127
+ const sidecarOptShare = Number(sidecarOptSupply) / Number(totalSupply)
65
128
 
66
- const stakeDaoOptStrategyHoldings = strategyHoldings - data.stakeDaoSupply + data.stakeDaoOptSupply
67
- const convexOptStrategyHoldings = data.convexStrategyHoldings - data.convexSupply + data.convexOptSupply
129
+ const stakeDaoOptStrategyHoldings = stakeDaoSupply - stakeDaoSupply + stakeDaoOptSupply
130
+ const sidecarOptStrategyHoldings = sidecarTotalSupply - sidecarSupply + sidecarOptSupply
68
131
 
69
132
  const stakeDaoOptWorkingBalance = projectWorkingBalance(
70
133
  BigInt(stakeDaoVeBoost),
71
- BigInt(veCrvTotalSupply),
134
+ BigInt(veTknTotalSupply),
72
135
  stakeDaoOptStrategyHoldings,
73
- curveGaugeTotalSupply,
136
+ gaugeTotalSupply,
74
137
  )
75
- const convexOptWorkingBalance = projectWorkingBalance(
76
- BigInt(convexVeBoost),
77
- BigInt(veCrvTotalSupply),
78
- convexOptStrategyHoldings,
79
- curveGaugeTotalSupply,
138
+ const sidecarOptWorkingBalance = projectWorkingBalance(
139
+ BigInt(sidecarVeBoost),
140
+ BigInt(veTknTotalSupply),
141
+ sidecarOptStrategyHoldings,
142
+ gaugeTotalSupply,
80
143
  )
81
144
 
82
- const stakeDaoOptBoost = getBoost('curve', stakeDaoOptStrategyHoldings, stakeDaoOptWorkingBalance)
83
- const convexOptBoost = getBoost('curve', convexOptStrategyHoldings, convexOptWorkingBalance)
145
+ const stakeDaoOptBoost = getBoost(protocol, stakeDaoOptStrategyHoldings, stakeDaoOptWorkingBalance)
146
+ const sidecarOptBoost = getBoost(protocol, sidecarOptStrategyHoldings, sidecarOptWorkingBalance)
84
147
 
85
148
  const boost =
86
- maxApr > 0 && Number(totalSupply) > 0 ? stakeDaoBoost * stakeDaoShare + convexRealBoost * convexShare : 2.5
149
+ maxApr > 0 && Number(totalSupply) > 0 ? stakeDaoBoost * stakeDaoShare + sidecarRealBoost * sidecarShare : 2.5
87
150
  const optimalBoost =
88
- maxApr > 0 && Number(totalSupply) > 0 ? stakeDaoOptBoost * stakeDaoOptShare + convexOptBoost * convexOptShare : 2.5
151
+ maxApr > 0 && Number(totalSupply) > 0
152
+ ? stakeDaoOptBoost * stakeDaoOptShare + sidecarOptBoost * sidecarOptShare
153
+ : 2.5
89
154
 
90
155
  return {
91
156
  active,
92
- implementations: [{ key: 'convex', address: convexImpl }],
157
+ implementations: [{ key: getSidecarId(protocol), address: sidecar }],
93
158
 
94
- totalSupply,
159
+ totalSupply: formatUnits(totalSupply, 0),
95
160
  boost,
96
161
  optimalBoost,
97
162
 
98
163
  stakeDao: {
99
164
  tvl: stakeDaoTvl,
100
- supply: stakeDaoSupply,
165
+ supply: formatUnits(stakeDaoSupply, 0),
101
166
  boost: stakeDaoBoost,
102
167
  share: stakeDaoShare,
103
168
  workingBalance: stakeDaoWorkingBalanceShare,
104
169
  workingBalanceShare: stakeDaoWorkingBalanceShare,
105
170
  optimal: {
106
171
  tvl: stakeDaoOptTvl,
107
- supply: stakeDaoOptSupply,
172
+ supply: formatUnits(stakeDaoOptSupply, 0),
108
173
  boost: stakeDaoOptBoost,
109
174
  share: stakeDaoOptShare,
110
175
  },
111
176
  },
112
- convex: {
113
- tvl: convexTvl,
114
- supply: convexSupply,
115
- boost: convexBoost,
116
- share: convexShare,
117
- workingBalance: formatUnits(data.convexWorkingBalance, 0),
118
- workingBalanceShare: formatUnits(convexWorkingBalanceShare, 0),
177
+ sidecar: {
178
+ tvl: sidecarTvl,
179
+ supply: formatUnits(sidecarSupply, 0),
180
+ boost: sidecarBoost,
181
+ share: sidecarShare,
182
+ workingBalance: formatUnits(sidecarWorkingBalance, 0),
183
+ workingBalanceShare: formatUnits(sidecarWorkingBalanceShare, 0),
119
184
  optimal: {
120
- tvl: convexOptTvl,
121
- supply: convexOptSupply,
122
- boost: convexOptBoost,
123
- share: convexOptShare,
185
+ tvl: sidecarOptTvl,
186
+ supply: formatUnits(sidecarOptSupply, 0),
187
+ boost: sidecarOptBoost,
188
+ share: sidecarOptShare,
124
189
  },
125
- claimable: data.claimableData.map((c: any) => ({
126
- token: c.token,
127
- claimable: formatUnits(c.claimable, 0),
128
- })),
129
190
  },
130
191
  }
131
192
  }
@@ -14,7 +14,7 @@ import { getOnChainSdCurveData } from '../onChainCalls.js'
14
14
  import { BROKEN_VAULTS } from './curveApiData/config.js'
15
15
  import type { GaugesWeightsData } from './curveApiData/getGaugesWeights.js'
16
16
  import { getCvxApr } from './getCvxApr.js'
17
- import getOnlyboostData from './getOnlyboostData.js'
17
+ import getLegacyOnlyboostData from './getLegacyOnlyboostData.js'
18
18
  import { getCurveStratsWithApr } from './getStratsWithApr.js'
19
19
 
20
20
  interface TFetchCurve {
@@ -93,7 +93,7 @@ export const fetchCurve = async ({
93
93
  let boost = 2.5
94
94
 
95
95
  if (chainId === mainnet.id && v.onlyboost.active) {
96
- onlyboost = getOnlyboostData(
96
+ onlyboost = getLegacyOnlyboostData(
97
97
  { ...v.onlyboost, convexRewardRate: Zero },
98
98
  chainId,
99
99
  global.stakeDaoVeBoost,
@@ -170,11 +170,11 @@ export const fetchCurve = async ({
170
170
  let cvxApr = 0
171
171
 
172
172
  if (onlyboost.active) {
173
- convexCrvProjectedApr = onlyboost.convex.boost * strat.minApr
173
+ convexCrvProjectedApr = onlyboost.sidecar.boost * strat.minApr
174
174
  cvxApr =
175
- onlyboost.active && onlyboost.convex.tvl > 0
175
+ onlyboost.active && onlyboost.sidecar.tvl > 0
176
176
  ? getCvxApr(
177
- onlyboost.convex.tvl,
177
+ onlyboost.sidecar.tvl,
178
178
  tvl,
179
179
  convexCrvProjectedApr,
180
180
  global.cvxTotalSupply,
@@ -213,7 +213,7 @@ export const fetchCurve = async ({
213
213
  onlyboost: {
214
214
  convex: {
215
215
  projected: {
216
- baseToken: strat.minApr ? onlyboost.convex.boost * strat.minApr : undefined,
216
+ baseToken: strat.minApr ? onlyboost.sidecar.boost * strat.minApr : undefined,
217
217
  },
218
218
  },
219
219
  optimal: {
@@ -50,7 +50,7 @@ export type OnlyBoostData = {
50
50
  boost: number
51
51
  optimalBoost: number
52
52
  stakeDao: OnlyBoostProtocolData
53
- convex: OnlyBoostProtocolData
53
+ sidecar: OnlyBoostProtocolData
54
54
  }
55
55
 
56
56
  export type SdGauge = {