@stake-dao/reader 0.4.68 → 0.4.70

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 (35) hide show
  1. package/dist/esm/index.js +0 -1
  2. package/dist/esm/index.js.map +1 -1
  3. package/dist/esm/lockers/fetch/index.js +1 -7
  4. package/dist/esm/lockers/fetch/index.js.map +1 -1
  5. package/dist/esm/lockers/utils/getHttpCalls.js +2 -2
  6. package/dist/esm/lockers/utils/getHttpCalls.js.map +1 -1
  7. package/dist/esm/strategies/curve/fetch/curveApiData/config.js +2 -0
  8. package/dist/esm/strategies/curve/fetch/curveApiData/config.js.map +1 -1
  9. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  10. package/dist/types/index.d.ts +0 -1
  11. package/dist/types/index.d.ts.map +1 -1
  12. package/dist/types/lockers/fetch/index.d.ts +1 -3
  13. package/dist/types/lockers/fetch/index.d.ts.map +1 -1
  14. package/dist/types/strategies/curve/fetch/curveApiData/config.d.ts +1 -0
  15. package/dist/types/strategies/curve/fetch/curveApiData/config.d.ts.map +1 -1
  16. package/package.json +2 -2
  17. package/src/index.ts +0 -1
  18. package/src/lockers/fetch/index.ts +1 -9
  19. package/src/lockers/utils/getHttpCalls.ts +2 -2
  20. package/src/strategies/curve/fetch/curveApiData/config.ts +2 -0
  21. package/dist/esm/lockers/utils/cakeLockerAirdrop.js +0 -46
  22. package/dist/esm/lockers/utils/cakeLockerAirdrop.js.map +0 -1
  23. package/dist/esm/lockers/utils/endpoints.js +0 -3
  24. package/dist/esm/lockers/utils/endpoints.js.map +0 -1
  25. package/dist/esm/lockers/utils/getCherries.js +0 -34
  26. package/dist/esm/lockers/utils/getCherries.js.map +0 -1
  27. package/dist/types/lockers/utils/cakeLockerAirdrop.d.ts +0 -8
  28. package/dist/types/lockers/utils/cakeLockerAirdrop.d.ts.map +0 -1
  29. package/dist/types/lockers/utils/endpoints.d.ts +0 -3
  30. package/dist/types/lockers/utils/endpoints.d.ts.map +0 -1
  31. package/dist/types/lockers/utils/getCherries.d.ts +0 -4
  32. package/dist/types/lockers/utils/getCherries.d.ts.map +0 -1
  33. package/src/lockers/utils/cakeLockerAirdrop.ts +0 -73
  34. package/src/lockers/utils/endpoints.ts +0 -2
  35. package/src/lockers/utils/getCherries.ts +0 -48
@@ -6,7 +6,6 @@ export { getSnapshotScores } from './utils/snapshot.js';
6
6
  export type { BatchJsonRpcArgs } from './utils.js';
7
7
  export { fetchSdt } from './sdt/fetch.js';
8
8
  export { fetchLockers } from './lockers/fetch/index.js';
9
- export { getUserCherries, getCherriesLeaderBoard, getUserSnapshotCherries } from './lockers/utils/getCherries.js';
10
9
  export * from './strategies/utils/index.js';
11
10
  export { buildCurveStrategies } from './strategies/curve/build.js';
12
11
  export { fetchCurve } from './strategies/curve/fetch/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,8 @@ interface TFetchLockers {
4
4
  provider: any;
5
5
  chainId: number;
6
6
  prices: Price[];
7
- withAirdropGraph?: boolean;
8
7
  }
9
- export declare const fetchLockers: ({ provider, chainId, prices, withAirdropGraph }: TFetchLockers) => Promise<{
8
+ export declare const fetchLockers: ({ provider, chainId, prices }: TFetchLockers) => Promise<{
10
9
  parsed: {
11
10
  rewards: {
12
11
  token: import("@stake-dao/constants").LockerReward;
@@ -49,7 +48,6 @@ export declare const fetchLockers: ({ provider, chainId, prices, withAirdropGrap
49
48
  } | undefined;
50
49
  alternativeYields: any;
51
50
  extensions: {
52
- airdropGraph?: any;
53
51
  sideChains: {
54
52
  tokenLocked: string;
55
53
  veBalanceOfLocker: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lockers/fetch/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAK5C,OAA6B,EAAE,KAAK,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAuB5F,UAAU,aAAa;IACrB,QAAQ,EAAE,GAAG,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAED,eAAO,MAAM,YAAY,oDAA2D,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiShG,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lockers/fetch/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAK5C,OAA6B,EAAE,KAAK,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAsB5F,UAAU,aAAa;IACrB,QAAQ,EAAE,GAAG,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,KAAK,EAAE,CAAA;CAChB;AAED,eAAO,MAAM,YAAY,kCAAyC,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2R9E,CAAA"}
@@ -33,6 +33,7 @@ export declare const CUSTOM_GAUGES: {
33
33
  '0xEd4064f376cB8d68F770FB1Ff088a3d0F3FF5c4d': string;
34
34
  '0x6BA5b4e438FA0aAf7C1bD179285aF65d13bD3D90': string;
35
35
  '0xBfAb6FA95E0091ed66058ad493189D2cB29385E6': string;
36
+ '0x1005F7406f32a61BD760CfA14aCCd2737913d546': string;
36
37
  };
37
38
  42161: {};
38
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../src/strategies/curve/fetch/curveApiData/config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE;IAAE,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAA;CAqBvD,CAAA;AAED,eAAO,MAAM,iBAAiB;;;CAG7B,CAAA;AAED,eAAO,MAAM,UAAU,KAAK,CAAA;AAC5B,eAAO,MAAM,iBAAiB;;;CAAuB,CAAA;AACrD,eAAO,MAAM,iBAAiB,MAAM,CAAA;AACpC,eAAO,MAAM,yBAAyB,MAAM,CAAA;AAC5C,eAAO,MAAM,yBAAyB,KAAK,CAAA;AAC3C,eAAO,MAAM,0BAA0B,KAAK,CAAA;AAE5C,eAAO,MAAM,aAAa;;;CAGzB,CAAA;AAED,eAAO,MAAM,aAAa;;;CAGzB,CAAA;AAED,eAAO,MAAM,aAAa;;;;;;;CAWzB,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../src/strategies/curve/fetch/curveApiData/config.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE;IAAE,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAA;CAqBvD,CAAA;AAED,eAAO,MAAM,iBAAiB;;;CAG7B,CAAA;AAED,eAAO,MAAM,UAAU,KAAK,CAAA;AAC5B,eAAO,MAAM,iBAAiB;;;CAAuB,CAAA;AACrD,eAAO,MAAM,iBAAiB,MAAM,CAAA;AACpC,eAAO,MAAM,yBAAyB,MAAM,CAAA;AAC5C,eAAO,MAAM,yBAAyB,KAAK,CAAA;AAC3C,eAAO,MAAM,0BAA0B,KAAK,CAAA;AAE5C,eAAO,MAAM,aAAa;;;CAGzB,CAAA;AAED,eAAO,MAAM,aAAa;;;CAGzB,CAAA;AAED,eAAO,MAAM,aAAa;;;;;;;;CAazB,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stake-dao/reader",
3
3
  "description": "",
4
- "version": "0.4.68",
4
+ "version": "0.4.70",
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.32"
38
+ "@stake-dao/constants": "0.4.33"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/lodash-es": "^4.17.12",
package/src/index.ts CHANGED
@@ -17,7 +17,6 @@ export { fetchSdt } from './sdt/fetch.js'
17
17
  /// --- LOCKERS
18
18
  ////////////////////////////////////////////////////////////////
19
19
  export { fetchLockers } from './lockers/fetch/index.js'
20
- export { getUserCherries, getCherriesLeaderBoard, getUserSnapshotCherries } from './lockers/utils/getCherries.js'
21
20
 
22
21
  ////////////////////////////////////////////////////////////////
23
22
  /// --- STATEGIES
@@ -9,7 +9,6 @@ import { type Call, type MultiChainCall, equalTlc, multicall, multichainMultical
9
9
  import { extractFees, feeCalls } from '../utils/callsForLockers/feeCalls.js'
10
10
  import callsForLockers from '../utils/callsForLockers/index.js'
11
11
  import getBribesRewardsData, { type TBribesRewards } from '../utils/getBribesRewardsData.js'
12
- import { getCherriesLeaderBoard } from '../utils/getCherries.js'
13
12
  import getFees from '../utils/getFees.js'
14
13
  import getHttpCalls from '../utils/getHttpCalls.js'
15
14
  import { lockedAmountCallSideChain } from '../utils/index.js'
@@ -35,10 +34,9 @@ interface TFetchLockers {
35
34
  provider: any
36
35
  chainId: number
37
36
  prices: Price[]
38
- withAirdropGraph?: boolean
39
37
  }
40
38
 
41
- export const fetchLockers = async ({ provider, chainId, prices, withAirdropGraph }: TFetchLockers) => {
39
+ export const fetchLockers = async ({ provider, chainId, prices }: TFetchLockers) => {
42
40
  const chainLockers: Locker[] = lockers.filter((l) => l.chainId === chainId)
43
41
 
44
42
  const httpCalls = await getHttpCalls(chainId)
@@ -111,11 +109,6 @@ export const fetchLockers = async ({ provider, chainId, prices, withAirdropGraph
111
109
  ).length
112
110
  const chunkedRawLockersData = rawLockersData.splice(0, lockerCallsLength)
113
111
 
114
- let airdropGraph: any
115
- if (locker.id === 'cake' && withAirdropGraph) {
116
- airdropGraph = await getCherriesLeaderBoard()
117
- }
118
-
119
112
  const lockerFee = lockersFees.find((l) => l.lockerId === locker.id)
120
113
  const fees = getFees(locker, lockerFee)
121
114
 
@@ -308,7 +301,6 @@ export const fetchLockers = async ({ provider, chainId, prices, withAirdropGraph
308
301
  extensions: {
309
302
  ...locker.extensions,
310
303
  sideChains,
311
- ...(locker.id === 'cake' ? { airdropGraph } : {}),
312
304
  },
313
305
  veBoostTotalSupply,
314
306
  veBoostApr,
@@ -45,7 +45,7 @@ const getHttpCalls = async (chainId: number) => {
45
45
  case fraxtal.id: {
46
46
  const httpCalls = [
47
47
  (await fetch(`${GH_STAKE_DAO_BOUNTIES_REPORT}/main/delegationsAPRs.json`)).json(),
48
- (await fetch(`${STAKE_DAO_API}/lockers/sdfxs-working-supply.json`)).json(),
48
+ (await fetch(`${STAKE_DAO_API}/main/api/lockers/sdfxs-working-supply.json`)).json(),
49
49
  ]
50
50
 
51
51
  const httpResponses = (await Promise.allSettled(httpCalls)).map((result) =>
@@ -57,7 +57,7 @@ const getHttpCalls = async (chainId: number) => {
57
57
  case bsc.id: {
58
58
  const httpCalls = [
59
59
  (await fetch(`${GH_STAKE_DAO_BOUNTIES_REPORT}/main/delegationsAPRs.json`)).json(),
60
- (await fetch(`${STAKE_DAO_API}/api/lockers/sdcake-working-supply.json`)).json(),
60
+ (await fetch(`${STAKE_DAO_API}/main/api/lockers/sdcake-working-supply.json`)).json(),
61
61
  ]
62
62
 
63
63
  const httpResponses = (await Promise.allSettled(httpCalls)).map((result) =>
@@ -59,6 +59,8 @@ export const CUSTOM_GAUGES = {
59
59
  '0x6BA5b4e438FA0aAf7C1bD179285aF65d13bD3D90': '0x66ec719045bBD62db5eBB11184c18237D3Cc2E62',
60
60
  // wbeth (ETH+wBETH)
61
61
  '0xBfAb6FA95E0091ed66058ad493189D2cB29385E6': '0x50161102a240b1456d770Dbb55c76d8dc2D160Aa',
62
+ // 2pool (USDC+USDT)
63
+ '0x1005F7406f32a61BD760CfA14aCCd2737913d546': '0x9f330Db38caAAe5B61B410e2f0aaD63fff2109d8',
62
64
  },
63
65
  42161: {},
64
66
  }
@@ -1,46 +0,0 @@
1
- import { Zero } from '@stake-dao/constants';
2
- const THREE_M_MULTIPLIER = BigInt(10);
3
- const TEN_M_MULTIPLIER = BigInt(8);
4
- const TWENTY_FIVE_M_MULTIPLIER = BigInt(5);
5
- const FIFTY_M_MULTIPLIER = BigInt(3);
6
- export const computeRatePoints = (rate, timestampStart, timestampEnd, global, basePoints = Zero) => {
7
- if (global.fiftyMTimestamp > Zero && timestampStart >= global.fiftyMTimestamp) {
8
- return basePoints + rate * (timestampEnd - timestampStart);
9
- }
10
- if (global.twentyFiveMTimestamp > Zero && timestampStart >= global.twentyFiveMTimestamp) {
11
- if (global.fiftyMTimestamp > Zero && timestampEnd >= global.fiftyMTimestamp) {
12
- const checkpointPoints = basePoints + FIFTY_M_MULTIPLIER * rate * (global.fiftyMTimestamp - timestampStart);
13
- return computeRatePoints(rate, global.fiftyMTimestamp, timestampEnd, global, checkpointPoints);
14
- }
15
- return basePoints + FIFTY_M_MULTIPLIER * rate * (timestampEnd - timestampStart);
16
- }
17
- if (global.tenMTimestamp > Zero && timestampStart >= global.tenMTimestamp) {
18
- if (global.twentyFiveMTimestamp > Zero && timestampEnd >= global.twentyFiveMTimestamp) {
19
- const checkpointPoints = basePoints + TWENTY_FIVE_M_MULTIPLIER * rate * (global.twentyFiveMTimestamp - timestampStart);
20
- return computeRatePoints(rate, global.twentyFiveMTimestamp, timestampEnd, global, checkpointPoints);
21
- }
22
- return basePoints + TWENTY_FIVE_M_MULTIPLIER * rate * (timestampEnd - timestampStart);
23
- }
24
- if (global.threeMTimestamp > Zero && timestampStart >= global.threeMTimestamp) {
25
- if (global.tenMTimestamp > Zero && timestampEnd >= global.tenMTimestamp) {
26
- const checkpointPoints = basePoints + TEN_M_MULTIPLIER * rate * (global.tenMTimestamp - timestampStart);
27
- return computeRatePoints(rate, global.tenMTimestamp, timestampEnd, global, checkpointPoints);
28
- }
29
- return basePoints + TEN_M_MULTIPLIER * rate * (timestampEnd - timestampStart);
30
- }
31
- if (global.threeMTimestamp > Zero && timestampEnd >= global.threeMTimestamp) {
32
- const checkpointPoints = basePoints + THREE_M_MULTIPLIER * rate * (global.threeMTimestamp - timestampStart);
33
- return computeRatePoints(rate, global.threeMTimestamp, timestampEnd, global, checkpointPoints);
34
- }
35
- return basePoints + THREE_M_MULTIPLIER * rate * (timestampEnd - timestampStart);
36
- };
37
- export const getUpdatedPointsAmount = (userRate, userLastUpdate, userLastPoints, airdropGraph, timestamp) => {
38
- const now = timestamp ? timestamp : Math.floor(Date.now() / 1000);
39
- return computeRatePoints(userRate, BigInt(userLastUpdate), BigInt(now), {
40
- threeMTimestamp: BigInt(airdropGraph.threeMTimestamp),
41
- tenMTimestamp: BigInt(airdropGraph.tenMTimestamp),
42
- twentyFiveMTimestamp: BigInt(airdropGraph.twentyFiveMTimestamp),
43
- fiftyMTimestamp: BigInt(airdropGraph.fiftyMTimestamp),
44
- }, userLastPoints);
45
- };
46
- //# sourceMappingURL=cakeLockerAirdrop.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cakeLockerAirdrop.js","sourceRoot":"","sources":["../../../../src/lockers/utils/cakeLockerAirdrop.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export const SDCAKE_CHERRIES_API_URL = 'https://api.stakedao.org/api/cherries/';
2
- export const SDCAKE_REFERRAL_SNAPSHOT_CHERRIES_API_URL = 'https://api.stakedao.org/api/cherries/referralSnapshot.json';
3
- //# sourceMappingURL=endpoints.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../../../src/lockers/utils/endpoints.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,wCAAwC,CAAA;AAC/E,MAAM,CAAC,MAAM,yCAAyC,GAAG,6DAA6D,CAAA"}
@@ -1,34 +0,0 @@
1
- import { formatEther } from 'viem';
2
- import { SDCAKE_CHERRIES_API_URL, SDCAKE_REFERRAL_SNAPSHOT_CHERRIES_API_URL } from './endpoints.js';
3
- import { equalTlc } from '../../utils.js';
4
- import { computeRatePoints } from './cakeLockerAirdrop.js';
5
- export const getCherriesLeaderBoard = async () => {
6
- const cherriesData = await (await fetch(SDCAKE_CHERRIES_API_URL)).json();
7
- const global = cherriesData.global;
8
- const now = Math.floor(Date.now() / 1000);
9
- const leaderBoard = cherriesData?.global &&
10
- cherriesData.users.map((user) => {
11
- const currentPoints = computeRatePoints(BigInt(user.rate), BigInt(user.timestamp), BigInt(now), {
12
- threeMTimestamp: BigInt(global.threeMTimestamp),
13
- tenMTimestamp: BigInt(global.tenMTimestamp),
14
- twentyFiveMTimestamp: BigInt(global.twentyFiveMTimestamp),
15
- fiftyMTimestamp: BigInt(global.fiftyMTimestamp),
16
- }, BigInt(user.points));
17
- return {
18
- ...user,
19
- currentPoints: Number(formatEther(currentPoints)),
20
- };
21
- });
22
- return {
23
- ...global,
24
- leaderBoard: leaderBoard?.sort((a, b) => b.currentPoints - a.currentPoints),
25
- };
26
- };
27
- export const getUserSnapshotCherries = async () => {
28
- const cherriesData = await (await fetch(SDCAKE_REFERRAL_SNAPSHOT_CHERRIES_API_URL)).json();
29
- return cherriesData;
30
- };
31
- export const getUserCherries = (cherriesData, userAddress) => {
32
- return cherriesData.find((user) => equalTlc(user.address, userAddress));
33
- };
34
- //# sourceMappingURL=getCherries.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCherries.js","sourceRoot":"","sources":["../../../../src/lockers/utils/getCherries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAElC,OAAO,EAAE,uBAAuB,EAAE,yCAAyC,EAAE,MAAM,gBAAgB,CAAA;AAEnG,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAE1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,IAAI,EAAE;IAC/C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IACxE,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAA;IAElC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;IAEzC,MAAM,WAAW,GACf,YAAY,EAAE,MAAM;QACpB,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9B,MAAM,aAAa,GAAG,iBAAiB,CACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EACjB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EACtB,MAAM,CAAC,GAAG,CAAC,EACX;gBACE,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;gBAC/C,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;gBAC3C,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC;gBACzD,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;aAChD,EACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CACpB,CAAA;YACD,OAAO;gBACL,GAAG,IAAI;gBACP,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;aAClD,CAAA;QACH,CAAC,CAAC,CAAA;IAEJ,OAAO;QACL,GAAG,MAAM;QACT,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC;KAC5E,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,IAAI,EAAE;IAChD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC1F,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,YAAiB,EAAE,WAAmB,EAAE,EAAE;IACxE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;AACzE,CAAC,CAAA"}
@@ -1,8 +0,0 @@
1
- export declare const computeRatePoints: (rate: bigint, timestampStart: bigint, timestampEnd: bigint, global: {
2
- threeMTimestamp: bigint;
3
- tenMTimestamp: bigint;
4
- twentyFiveMTimestamp: bigint;
5
- fiftyMTimestamp: bigint;
6
- }, basePoints?: bigint) => bigint;
7
- export declare const getUpdatedPointsAmount: (userRate: bigint, userLastUpdate: number, userLastPoints: bigint, airdropGraph: any, timestamp?: number) => bigint;
8
- //# sourceMappingURL=cakeLockerAirdrop.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cakeLockerAirdrop.d.ts","sourceRoot":"","sources":["../../../../src/lockers/utils/cakeLockerAirdrop.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,iBAAiB,SACtB,MAAM,kBACI,MAAM,gBACR,MAAM,UACZ;IACN,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,eAAe,EAAE,MAAM,CAAA;CACxB,eACW,MAAM,KACjB,MA+BF,CAAA;AAED,eAAO,MAAM,sBAAsB,aACvB,MAAM,kBACA,MAAM,kBACN,MAAM,gBACR,GAAG,cACL,MAAM,WAgBnB,CAAA"}
@@ -1,3 +0,0 @@
1
- export declare const SDCAKE_CHERRIES_API_URL = "https://api.stakedao.org/api/cherries/";
2
- export declare const SDCAKE_REFERRAL_SNAPSHOT_CHERRIES_API_URL = "https://api.stakedao.org/api/cherries/referralSnapshot.json";
3
- //# sourceMappingURL=endpoints.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../../../src/lockers/utils/endpoints.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,2CAA2C,CAAA;AAC/E,eAAO,MAAM,yCAAyC,gEAAgE,CAAA"}
@@ -1,4 +0,0 @@
1
- export declare const getCherriesLeaderBoard: () => Promise<any>;
2
- export declare const getUserSnapshotCherries: () => Promise<any>;
3
- export declare const getUserCherries: (cherriesData: any, userAddress: string) => any;
4
- //# sourceMappingURL=getCherries.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getCherries.d.ts","sourceRoot":"","sources":["../../../../src/lockers/utils/getCherries.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,sBAAsB,oBA+BlC,CAAA;AAED,eAAO,MAAM,uBAAuB,oBAGnC,CAAA;AAED,eAAO,MAAM,eAAe,iBAAkB,GAAG,eAAe,MAAM,QAErE,CAAA"}
@@ -1,73 +0,0 @@
1
- import { Zero } from '@stake-dao/constants'
2
-
3
- const THREE_M_MULTIPLIER = BigInt(10)
4
- const TEN_M_MULTIPLIER = BigInt(8)
5
- const TWENTY_FIVE_M_MULTIPLIER = BigInt(5)
6
- const FIFTY_M_MULTIPLIER = BigInt(3)
7
-
8
- export const computeRatePoints = (
9
- rate: bigint,
10
- timestampStart: bigint,
11
- timestampEnd: bigint,
12
- global: {
13
- threeMTimestamp: bigint
14
- tenMTimestamp: bigint
15
- twentyFiveMTimestamp: bigint
16
- fiftyMTimestamp: bigint
17
- },
18
- basePoints: bigint = Zero,
19
- ): bigint => {
20
- if (global.fiftyMTimestamp > Zero && timestampStart >= global.fiftyMTimestamp) {
21
- return basePoints + rate * (timestampEnd - timestampStart)
22
- }
23
- if (global.twentyFiveMTimestamp > Zero && timestampStart >= global.twentyFiveMTimestamp) {
24
- if (global.fiftyMTimestamp > Zero && timestampEnd >= global.fiftyMTimestamp) {
25
- const checkpointPoints = basePoints + FIFTY_M_MULTIPLIER * rate * (global.fiftyMTimestamp - timestampStart)
26
- return computeRatePoints(rate, global.fiftyMTimestamp, timestampEnd, global, checkpointPoints)
27
- }
28
- return basePoints + FIFTY_M_MULTIPLIER * rate * (timestampEnd - timestampStart)
29
- }
30
- if (global.tenMTimestamp > Zero && timestampStart >= global.tenMTimestamp) {
31
- if (global.twentyFiveMTimestamp > Zero && timestampEnd >= global.twentyFiveMTimestamp) {
32
- const checkpointPoints =
33
- basePoints + TWENTY_FIVE_M_MULTIPLIER * rate * (global.twentyFiveMTimestamp - timestampStart)
34
- return computeRatePoints(rate, global.twentyFiveMTimestamp, timestampEnd, global, checkpointPoints)
35
- }
36
- return basePoints + TWENTY_FIVE_M_MULTIPLIER * rate * (timestampEnd - timestampStart)
37
- }
38
- if (global.threeMTimestamp > Zero && timestampStart >= global.threeMTimestamp) {
39
- if (global.tenMTimestamp > Zero && timestampEnd >= global.tenMTimestamp) {
40
- const checkpointPoints = basePoints + TEN_M_MULTIPLIER * rate * (global.tenMTimestamp - timestampStart)
41
- return computeRatePoints(rate, global.tenMTimestamp, timestampEnd, global, checkpointPoints)
42
- }
43
- return basePoints + TEN_M_MULTIPLIER * rate * (timestampEnd - timestampStart)
44
- }
45
- if (global.threeMTimestamp > Zero && timestampEnd >= global.threeMTimestamp) {
46
- const checkpointPoints = basePoints + THREE_M_MULTIPLIER * rate * (global.threeMTimestamp - timestampStart)
47
- return computeRatePoints(rate, global.threeMTimestamp, timestampEnd, global, checkpointPoints)
48
- }
49
- return basePoints + THREE_M_MULTIPLIER * rate * (timestampEnd - timestampStart)
50
- }
51
-
52
- export const getUpdatedPointsAmount = (
53
- userRate: bigint,
54
- userLastUpdate: number,
55
- userLastPoints: bigint,
56
- airdropGraph: any,
57
- timestamp?: number,
58
- ) => {
59
- const now = timestamp ? timestamp : Math.floor(Date.now() / 1000)
60
-
61
- return computeRatePoints(
62
- userRate,
63
- BigInt(userLastUpdate),
64
- BigInt(now),
65
- {
66
- threeMTimestamp: BigInt(airdropGraph.threeMTimestamp),
67
- tenMTimestamp: BigInt(airdropGraph.tenMTimestamp),
68
- twentyFiveMTimestamp: BigInt(airdropGraph.twentyFiveMTimestamp),
69
- fiftyMTimestamp: BigInt(airdropGraph.fiftyMTimestamp),
70
- },
71
- userLastPoints,
72
- )
73
- }
@@ -1,2 +0,0 @@
1
- export const SDCAKE_CHERRIES_API_URL = 'https://api.stakedao.org/api/cherries/'
2
- export const SDCAKE_REFERRAL_SNAPSHOT_CHERRIES_API_URL = 'https://api.stakedao.org/api/cherries/referralSnapshot.json'
@@ -1,48 +0,0 @@
1
- import { formatEther } from 'viem'
2
-
3
- import { SDCAKE_CHERRIES_API_URL, SDCAKE_REFERRAL_SNAPSHOT_CHERRIES_API_URL } from './endpoints.js'
4
-
5
- import { equalTlc } from '../../utils.js'
6
- import { computeRatePoints } from './cakeLockerAirdrop.js'
7
-
8
- export const getCherriesLeaderBoard = async () => {
9
- const cherriesData = await (await fetch(SDCAKE_CHERRIES_API_URL)).json()
10
- const global = cherriesData.global
11
-
12
- const now = Math.floor(Date.now() / 1000)
13
-
14
- const leaderBoard =
15
- cherriesData?.global &&
16
- cherriesData.users.map((user) => {
17
- const currentPoints = computeRatePoints(
18
- BigInt(user.rate),
19
- BigInt(user.timestamp),
20
- BigInt(now),
21
- {
22
- threeMTimestamp: BigInt(global.threeMTimestamp),
23
- tenMTimestamp: BigInt(global.tenMTimestamp),
24
- twentyFiveMTimestamp: BigInt(global.twentyFiveMTimestamp),
25
- fiftyMTimestamp: BigInt(global.fiftyMTimestamp),
26
- },
27
- BigInt(user.points),
28
- )
29
- return {
30
- ...user,
31
- currentPoints: Number(formatEther(currentPoints)),
32
- }
33
- })
34
-
35
- return {
36
- ...global,
37
- leaderBoard: leaderBoard?.sort((a, b) => b.currentPoints - a.currentPoints),
38
- }
39
- }
40
-
41
- export const getUserSnapshotCherries = async () => {
42
- const cherriesData = await (await fetch(SDCAKE_REFERRAL_SNAPSHOT_CHERRIES_API_URL)).json()
43
- return cherriesData
44
- }
45
-
46
- export const getUserCherries = (cherriesData: any, userAddress: string) => {
47
- return cherriesData.find((user) => equalTlc(user.address, userAddress))
48
- }