@stake-dao/reader 0.4.97 → 0.4.98

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 (38) hide show
  1. package/dist/esm/index.js +1 -0
  2. package/dist/esm/index.js.map +1 -1
  3. package/dist/esm/number.js +64 -16
  4. package/dist/esm/number.js.map +1 -1
  5. package/dist/esm/strategies/curve/fetch/getOnlyboostData.js +6 -0
  6. package/dist/esm/strategies/curve/fetch/getOnlyboostData.js.map +1 -1
  7. package/dist/esm/strategies/curve/fetch/index.js +5 -10
  8. package/dist/esm/strategies/curve/fetch/index.js.map +1 -1
  9. package/dist/esm/strategies/curve/httpCalls.js +31 -35
  10. package/dist/esm/strategies/curve/httpCalls.js.map +1 -1
  11. package/dist/esm/strategies/v2/parse.js +174 -0
  12. package/dist/esm/strategies/v2/parse.js.map +1 -0
  13. package/dist/esm/votemarket/curve/fetchSnapshotUserData.js +2 -0
  14. package/dist/esm/votemarket/curve/fetchSnapshotUserData.js.map +1 -1
  15. package/dist/types/index.d.ts +1 -0
  16. package/dist/types/index.d.ts.map +1 -1
  17. package/dist/types/number.d.ts +17 -2
  18. package/dist/types/number.d.ts.map +1 -1
  19. package/dist/types/strategies/curve/fetch/getOnlyboostData.d.ts.map +1 -1
  20. package/dist/types/strategies/curve/fetch/index.d.ts +1 -2
  21. package/dist/types/strategies/curve/fetch/index.d.ts.map +1 -1
  22. package/dist/types/strategies/curve/httpCalls.d.ts +2 -2
  23. package/dist/types/strategies/curve/httpCalls.d.ts.map +1 -1
  24. package/dist/types/strategies/types.d.ts +2 -0
  25. package/dist/types/strategies/types.d.ts.map +1 -1
  26. package/dist/types/strategies/v2/parse.d.ts +51 -0
  27. package/dist/types/strategies/v2/parse.d.ts.map +1 -0
  28. package/dist/types/votemarket/curve/fetchSnapshotUserData.d.ts.map +1 -1
  29. package/package.json +3 -3
  30. package/src/index.ts +1 -0
  31. package/src/number.ts +77 -19
  32. package/src/strategies/curve/fetch/getOnlyboostData.ts +7 -0
  33. package/src/strategies/curve/fetch/index.ts +4 -15
  34. package/src/strategies/curve/httpCalls.ts +31 -48
  35. package/src/strategies/types.ts +2 -0
  36. package/src/strategies/v2/parse.ts +197 -0
  37. package/src/votemarket/curve/fetchSnapshotUserData.ts +2 -0
  38. package/dist/esm/tsconfig.build.tsbuildinfo +0 -1
@@ -11,6 +11,7 @@ export { getVeNFTUser } from './lockers/utils/getVeNFTUser.js';
11
11
  export { default as pegCalls } from './lockers/utils/callsForLockers/pegCalls.js';
12
12
  export { parsePeg } from './lockers/fetch/parsePeg.js';
13
13
  export * from './strategies/utils/index.js';
14
+ export { parseV2Strats } from './strategies/v2/parse.js';
14
15
  export { buildCurveStrategies } from './strategies/curve/build.js';
15
16
  export { fetchCurve } from './strategies/curve/fetch/index.js';
16
17
  export { getCurveApiData } from './strategies/curve/fetch/curveApiData/getCurveApiData.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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"}
@@ -1,6 +1,21 @@
1
+ export declare const USD_PROPS: any;
1
2
  export declare const getString: (data: any, nbDecimals?: number) => string | 0;
2
- export declare const getFixedNumber: (amount: string, reduce?: boolean) => number;
3
+ export declare const getApr: (data: any) => string;
4
+ export declare const getFixedNumber: (amount: string | number, reduce?: boolean) => number;
5
+ export declare const getSubNumber: (nb: string, decimals?: number) => {
6
+ prefix: string;
7
+ sub: number;
8
+ suffix: string;
9
+ decimals: number;
10
+ } | {
11
+ prefix: string;
12
+ decimals: number;
13
+ sub?: undefined;
14
+ suffix?: undefined;
15
+ };
3
16
  export declare const fixed: (nb: string, decimals?: number) => string;
4
- export declare const formatUsd: (number: string | number) => string;
17
+ export declare const fixedNb: (nb: number, decimals?: number) => string;
18
+ export declare const reducedNb: (number: any, addNegative?: boolean) => string;
19
+ export declare const formatUsd: (number: any) => string;
5
20
  export declare const withTwoDec: (num: number) => string;
6
21
  //# sourceMappingURL=number.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../src/number.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,SAAU,GAAG,oCAKlC,CAAA;AAED,eAAO,MAAM,cAAc,WAAY,MAAM,6BAa5C,CAAA;AAED,eAAO,MAAM,KAAK,OAAQ,MAAM,aAAa,MAAM,WAMlD,CAAA;AAED,eAAO,MAAM,SAAS,WAAY,MAAM,GAAG,MAAM,WAchD,CAAA;AAED,eAAO,MAAM,UAAU,QAAS,MAAM,WAErC,CAAA"}
1
+ {"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../src/number.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,EAKjB,GAAG,CAAA;AAER,eAAO,MAAM,SAAS,gDAKrB,CAAA;AAED,eAAO,MAAM,MAAM,uBAAqC,CAAA;AAExD,eAAO,MAAM,cAAc,WAAY,MAAM,GAAG,MAAM,6BAYrD,CAAA;AAED,eAAO,MAAM,YAAY,OAAQ,MAAM,aAAa,MAAM;;;;;;;;;;CAmBzD,CAAA;AAED,eAAO,MAAM,KAAK,OAAQ,MAAM,aAAa,MAAM,WAUlD,CAAA;AAED,eAAO,MAAM,OAAO,OAAQ,MAAM,aAAa,MAAM,WAMpD,CAAA;AAED,eAAO,MAAM,SAAS,8BAA0B,OAAO,WAatD,CAAA;AAED,eAAO,MAAM,SAAS,yBAgBrB,CAAA;AAED,eAAO,MAAM,UAAU,QAAS,MAAM,WAErC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"getOnlyboostData.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/curve/fetch/getOnlyboostData.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGnD,QAAA,MAAM,gBAAgB,SACd,GAAG,mBACQ,MAAM,iBACR,MAAM,oBACH,MAAM,yBACD,MAAM,oBACX,MAAM,kBACR,MAAM,mBACL,MAAM,gBACT,MAAM,KACnB,aA6FF,CAAA;AAED,eAAe,gBAAgB,CAAA"}
1
+ {"version":3,"file":"getOnlyboostData.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/curve/fetch/getOnlyboostData.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAGnD,QAAA,MAAM,gBAAgB,SACd,GAAG,mBACQ,MAAM,iBACR,MAAM,oBACH,MAAM,yBACD,MAAM,oBACX,MAAM,kBACR,MAAM,mBACL,MAAM,gBACT,MAAM,KACnB,aAoGF,CAAA;AAED,eAAe,gBAAgB,CAAA"}
@@ -6,11 +6,10 @@ interface TFetchCurve {
6
6
  prices: Price[];
7
7
  provider: any;
8
8
  rpc: string;
9
- explorerApiKey: string;
10
9
  chainId: ValidChainId;
11
10
  sdtEmissionData: SdtEmissionData;
12
11
  gaugesWeights: GaugesWeightsData;
13
12
  }
14
- export declare const fetchCurve: ({ prices, provider, rpc, explorerApiKey, chainId, sdtEmissionData, gaugesWeights, }: TFetchCurve) => Promise<StrategyData>;
13
+ export declare const fetchCurve: ({ prices, provider, rpc, chainId, sdtEmissionData, gaugesWeights, }: TFetchCurve) => Promise<StrategyData>;
15
14
  export {};
16
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/curve/fetch/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAa,MAAM,iBAAiB,CAAA;AAEjE,OAAO,KAAK,EAA+C,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAQ7G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAK3E,UAAU,WAAW;IACnB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,QAAQ,EAAE,GAAG,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,YAAY,CAAA;IACrB,eAAe,EAAE,eAAe,CAAA;IAChC,aAAa,EAAE,iBAAiB,CAAA;CACjC;AAED,eAAO,MAAM,UAAU,wFAQpB,WAAW,KAAG,OAAO,CAAC,YAAY,CAsOpC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/curve/fetch/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAa,MAAM,iBAAiB,CAAA;AAEjE,OAAO,KAAK,EAA+C,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAO7G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAK3E,UAAU,WAAW;IACnB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,QAAQ,EAAE,GAAG,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,YAAY,CAAA;IACrB,eAAe,EAAE,eAAe,CAAA;IAChC,aAAa,EAAE,iBAAiB,CAAA;CACjC;AAED,eAAO,MAAM,UAAU,wEAOpB,WAAW,KAAG,OAAO,CAAC,YAAY,CA8NpC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { type GaugesWeightsData } from './fetch/curveApiData/getGaugesWeights.js';
2
- export declare const getCurveHttpCalls: (explorerApiKey: string, rpc: string, chainId: number, fromBlock: number, toBlock: number, gaugesWeights: GaugesWeightsData) => Promise<{
3
- explorerData: any;
2
+ export declare const getCurveHttpCalls: (rpc: string, chainId: number, gaugesWeights: GaugesWeightsData) => Promise<{
3
+ explorerData: undefined;
4
4
  curveSubgraphData: any;
5
5
  convexPools: any;
6
6
  convexLendingVaults: any;
@@ -1 +1 @@
1
- {"version":3,"file":"httpCalls.d.ts","sourceRoot":"","sources":["../../../../src/strategies/curve/httpCalls.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAEjF,eAAO,MAAM,iBAAiB,mBACZ,MAAM,OACjB,MAAM,WACF,MAAM,aACJ,MAAM,WACR,MAAM,iBACA,iBAAiB;;;;;;;;;;;;EAoFjC,CAAA"}
1
+ {"version":3,"file":"httpCalls.d.ts","sourceRoot":"","sources":["../../../../src/strategies/curve/httpCalls.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAEjF,eAAO,MAAM,iBAAiB,QAAe,MAAM,WAAW,MAAM,iBAAiB,iBAAiB;;;;;;;;;;;;EAiFrG,CAAA"}
@@ -21,9 +21,11 @@ export type OnlyBoostProtocolData = {
21
21
  tvl: number;
22
22
  supply: string;
23
23
  boost: number;
24
+ share: number;
24
25
  workingBalance: string;
25
26
  workingBalanceShare: string;
26
27
  optimal: {
28
+ tvl: number;
27
29
  supply: string;
28
30
  boost: number;
29
31
  share: number;
@@ -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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"}
@@ -0,0 +1,51 @@
1
+ export declare const parseV2Strats: (global: any, rawStrats: any[], extra: any) => {
2
+ key: any;
3
+ isLending: any;
4
+ name: any;
5
+ type: string;
6
+ version: number;
7
+ protocol: string;
8
+ chainId: any;
9
+ vault: any;
10
+ lpToken: {
11
+ id: any;
12
+ name: any;
13
+ symbol: any;
14
+ address: any;
15
+ decimals: any;
16
+ };
17
+ gaugeAddress: any;
18
+ gauge: {
19
+ address: any;
20
+ totalSupply: any;
21
+ totalSupplyUsd: any;
22
+ extraRewards: never[];
23
+ };
24
+ coins: any;
25
+ underlyingCoins: never[];
26
+ lpPriceInUsd: number;
27
+ streaming: boolean;
28
+ tvl: number;
29
+ apr: {
30
+ boost: number;
31
+ current: {
32
+ total: number;
33
+ details: {
34
+ label: string;
35
+ value: number[];
36
+ }[];
37
+ };
38
+ };
39
+ rewards: any;
40
+ tradingApy: number;
41
+ minApr: number;
42
+ maxApr: any;
43
+ totalSupply: any;
44
+ workingBalance: any;
45
+ onlyboost: import("../types.js").OnlyBoostData;
46
+ convexPool: {
47
+ id: number;
48
+ crvRewards: any;
49
+ } | undefined;
50
+ }[];
51
+ //# sourceMappingURL=parse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/strategies/v2/parse.ts"],"names":[],"mappings":"AAoCA,eAAO,MAAM,aAAa,WAAY,GAAG,aAAa,GAAG,EAAE,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgKtE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchSnapshotUserData.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchSnapshotUserData.ts"],"names":[],"mappings":"AAMA,UAAU,gBAAgB;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE;QACL,UAAU,EAAE,gBAAgB,EAAE,CAAA;KAC/B,CAAA;CACF;AAED,UAAU,iBAAiB;IACzB,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAC7E;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,GAAG,CAAA;CACZ;AAyDD,eAAO,MAAM,wBAAwB,eAAgB,MAAM,KAAG,MAAM,GAAG,SAWtE,CAAA;AAED,eAAO,MAAM,qBAAqB,gBACnB,MAAM,UACX,MAAM,EAAE,gBACF,GAAG,KAChB,OAAO,CAAC,iBAAiB,EAAE,GAAG,SAAS,CA+DzC,CAAA"}
1
+ {"version":3,"file":"fetchSnapshotUserData.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchSnapshotUserData.ts"],"names":[],"mappings":"AAMA,UAAU,gBAAgB;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE;QACL,UAAU,EAAE,gBAAgB,EAAE,CAAA;KAC/B,CAAA;CACF;AAED,UAAU,iBAAiB;IACzB,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAC7E;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,GAAG,CAAA;CACZ;AAyDD,eAAO,MAAM,wBAAwB,eAAgB,MAAM,KAAG,MAAM,GAAG,SAatE,CAAA;AAED,eAAO,MAAM,qBAAqB,gBACnB,MAAM,UACX,MAAM,EAAE,gBACF,GAAG,KAChB,OAAO,CAAC,iBAAiB,EAAE,GAAG,SAAS,CA+DzC,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stake-dao/reader",
3
3
  "description": "",
4
- "version": "0.4.97",
4
+ "version": "0.4.98",
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.4.50"
38
+ "@stake-dao/constants": "0.4.51"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/lodash-es": "^4.17.12",
@@ -49,7 +49,7 @@
49
49
  "scripts": {
50
50
  "build": "pnpm run clean && pnpm run build:esm+types",
51
51
  "build:esm+types": "tsc --project tsconfig.build.json --outDir ./dist/esm --declaration --declarationMap --declarationDir ./dist/types",
52
- "clean": "rm -rf dist",
52
+ "clean": "pnpm exec rimraf dist",
53
53
  "test:build": "publint --strict",
54
54
  "typecheck": "tsc --noEmit"
55
55
  }
package/src/index.ts CHANGED
@@ -26,6 +26,7 @@ export { parsePeg } from './lockers/fetch/parsePeg.js'
26
26
  /// --- STATEGIES
27
27
 
28
28
  export * from './strategies/utils/index.js'
29
+ export { parseV2Strats } from './strategies/v2/parse.js'
29
30
 
30
31
  // Curve
31
32
  export { buildCurveStrategies } from './strategies/curve/build.js'
package/src/number.ts CHANGED
@@ -1,51 +1,109 @@
1
1
  import { formatUnits } from 'viem'
2
2
 
3
- export const getString = (data: any, nbDecimals = 2) => {
3
+ export const USD_PROPS = {
4
+ minimumFractionDigits: 2,
5
+ maximumFractionDigits: 2,
6
+ notation: 'compact',
7
+ compactDisplay: 'short',
8
+ } as any
9
+
10
+ export const getString = (data, nbDecimals = 2) => {
4
11
  if (typeof data === 'string') {
5
12
  return data
6
13
  }
7
14
  return data ? Number(data).toFixed(nbDecimals) : 0
8
15
  }
9
16
 
10
- export const getFixedNumber = (amount: string, reduce = false) => {
11
- const earningsNumber = reduce ? Number(formatUnits(BigInt(amount), 18)) : Number(amount)
12
- if (earningsNumber > 0 && earningsNumber < 1) {
13
- const indexNotZero = earningsNumber.toString().match('[1-9]')
17
+ export const getApr = (data) => `${getString(data, 2)}%`
18
+
19
+ export const getFixedNumber = (amount: string | number, reduce = false) => {
20
+ const earningsNumber = reduce ? formatUnits(BigInt(amount), 18) : `${amount}`
21
+ const nbEarningsNumber = Number(earningsNumber) > 0 ? Number(earningsNumber) : Number(earningsNumber) * -1
22
+
23
+ if (nbEarningsNumber > 0 && nbEarningsNumber < 1) {
24
+ const indexNotZero = earningsNumber.match('[1-9]')
14
25
  return indexNotZero?.index ? indexNotZero.index - 2 + 4 : 4
15
26
  }
16
- if (earningsNumber >= 1 && earningsNumber < 100) {
17
- return 2
18
- }
19
- if (earningsNumber >= 100 && earningsNumber < 1000) {
27
+ if (nbEarningsNumber >= 1 && nbEarningsNumber < 1000) {
20
28
  return 2
21
29
  }
22
30
  return 0
23
31
  }
24
32
 
33
+ export const getSubNumber = (nb: string, decimals?: number) => {
34
+ const numberNb = Number(nb)
35
+
36
+ if (numberNb > 0 && numberNb < 1) {
37
+ const indexNotZero = nb.match('[1-9]')
38
+ const indexNotZeroIndex = indexNotZero?.index || 2
39
+ const nbWithoutZero = nb.replace(`0.${new Array(indexNotZeroIndex - 2).fill(0).join('')}`, '')
40
+ return indexNotZeroIndex - 2 > 2
41
+ ? {
42
+ prefix: '0.0',
43
+ sub: indexNotZeroIndex - 2,
44
+ suffix: nbWithoutZero.slice(0, 2),
45
+ decimals: 1,
46
+ }
47
+ : { prefix: nb, decimals: 3 }
48
+ }
49
+
50
+ const fixedTo = decimals ? decimals : getFixedNumber(nb)
51
+ return { prefix: nb, decimals: fixedTo }
52
+ }
53
+
25
54
  export const fixed = (nb: string, decimals?: number) => {
26
55
  const fixedTo = decimals ? decimals : getFixedNumber(nb)
27
- return Number(nb).toLocaleString('en-US', {
56
+ const fixed = Number(nb).toLocaleString('en-US', {
28
57
  minimumFractionDigits: fixedTo,
29
58
  maximumFractionDigits: fixedTo,
30
59
  })
60
+
61
+ // Remove trailing zeros after the decimal point
62
+ // Remove trailing decimal point if there is no fractional part
63
+ return fixed.replace(/(\.\d*?)0+$/, '$1').replace(/\.$/, '')
31
64
  }
32
65
 
33
- export const formatUsd = (number: string | number) => {
34
- const nb = typeof number === 'string' ? Number(number) : number
66
+ export const fixedNb = (nb: number, decimals?: number) => {
67
+ const fixedTo = decimals ? decimals : getFixedNumber(nb)
68
+ return nb.toLocaleString('en-US', {
69
+ minimumFractionDigits: fixedTo,
70
+ maximumFractionDigits: fixedTo,
71
+ })
72
+ }
73
+
74
+ export const reducedNb = (number, addNegative?: boolean) => {
75
+ let isNegative = false
76
+
77
+ if (typeof number === 'string') number = Number(number)
78
+ if (number < 0) {
79
+ number *= -1
80
+ isNegative = true
81
+ }
82
+
83
+ let res = fixed(number.toString())
84
+ if (number > 1000) res = number.toLocaleString('en-US', USD_PROPS)
85
+
86
+ return `${isNegative && addNegative ? '-' : ''}${res}`
87
+ }
88
+
89
+ export const formatUsd = (number) => {
90
+ if (typeof number === 'string') {
91
+ number = Number(number)
92
+ }
35
93
 
36
- if (nb > 1000000000) {
37
- return `${getString(nb / 1000000000, 2)}B`
94
+ if (number > 1000000000) {
95
+ return `${getString(number / 1000000000, 2)}B`
38
96
  }
39
- if (nb > 1000000) {
40
- return `${getString(nb / 1000000, 2)}M`
97
+ if (number > 1000000) {
98
+ return `${getString(number / 1000000, 2)}M`
41
99
  }
42
- if (nb > 1000) {
43
- return `${getString(nb / 1000, 2)}k`
100
+ if (number > 1000) {
101
+ return `${getString(number / 1000, 2)}k`
44
102
  }
45
103
 
46
104
  return fixed(number.toString())
47
105
  }
48
106
 
49
107
  export const withTwoDec = (num: number) => {
50
- return (Math.floor(num * 100) / 100).toFixed(2)
108
+ return fixedNb(num, 2)
51
109
  }
@@ -44,6 +44,9 @@ const getOnlyboostData = (
44
44
  const stakeDaoOptSupply = formatUnits(data.stakeDaoOptSupply, 0)
45
45
  const convexOptSupply = formatUnits(data.convexOptSupply, 0)
46
46
 
47
+ const stakeDaoOptTvl = Number(formatUnits(data.stakeDaoOptSupply, 18)) * lpPriceInUsd
48
+ const convexOptTvl = Number(formatUnits(data.convexOptSupply, 18)) * lpPriceInUsd
49
+
47
50
  const stakeDaoOptShare = Number(stakeDaoOptSupply) / Number(totalSupply)
48
51
  const convexOptShare = Number(convexOptSupply) / Number(totalSupply)
49
52
 
@@ -82,9 +85,11 @@ const getOnlyboostData = (
82
85
  tvl: stakeDaoTvl,
83
86
  supply: stakeDaoSupply,
84
87
  boost: stakeDaoBoost,
88
+ share: stakeDaoShare,
85
89
  workingBalance: stakeDaoWorkingBalanceShare,
86
90
  workingBalanceShare: stakeDaoWorkingBalanceShare,
87
91
  optimal: {
92
+ tvl: stakeDaoOptTvl,
88
93
  supply: stakeDaoOptSupply,
89
94
  boost: stakeDaoOptBoost,
90
95
  share: stakeDaoOptShare,
@@ -94,9 +99,11 @@ const getOnlyboostData = (
94
99
  tvl: convexTvl,
95
100
  supply: convexSupply,
96
101
  boost: convexBoost,
102
+ share: convexShare,
97
103
  workingBalance: formatUnits(data.convexWorkingBalance, 0),
98
104
  workingBalanceShare: formatUnits(convexWorkingBalanceShare, 0),
99
105
  optimal: {
106
+ tvl: convexOptTvl,
100
107
  supply: convexOptSupply,
101
108
  boost: convexOptBoost,
102
109
  share: convexOptShare,
@@ -6,7 +6,6 @@ import { type SdtEmissionData, getSdtApr } from '../../../sdt.js'
6
6
  import { equalTlc } from '../../../utils.js'
7
7
  import type { CurveGlobalData, OnlyBoostData, RewardsData, StrategyData, ValidChainId } from '../../types.js'
8
8
  import { getBoost } from '../../utils/boost.js'
9
- import decodeEtherscanFactoryEvent, { decodeNewFactoryEvent } from '../../utils/decodeEtherscanFactoryEvent.js'
10
9
  import { getAprBreakdown } from '../../utils/getAprBreakdown.js'
11
10
  import { buildCurveStrategies } from '../build.js'
12
11
  import { getCurveHttpCalls } from '../httpCalls.js'
@@ -21,7 +20,6 @@ interface TFetchCurve {
21
20
  prices: Price[]
22
21
  provider: any
23
22
  rpc: string
24
- explorerApiKey: string
25
23
  chainId: ValidChainId
26
24
  sdtEmissionData: SdtEmissionData
27
25
  gaugesWeights: GaugesWeightsData
@@ -31,23 +29,14 @@ export const fetchCurve = async ({
31
29
  prices,
32
30
  provider,
33
31
  rpc,
34
- explorerApiKey,
35
32
  chainId,
36
33
  sdtEmissionData,
37
34
  gaugesWeights,
38
35
  }: TFetchCurve): Promise<StrategyData> => {
39
- const fromBlock = curveStrats.meta.lastSyncBlock[chainId]! + 1
40
- const toBlock = Number(await provider.getBlockNumber())
41
- const apisData = await getCurveHttpCalls(explorerApiKey, rpc, chainId, fromBlock, toBlock, gaugesWeights)
36
+ const lastSyncBlock = curveStrats.meta.lastSyncBlock[chainId]!
37
+ const apisData = await getCurveHttpCalls(rpc, chainId, gaugesWeights)
42
38
 
43
- const newVaultAndLp =
44
- chainId === mainnet.id
45
- ? decodeNewFactoryEvent(apisData.explorerData)
46
- : decodeEtherscanFactoryEvent(apisData.explorerData)
47
-
48
- const allVaultAndLp = curveStrats.strats[chainId]!.concat(newVaultAndLp).filter(
49
- (s) => !BROKEN_VAULTS[chainId].includes(s.vault),
50
- )
39
+ const allVaultAndLp = curveStrats.strats[chainId]!.filter((s) => !BROKEN_VAULTS[chainId].includes(s.vault))
51
40
 
52
41
  const strats: any[] = await buildCurveStrategies(provider, allVaultAndLp, chainId, apisData.curveApiData)
53
42
 
@@ -66,7 +55,7 @@ export const fetchCurve = async ({
66
55
  veCrvTotalSupply: '0',
67
56
  stakeDaoVeBoost: '0',
68
57
  convexVeBoost: '0',
69
- lastSyncBlock: toBlock,
58
+ lastSyncBlock,
70
59
  fees: {
71
60
  veSdt: 5,
72
61
  perf: 2,
@@ -1,38 +1,23 @@
1
- import { contract } from '@stake-dao/constants'
2
- import { getLogsFromEtherscan } from '../../utils/etherscan.js'
3
1
  import { handlePromise } from '../utils/promise.js'
4
- import {
5
- CONVEX_LENDING_VAULTS_URL,
6
- CONVEX_POOLS_URL,
7
- CURVE_API_URL,
8
- FACTORY_EVENT_TOPIC,
9
- NEW_FACTORY_EVENT_TOPIC,
10
- } from './endpoints.js'
2
+ import { CONVEX_LENDING_VAULTS_URL, CONVEX_POOLS_URL, CURVE_API_URL } from './endpoints.js'
11
3
  import { getCurveApiData } from './fetch/curveApiData/getCurveApiData.js'
12
4
  import { type GaugesWeightsData } from './fetch/curveApiData/getGaugesWeights.js'
13
5
 
14
- export const getCurveHttpCalls = async (
15
- explorerApiKey: string,
16
- rpc: string,
17
- chainId: number,
18
- fromBlock: number,
19
- toBlock: number,
20
- gaugesWeights: GaugesWeightsData,
21
- ) => {
6
+ export const getCurveHttpCalls = async (rpc: string, chainId: number, gaugesWeights: GaugesWeightsData) => {
22
7
  switch (chainId) {
23
8
  case 1: {
24
9
  const ethHttpCalls = [
25
10
  // Etherscan Events
26
- getLogsFromEtherscan({
27
- chainId,
28
- address: contract('curveVaultFactory', chainId),
29
- apikey: explorerApiKey,
30
- extraQueryParams: {
31
- topic0: NEW_FACTORY_EVENT_TOPIC,
32
- fromBlock: `${fromBlock}`,
33
- toBlock: `${toBlock}`,
34
- },
35
- }),
11
+ // getLogsFromEtherscan({
12
+ // chainId,
13
+ // address: contract('curveVaultFactory', chainId),
14
+ // apikey: explorerApiKey,
15
+ // extraQueryParams: {
16
+ // topic0: NEW_FACTORY_EVENT_TOPIC,
17
+ // fromBlock: `${fromBlock}`,
18
+ // toBlock: `${toBlock}`,
19
+ // },
20
+ // }),
36
21
  // Curve Data (replace APIs calls)
37
22
  getCurveApiData(rpc, chainId, gaugesWeights.gauges),
38
23
  // Curve Trading Apy API
@@ -44,14 +29,13 @@ export const getCurveHttpCalls = async (
44
29
 
45
30
  const ethHttpResponses = await handlePromise(ethHttpCalls, 'curveEthHttpCalls')
46
31
 
47
- const etherscanData = ethHttpResponses[0]
48
- const ethCurveData = ethHttpResponses[1]
49
- const ethCurveSubgraph = ethHttpResponses[2].success ? ethHttpResponses[2].data.poolList : undefined
50
- const convexPools = ethHttpResponses[3].pools
51
- const convexLendingVaults = ethHttpResponses[4].lendingVaults
32
+ const ethCurveData = ethHttpResponses[0]
33
+ const ethCurveSubgraph = ethHttpResponses[1].success ? ethHttpResponses[1].data.poolList : undefined
34
+ const convexPools = ethHttpResponses[2].pools
35
+ const convexLendingVaults = ethHttpResponses[3].lendingVaults
52
36
 
53
37
  return {
54
- explorerData: etherscanData,
38
+ explorerData: undefined,
55
39
  curveSubgraphData: ethCurveSubgraph,
56
40
  convexPools,
57
41
  convexLendingVaults,
@@ -61,16 +45,16 @@ export const getCurveHttpCalls = async (
61
45
  case 42161: {
62
46
  const arbitrumHttpCalls = [
63
47
  // Etherscan Events
64
- getLogsFromEtherscan({
65
- chainId,
66
- address: contract('curveVaultFactory', chainId),
67
- apikey: explorerApiKey,
68
- extraQueryParams: {
69
- topic0: FACTORY_EVENT_TOPIC,
70
- fromBlock: `${fromBlock}`,
71
- toBlock: `${toBlock}`,
72
- },
73
- }),
48
+ // getLogsFromEtherscan({
49
+ // chainId,
50
+ // address: contract('curveVaultFactory', chainId),
51
+ // apikey: explorerApiKey,
52
+ // extraQueryParams: {
53
+ // topic0: FACTORY_EVENT_TOPIC,
54
+ // fromBlock: `${fromBlock}`,
55
+ // toBlock: `${toBlock}`,
56
+ // },
57
+ // }),
74
58
  // Curve Data (replace APIs calls)
75
59
  getCurveApiData(rpc, chainId, gaugesWeights.gauges),
76
60
  // Curve Trading Apy API
@@ -79,14 +63,13 @@ export const getCurveHttpCalls = async (
79
63
 
80
64
  const arbitrumHttpResponses = await handlePromise(arbitrumHttpCalls, 'curveArbitrumHttpCalls')
81
65
 
82
- const arbiscanData = arbitrumHttpResponses[0]
83
- const arbitrumCurveData = arbitrumHttpResponses[1]
84
- const arbitrumCurveSubgraph = arbitrumHttpResponses[2].success
85
- ? arbitrumHttpResponses[2].data.poolList
66
+ const arbitrumCurveData = arbitrumHttpResponses[0]
67
+ const arbitrumCurveSubgraph = arbitrumHttpResponses[1].success
68
+ ? arbitrumHttpResponses[1].data.poolList
86
69
  : undefined
87
70
 
88
71
  return {
89
- explorerData: arbiscanData,
72
+ explorerData: undefined,
90
73
  curveSubgraphData: arbitrumCurveSubgraph,
91
74
  convexPools: [],
92
75
  convexLendingVaults: [],
@@ -25,9 +25,11 @@ export type OnlyBoostProtocolData = {
25
25
  tvl: number
26
26
  supply: string
27
27
  boost: number
28
+ share: number
28
29
  workingBalance: string
29
30
  workingBalanceShare: string
30
31
  optimal: {
32
+ tvl: number
31
33
  supply: string
32
34
  boost: number
33
35
  share: number