@stake-dao/reader 0.5.0 → 0.5.2
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.
- package/dist/esm/lockers/fetch/parse.js +5 -2
- package/dist/esm/lockers/fetch/parse.js.map +1 -1
- package/dist/esm/lockers/fetch/protocols/yieldbasis.js +1 -1
- package/dist/esm/lockers/fetch/protocols/yieldbasis.js.map +1 -1
- package/dist/esm/lockers/utils/getSdtMinApr.js +14 -0
- package/dist/esm/lockers/utils/getSdtMinApr.js.map +1 -0
- package/dist/types/lockers/fetch/parse.d.ts.map +1 -1
- package/dist/types/lockers/utils/getSdtMinApr.d.ts +2 -0
- package/dist/types/lockers/utils/getSdtMinApr.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/lockers/fetch/parse.ts +5 -2
- package/src/lockers/fetch/protocols/yieldbasis.ts +1 -1
- package/src/lockers/utils/getSdtMinApr.ts +18 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { ONE_WEEK, ONE_YEAR, Zero } from '@stake-dao/constants';
|
|
1
|
+
import { ONE_WEEK, ONE_YEAR, Zero, tokenWithId } from '@stake-dao/constants';
|
|
2
2
|
import { formatUnits, parseUnits } from 'viem';
|
|
3
3
|
import { equalTlc } from '../../utils.js';
|
|
4
4
|
import getBribesRewardsData, {} from '../utils/getBribesRewardsData.js';
|
|
5
|
+
import { getMinSdtApr } from '../utils/getSdtMinApr.js';
|
|
5
6
|
import substractFees from '../utils/substractFees.js';
|
|
6
7
|
export const parseVoteBoosterData = (locker, voteBooster) => {
|
|
7
8
|
const voteBoosterBoost = voteBooster && Number(voteBooster.working) > 0 && Number(voteBooster.staked) > 0
|
|
@@ -105,7 +106,9 @@ export const parse = async ({ locker, raw, common, prices }) => {
|
|
|
105
106
|
const oneYearRate = rate * BigInt(ONE_YEAR);
|
|
106
107
|
let apr = streaming
|
|
107
108
|
? rewardPrice && tvl > 0
|
|
108
|
-
?
|
|
109
|
+
? r.address === tokenWithId('sdt', 1)?.address
|
|
110
|
+
? getMinSdtApr(oneYearRate, Number(raw.totalSupplyStaked), Number(raw.gaugeWorkingSupply), rewardPrice, tvl)
|
|
111
|
+
: ((Number(formatUnits(oneYearRate, r.decimals)) * rewardPrice) / tvl) * 100
|
|
109
112
|
: 0
|
|
110
113
|
: 0;
|
|
111
114
|
if (raw.replaceApr?.[index]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../../src/lockers/fetch/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../../src/lockers/fetch/parse.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export const locker = {
|
|
|
18
18
|
{ ...tokenWithId('sdt'), distribution: 'streamed', origin: 'sdtEmission' },
|
|
19
19
|
{ ...tokenWithId('sdyb'), distribution: 'distributed', origin: 'bounties' },
|
|
20
20
|
],
|
|
21
|
-
delegation: ['
|
|
21
|
+
delegation: ['sd-yieldbasis.eth'],
|
|
22
22
|
modules: {
|
|
23
23
|
depositor: '0xFB9Aa699f1BaDb31A7C4B40F7Fa1f49469595785',
|
|
24
24
|
locker: '0x0070D9adC687a28FBAcC0a0Aab24B90c037AD24e',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yieldbasis.js","sourceRoot":"","sources":["../../../../../src/lockers/fetch/protocols/yieldbasis.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAClC,OAAO,mBAAmB,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAa,MAAM,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG7C,MAAM,CAAC,MAAM,MAAM,GAAW;IAC5B,EAAE,EAAE,IAAI;IACR,MAAM,EAAE,IAAI;IACZ,QAAQ,EAAE,YAAY;IACtB,mBAAmB,EACjB,sIAAsI;IACxI,OAAO,EAAE,yBAAyB;IAClC,OAAO,EAAE,GAAG,yBAAyB,0DAA0D;IAC/F,OAAO,EAAE,CAAC;IACV,GAAG,EAAE,cAAc;IACnB,KAAK,EAAE,WAAW,CAAC,IAAI,CAAE;IACzB,OAAO,EAAE,WAAW,CAAC,MAAM,CAAE;IAC7B,OAAO,EAAE;QACP,EAAE,GAAG,WAAW,CAAC,KAAK,CAAE,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE;QAC3E,EAAE,GAAG,WAAW,CAAC,MAAM,CAAE,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE;KAC7E;IACD,UAAU,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"yieldbasis.js","sourceRoot":"","sources":["../../../../../src/lockers/fetch/protocols/yieldbasis.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { formatEther } from 'viem';
|
|
2
|
+
export const getMinSdtApr = (oneYearRate, // reward emission per year (in wei)
|
|
3
|
+
totalSupplyStaked, // total LP tokens staked
|
|
4
|
+
gaugeWorkingSupply, // total working supply of the gauge
|
|
5
|
+
rewardPrice, // price of SDT in USD
|
|
6
|
+
tvl) => {
|
|
7
|
+
// Calculate the share of the supply that is boosted
|
|
8
|
+
const boostedShare = (gaugeWorkingSupply - totalSupplyStaked * 0.4) / gaugeWorkingSupply;
|
|
9
|
+
// Remove the boosted share from the rate
|
|
10
|
+
const rateWithoutBoost = Number(formatEther(oneYearRate)) * (1 - boostedShare);
|
|
11
|
+
// return APR
|
|
12
|
+
return ((rateWithoutBoost * rewardPrice) / tvl) * 100;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=getSdtMinApr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getSdtMinApr.js","sourceRoot":"","sources":["../../../../src/lockers/utils/getSdtMinApr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAElC,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,WAAmB,EAAE,oCAAoC;AACzD,iBAAyB,EAAE,yBAAyB;AACpD,kBAA0B,EAAE,oCAAoC;AAChE,WAAmB,EAAE,sBAAsB;AAC3C,GAAW,EACX,EAAE;IACF,oDAAoD;IACpD,MAAM,YAAY,GAAG,CAAC,kBAAkB,GAAG,iBAAiB,GAAG,GAAG,CAAC,GAAG,kBAAkB,CAAA;IAExF,yCAAyC;IACzC,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,CAAA;IAE9E,aAAa;IACb,OAAO,CAAC,CAAC,gBAAgB,GAAG,WAAW,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;AACvD,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/lockers/fetch/parse.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/lockers/fetch/parse.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC,eAAO,MAAM,oBAAoB,WAAY,MAAM,eAAe,GAAG;;;;;CAYpE,CAAA;AAED,eAAO,MAAM,QAAQ,WAAY,MAAM,UAAU,GAAG,WAOnD,CAAA;AAED,eAAO,MAAM,cAAc,WAAY,MAAM,UAAU,GAAG,QA4BzD,CAAA;AAED,eAAO,MAAM,eAAe,kBAAmB,GAAG,mBAAmB,MAAM,yBAAyB,MAAM,WAuBzG,CAAA;AAED,eAAO,MAAM,eAAe,6CAkB3B,CAAA;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,GAAG,EAAE,CAAA;IACd,OAAO,CAAC,EAAE;QACR,SAAS,EAAE,MAAM,CAAA;QACjB,aAAa,EAAE,MAAM,EAAE,CAAA;KACxB,CAAA;IACD,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,MAAM,CAAA;QACf,MAAM,EAAE,MAAM,CAAA;QACd,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,GAAG,EAAE,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,GAAG,CAAA;IACX,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,EAAE;QACN,UAAU,EAAE;YAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;SAAE,CAAA;QACxC,gBAAgB,EAAE,MAAM,CAAA;KACzB,CAAA;IACD,MAAM,EAAE,GAAG,EAAE,CAAA;CACd;AAED,eAAO,MAAM,KAAK,oCAA2C,YAAY,iBAmHxE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getSdtMinApr.d.ts","sourceRoot":"","sources":["../../../../src/lockers/utils/getSdtMinApr.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,gBACV,MAAM,qBACA,MAAM,sBACL,MAAM,eACb,MAAM,OACd,MAAM,WAUZ,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { ONE_WEEK, ONE_YEAR, Zero } from '@stake-dao/constants'
|
|
1
|
+
import { ONE_WEEK, ONE_YEAR, Zero, tokenWithId } from '@stake-dao/constants'
|
|
2
2
|
import { formatUnits, parseUnits } from 'viem'
|
|
3
3
|
import { equalTlc } from '../../utils.js'
|
|
4
4
|
import getBribesRewardsData, { type TBribesRewards } from '../utils/getBribesRewardsData.js'
|
|
5
|
+
import { getMinSdtApr } from '../utils/getSdtMinApr.js'
|
|
5
6
|
import substractFees from '../utils/substractFees.js'
|
|
6
7
|
import type { Locker } from './types.js'
|
|
7
8
|
|
|
@@ -171,7 +172,9 @@ export const parse = async ({ locker, raw, common, prices }: ParseLockers) => {
|
|
|
171
172
|
|
|
172
173
|
let apr = streaming
|
|
173
174
|
? rewardPrice && tvl > 0
|
|
174
|
-
?
|
|
175
|
+
? r.address === tokenWithId('sdt', 1)?.address
|
|
176
|
+
? getMinSdtApr(oneYearRate, Number(raw.totalSupplyStaked), Number(raw.gaugeWorkingSupply), rewardPrice, tvl)
|
|
177
|
+
: ((Number(formatUnits(oneYearRate, r.decimals)) * rewardPrice) / tvl) * 100
|
|
175
178
|
: 0
|
|
176
179
|
: 0
|
|
177
180
|
|
|
@@ -21,7 +21,7 @@ export const locker: Locker = {
|
|
|
21
21
|
{ ...tokenWithId('sdt')!, distribution: 'streamed', origin: 'sdtEmission' },
|
|
22
22
|
{ ...tokenWithId('sdyb')!, distribution: 'distributed', origin: 'bounties' },
|
|
23
23
|
],
|
|
24
|
-
delegation: ['
|
|
24
|
+
delegation: ['sd-yieldbasis.eth'],
|
|
25
25
|
modules: {
|
|
26
26
|
depositor: '0xFB9Aa699f1BaDb31A7C4B40F7Fa1f49469595785',
|
|
27
27
|
locker: '0x0070D9adC687a28FBAcC0a0Aab24B90c037AD24e',
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { formatEther } from 'viem'
|
|
2
|
+
|
|
3
|
+
export const getMinSdtApr = (
|
|
4
|
+
oneYearRate: bigint, // reward emission per year (in wei)
|
|
5
|
+
totalSupplyStaked: number, // total LP tokens staked
|
|
6
|
+
gaugeWorkingSupply: number, // total working supply of the gauge
|
|
7
|
+
rewardPrice: number, // price of SDT in USD
|
|
8
|
+
tvl: number, // TVL in USD
|
|
9
|
+
) => {
|
|
10
|
+
// Calculate the share of the supply that is boosted
|
|
11
|
+
const boostedShare = (gaugeWorkingSupply - totalSupplyStaked * 0.4) / gaugeWorkingSupply
|
|
12
|
+
|
|
13
|
+
// Remove the boosted share from the rate
|
|
14
|
+
const rateWithoutBoost = Number(formatEther(oneYearRate)) * (1 - boostedShare)
|
|
15
|
+
|
|
16
|
+
// return APR
|
|
17
|
+
return ((rateWithoutBoost * rewardPrice) / tvl) * 100
|
|
18
|
+
}
|