@stake-dao/reader 0.4.111 → 0.5.0

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 (193) hide show
  1. package/dist/esm/abis/lockersMulticall.js +30 -2
  2. package/dist/esm/abis/lockersMulticall.js.map +1 -1
  3. package/dist/esm/index.js +2 -1
  4. package/dist/esm/index.js.map +1 -1
  5. package/dist/esm/lockers/fetch/index.js +53 -224
  6. package/dist/esm/lockers/fetch/index.js.map +1 -1
  7. package/dist/esm/lockers/fetch/parse.js +174 -0
  8. package/dist/esm/lockers/fetch/parse.js.map +1 -0
  9. package/dist/esm/lockers/fetch/protocols/angle.js +136 -0
  10. package/dist/esm/lockers/fetch/protocols/angle.js.map +1 -0
  11. package/dist/esm/lockers/fetch/protocols/balancer.js +172 -0
  12. package/dist/esm/lockers/fetch/protocols/balancer.js.map +1 -0
  13. package/dist/esm/lockers/fetch/protocols/blackpool.js +130 -0
  14. package/dist/esm/lockers/fetch/protocols/blackpool.js.map +1 -0
  15. package/dist/esm/lockers/fetch/protocols/curve.js +204 -0
  16. package/dist/esm/lockers/fetch/protocols/curve.js.map +1 -0
  17. package/dist/esm/lockers/fetch/protocols/frax-fpis.js +121 -0
  18. package/dist/esm/lockers/fetch/protocols/frax-fpis.js.map +1 -0
  19. package/dist/esm/lockers/fetch/protocols/frax-fxs.js +169 -0
  20. package/dist/esm/lockers/fetch/protocols/frax-fxs.js.map +1 -0
  21. package/dist/esm/lockers/fetch/protocols/fxn.js +131 -0
  22. package/dist/esm/lockers/fetch/protocols/fxn.js.map +1 -0
  23. package/dist/esm/lockers/fetch/protocols/maverick.js +172 -0
  24. package/dist/esm/lockers/fetch/protocols/maverick.js.map +1 -0
  25. package/dist/esm/lockers/fetch/protocols/pancakeswap.js +128 -0
  26. package/dist/esm/lockers/fetch/protocols/pancakeswap.js.map +1 -0
  27. package/dist/esm/lockers/fetch/protocols/pendle.js +144 -0
  28. package/dist/esm/lockers/fetch/protocols/pendle.js.map +1 -0
  29. package/dist/esm/lockers/fetch/protocols/spectra.js +133 -0
  30. package/dist/esm/lockers/fetch/protocols/spectra.js.map +1 -0
  31. package/dist/esm/lockers/fetch/protocols/yearn.js +138 -0
  32. package/dist/esm/lockers/fetch/protocols/yearn.js.map +1 -0
  33. package/dist/esm/lockers/fetch/protocols/yieldbasis.js +131 -0
  34. package/dist/esm/lockers/fetch/protocols/yieldbasis.js.map +1 -0
  35. package/dist/esm/lockers/fetch/protocols/yieldnest.js +135 -0
  36. package/dist/esm/lockers/fetch/protocols/yieldnest.js.map +1 -0
  37. package/dist/esm/lockers/fetch/protocols/zerolend.js +124 -0
  38. package/dist/esm/lockers/fetch/protocols/zerolend.js.map +1 -0
  39. package/dist/esm/lockers/fetch/static.js +33 -0
  40. package/dist/esm/lockers/fetch/static.js.map +1 -0
  41. package/dist/esm/lockers/fetch/types.js +2 -0
  42. package/dist/esm/lockers/fetch/types.js.map +1 -0
  43. package/dist/esm/lockers/utils/callsForLockers/pegCalls.js.map +1 -1
  44. package/dist/esm/lockers/utils/getBribesRewardsData.js +11 -9
  45. package/dist/esm/lockers/utils/getBribesRewardsData.js.map +1 -1
  46. package/dist/esm/lockers/utils/substractFees.js +1 -2
  47. package/dist/esm/lockers/utils/substractFees.js.map +1 -1
  48. package/dist/esm/strategies/curve/fetch/getOnlyboostData.js +8 -3
  49. package/dist/esm/strategies/curve/fetch/getOnlyboostData.js.map +1 -1
  50. package/dist/esm/strategies/curve/fetch/index.js +1 -1
  51. package/dist/esm/strategies/curve/fetch/index.js.map +1 -1
  52. package/dist/esm/strategies/v2/parse.js +6 -4
  53. package/dist/esm/strategies/v2/parse.js.map +1 -1
  54. package/dist/esm/utils.js +5 -0
  55. package/dist/esm/utils.js.map +1 -1
  56. package/dist/types/abis/lockersMulticall.d.ts +1 -1
  57. package/dist/types/abis/lockersMulticall.d.ts.map +1 -1
  58. package/dist/types/index.d.ts +2 -1
  59. package/dist/types/index.d.ts.map +1 -1
  60. package/dist/types/lockers/fetch/index.d.ts +5 -99
  61. package/dist/types/lockers/fetch/index.d.ts.map +1 -1
  62. package/dist/types/lockers/fetch/parse.d.ts +52 -0
  63. package/dist/types/lockers/fetch/parse.d.ts.map +1 -0
  64. package/dist/types/lockers/fetch/protocols/angle.d.ts +9 -0
  65. package/dist/types/lockers/fetch/protocols/angle.d.ts.map +1 -0
  66. package/dist/types/lockers/fetch/protocols/balancer.d.ts +9 -0
  67. package/dist/types/lockers/fetch/protocols/balancer.d.ts.map +1 -0
  68. package/dist/types/lockers/fetch/protocols/blackpool.d.ts +9 -0
  69. package/dist/types/lockers/fetch/protocols/blackpool.d.ts.map +1 -0
  70. package/dist/types/lockers/fetch/protocols/curve.d.ts +9 -0
  71. package/dist/types/lockers/fetch/protocols/curve.d.ts.map +1 -0
  72. package/dist/types/lockers/fetch/protocols/frax-fpis.d.ts +9 -0
  73. package/dist/types/lockers/fetch/protocols/frax-fpis.d.ts.map +1 -0
  74. package/dist/types/lockers/fetch/protocols/frax-fxs.d.ts +9 -0
  75. package/dist/types/lockers/fetch/protocols/frax-fxs.d.ts.map +1 -0
  76. package/dist/types/lockers/fetch/protocols/fxn.d.ts +9 -0
  77. package/dist/types/lockers/fetch/protocols/fxn.d.ts.map +1 -0
  78. package/dist/types/lockers/fetch/protocols/maverick.d.ts +9 -0
  79. package/dist/types/lockers/fetch/protocols/maverick.d.ts.map +1 -0
  80. package/dist/types/lockers/fetch/protocols/pancakeswap.d.ts +9 -0
  81. package/dist/types/lockers/fetch/protocols/pancakeswap.d.ts.map +1 -0
  82. package/dist/types/lockers/fetch/protocols/pendle.d.ts +9 -0
  83. package/dist/types/lockers/fetch/protocols/pendle.d.ts.map +1 -0
  84. package/dist/types/lockers/fetch/protocols/spectra.d.ts +9 -0
  85. package/dist/types/lockers/fetch/protocols/spectra.d.ts.map +1 -0
  86. package/dist/types/lockers/fetch/protocols/yearn.d.ts +9 -0
  87. package/dist/types/lockers/fetch/protocols/yearn.d.ts.map +1 -0
  88. package/dist/types/lockers/fetch/protocols/yieldbasis.d.ts +9 -0
  89. package/dist/types/lockers/fetch/protocols/yieldbasis.d.ts.map +1 -0
  90. package/dist/types/lockers/fetch/protocols/yieldnest.d.ts +9 -0
  91. package/dist/types/lockers/fetch/protocols/yieldnest.d.ts.map +1 -0
  92. package/dist/types/lockers/fetch/protocols/zerolend.d.ts +9 -0
  93. package/dist/types/lockers/fetch/protocols/zerolend.d.ts.map +1 -0
  94. package/dist/types/lockers/fetch/static.d.ts +3 -0
  95. package/dist/types/lockers/fetch/static.d.ts.map +1 -0
  96. package/dist/types/lockers/fetch/types.d.ts +105 -0
  97. package/dist/types/lockers/fetch/types.d.ts.map +1 -0
  98. package/dist/types/lockers/utils/callsForLockers/pegCalls.d.ts +1 -1
  99. package/dist/types/lockers/utils/callsForLockers/pegCalls.d.ts.map +1 -1
  100. package/dist/types/lockers/utils/getBribesRewardsData.d.ts +1 -0
  101. package/dist/types/lockers/utils/getBribesRewardsData.d.ts.map +1 -1
  102. package/dist/types/lockers/utils/substractFees.d.ts.map +1 -1
  103. package/dist/types/strategies/curve/fetch/getOnlyboostData.d.ts +1 -1
  104. package/dist/types/strategies/curve/fetch/getOnlyboostData.d.ts.map +1 -1
  105. package/dist/types/strategies/curve/fetch/index.d.ts.map +1 -1
  106. package/dist/types/strategies/stakeDao/fetch.d.ts +1 -1
  107. package/dist/types/strategies/v2/parse.d.ts.map +1 -1
  108. package/dist/types/utils.d.ts +1 -0
  109. package/dist/types/utils.d.ts.map +1 -1
  110. package/package.json +2 -2
  111. package/src/abis/lockersMulticall.ts +30 -2
  112. package/src/index.ts +2 -1
  113. package/src/lockers/fetch/index.ts +65 -329
  114. package/src/lockers/fetch/parse.ts +258 -0
  115. package/src/lockers/fetch/protocols/angle.ts +157 -0
  116. package/src/lockers/fetch/protocols/balancer.ts +195 -0
  117. package/src/lockers/fetch/protocols/blackpool.ts +151 -0
  118. package/src/lockers/fetch/protocols/curve.ts +229 -0
  119. package/src/lockers/fetch/protocols/frax-fpis.ts +139 -0
  120. package/src/lockers/fetch/protocols/frax-fxs.ts +193 -0
  121. package/src/lockers/fetch/protocols/fxn.ts +152 -0
  122. package/src/lockers/fetch/protocols/maverick.ts +193 -0
  123. package/src/lockers/fetch/protocols/pancakeswap.ts +149 -0
  124. package/src/lockers/fetch/protocols/pendle.ts +165 -0
  125. package/src/lockers/fetch/protocols/spectra.ts +154 -0
  126. package/src/lockers/fetch/protocols/yearn.ts +159 -0
  127. package/src/lockers/fetch/protocols/yieldbasis.ts +152 -0
  128. package/src/lockers/fetch/protocols/yieldnest.ts +157 -0
  129. package/src/lockers/fetch/protocols/zerolend.ts +144 -0
  130. package/src/lockers/fetch/static.ts +35 -0
  131. package/src/lockers/fetch/types.ts +112 -0
  132. package/src/lockers/utils/callsForLockers/pegCalls.ts +2 -1
  133. package/src/lockers/utils/getBribesRewardsData.ts +12 -11
  134. package/src/lockers/utils/substractFees.ts +1 -2
  135. package/src/strategies/curve/fetch/getOnlyboostData.ts +11 -2
  136. package/src/strategies/curve/fetch/index.ts +2 -0
  137. package/src/strategies/v2/parse.ts +11 -5
  138. package/src/utils.ts +5 -0
  139. package/dist/esm/lockers/fetch/parseBoost.js +0 -36
  140. package/dist/esm/lockers/fetch/parseBoost.js.map +0 -1
  141. package/dist/esm/lockers/fetch/parsePeg.js +0 -18
  142. package/dist/esm/lockers/fetch/parsePeg.js.map +0 -1
  143. package/dist/esm/lockers/fetch/parseVoteBoosterData.js +0 -28
  144. package/dist/esm/lockers/fetch/parseVoteBoosterData.js.map +0 -1
  145. package/dist/esm/lockers/utils/callsForLockers/depositorCalls.js +0 -24
  146. package/dist/esm/lockers/utils/callsForLockers/depositorCalls.js.map +0 -1
  147. package/dist/esm/lockers/utils/callsForLockers/feeCalls.js +0 -97
  148. package/dist/esm/lockers/utils/callsForLockers/feeCalls.js.map +0 -1
  149. package/dist/esm/lockers/utils/callsForLockers/gaugeCalls.js +0 -9
  150. package/dist/esm/lockers/utils/callsForLockers/gaugeCalls.js.map +0 -1
  151. package/dist/esm/lockers/utils/callsForLockers/index.js +0 -34
  152. package/dist/esm/lockers/utils/callsForLockers/index.js.map +0 -1
  153. package/dist/esm/lockers/utils/callsForLockers/veBoosts.js +0 -17
  154. package/dist/esm/lockers/utils/callsForLockers/veBoosts.js.map +0 -1
  155. package/dist/esm/lockers/utils/callsForLockers/veCalls.js +0 -33
  156. package/dist/esm/lockers/utils/callsForLockers/veCalls.js.map +0 -1
  157. package/dist/esm/lockers/utils/callsForLockers/veSdtCalls.js +0 -14
  158. package/dist/esm/lockers/utils/callsForLockers/veSdtCalls.js.map +0 -1
  159. package/dist/esm/lockers/utils/getFees.js +0 -27
  160. package/dist/esm/lockers/utils/getFees.js.map +0 -1
  161. package/dist/types/lockers/fetch/parseBoost.d.ts +0 -4
  162. package/dist/types/lockers/fetch/parseBoost.d.ts.map +0 -1
  163. package/dist/types/lockers/fetch/parsePeg.d.ts +0 -3
  164. package/dist/types/lockers/fetch/parsePeg.d.ts.map +0 -1
  165. package/dist/types/lockers/fetch/parseVoteBoosterData.d.ts +0 -13
  166. package/dist/types/lockers/fetch/parseVoteBoosterData.d.ts.map +0 -1
  167. package/dist/types/lockers/utils/callsForLockers/depositorCalls.d.ts +0 -4
  168. package/dist/types/lockers/utils/callsForLockers/depositorCalls.d.ts.map +0 -1
  169. package/dist/types/lockers/utils/callsForLockers/feeCalls.d.ts +0 -13
  170. package/dist/types/lockers/utils/callsForLockers/feeCalls.d.ts.map +0 -1
  171. package/dist/types/lockers/utils/callsForLockers/gaugeCalls.d.ts +0 -6
  172. package/dist/types/lockers/utils/callsForLockers/gaugeCalls.d.ts.map +0 -1
  173. package/dist/types/lockers/utils/callsForLockers/index.d.ts +0 -8
  174. package/dist/types/lockers/utils/callsForLockers/index.d.ts.map +0 -1
  175. package/dist/types/lockers/utils/callsForLockers/veBoosts.d.ts +0 -7
  176. package/dist/types/lockers/utils/callsForLockers/veBoosts.d.ts.map +0 -1
  177. package/dist/types/lockers/utils/callsForLockers/veCalls.d.ts +0 -4
  178. package/dist/types/lockers/utils/callsForLockers/veCalls.d.ts.map +0 -1
  179. package/dist/types/lockers/utils/callsForLockers/veSdtCalls.d.ts +0 -11
  180. package/dist/types/lockers/utils/callsForLockers/veSdtCalls.d.ts.map +0 -1
  181. package/dist/types/lockers/utils/getFees.d.ts +0 -4
  182. package/dist/types/lockers/utils/getFees.d.ts.map +0 -1
  183. package/src/lockers/fetch/parseBoost.ts +0 -46
  184. package/src/lockers/fetch/parsePeg.ts +0 -22
  185. package/src/lockers/fetch/parseVoteBoosterData.ts +0 -34
  186. package/src/lockers/utils/callsForLockers/depositorCalls.ts +0 -30
  187. package/src/lockers/utils/callsForLockers/feeCalls.ts +0 -124
  188. package/src/lockers/utils/callsForLockers/gaugeCalls.ts +0 -10
  189. package/src/lockers/utils/callsForLockers/index.ts +0 -51
  190. package/src/lockers/utils/callsForLockers/veBoosts.ts +0 -28
  191. package/src/lockers/utils/callsForLockers/veCalls.ts +0 -44
  192. package/src/lockers/utils/callsForLockers/veSdtCalls.ts +0 -15
  193. package/src/lockers/utils/getFees.ts +0 -31
@@ -1 +0,0 @@
1
- {"version":3,"file":"parsePeg.js","sourceRoot":"","sources":["../../../../src/lockers/fetch/parsePeg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAE3D,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAE,qBAA0B,EAAE,EAAE;IACrE,MAAM,MAAM,GACV,MAAM,CAAC,eAAe,EAAE,IAAI,KAAK,WAAW;QAC1C,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM;QAC5D,CAAC,CAAC,SAAS,CAAA;IAEf,IAAI,SAAS,GAAG,MAAM,CAAA;IACtB,QAAQ,MAAM,CAAC,EAAE,EAAE,CAAC;QAClB,KAAK,KAAK;YACR,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YAClC,MAAK;IACT,CAAC;IACD,MAAM,GAAG,GACP,MAAM,IAAI,SAAS;QACjB,CAAC,CAAC,WAAW,CAAC,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QAChG,CAAC,CAAC,GAAG,CAAA;IAET,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA"}
@@ -1,28 +0,0 @@
1
- import {} from '@stake-dao/constants';
2
- import { formatUnits, zeroAddress } from 'viem';
3
- import { mainnet } from 'viem/chains';
4
- export const parseVoteBoosterData = (locker, chunkedRawLockersData) => {
5
- if (locker.voteBooster) {
6
- const voteBoosterBalance = {
7
- token: formatUnits(chunkedRawLockersData[11].result, locker.token.decimals),
8
- sdToken: formatUnits(chunkedRawLockersData[12].result, locker.sdToken.decimals),
9
- staked: locker.modules.gauge !== zeroAddress
10
- ? formatUnits(chunkedRawLockersData[13].result, locker.sdToken.decimals)
11
- : '0',
12
- working: locker.chainId === mainnet.id && locker.modules.gauge !== zeroAddress
13
- ? formatUnits(chunkedRawLockersData[14].result, locker.sdToken.decimals)
14
- : '0',
15
- };
16
- const voteBoosterBoost = voteBoosterBalance && Number(voteBoosterBalance.working) > 0 && Number(voteBoosterBalance.staked) > 0
17
- ? Number(voteBoosterBalance.working) / (Number(voteBoosterBalance.staked) * 0.4)
18
- : 1;
19
- return {
20
- booster: locker.voteBooster.booster,
21
- vSdToken: locker.voteBooster.vSdToken,
22
- balance: voteBoosterBalance,
23
- boost: voteBoosterBoost,
24
- };
25
- }
26
- return undefined;
27
- };
28
- //# sourceMappingURL=parseVoteBoosterData.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseVoteBoosterData.js","sourceRoot":"","sources":["../../../../src/lockers/fetch/parseVoteBoosterData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,qBAA0B,EAAE,EAAE;IACjF,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,MAAM,kBAAkB,GAAG;YACzB,KAAK,EAAE,WAAW,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC3E,OAAO,EAAE,WAAW,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YAC/E,MAAM,EACJ,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,WAAW;gBAClC,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACxE,CAAC,CAAC,GAAG;YACT,OAAO,EACL,MAAM,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,WAAW;gBACnE,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACxE,CAAC,CAAC,GAAG;SACV,CAAA;QAED,MAAM,gBAAgB,GACpB,kBAAkB,IAAI,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC;YACnG,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;YAChF,CAAC,CAAC,CAAC,CAAA;QAEP,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO;YACnC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,QAAQ;YACrC,OAAO,EAAE,kBAAkB;YAC3B,KAAK,EAAE,gBAAgB;SACxB,CAAA;IACH,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA"}
@@ -1,24 +0,0 @@
1
- import { lockerWithId } from '@stake-dao/constants';
2
- const depositorCalls = (depositor, locker) => {
3
- const calls = [];
4
- if ([
5
- lockerWithId('crv').modules.locker,
6
- lockerWithId('mav').modules.locker,
7
- lockerWithId('cake', 56).modules.locker,
8
- lockerWithId('fxs', 252).modules.locker,
9
- lockerWithId('fxn').modules.locker,
10
- lockerWithId('yfi').modules.locker,
11
- lockerWithId('pendle').modules.locker,
12
- lockerWithId('ynd').modules.locker,
13
- lockerWithId('zero', 59144).modules.locker,
14
- ].includes(locker)) {
15
- calls.push({ address: depositor, name: 'lockIncentivePercent' });
16
- }
17
- else {
18
- calls.push({ address: depositor, name: 'lockIncentive' });
19
- }
20
- calls.push({ address: depositor, name: 'incentiveToken' });
21
- return calls;
22
- };
23
- export default depositorCalls;
24
- //# sourceMappingURL=depositorCalls.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"depositorCalls.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/depositorCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGnD,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,MAAe,EAAE,EAAE;IAC5D,MAAM,KAAK,GAAU,EAAE,CAAA;IAEvB,IACE;QACE,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM;QACnC,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM;QACnC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAE,CAAC,OAAO,CAAC,MAAM;QACxC,YAAY,CAAC,KAAK,EAAE,GAAG,CAAE,CAAC,OAAO,CAAC,MAAM;QACxC,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM;QACnC,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM;QACnC,YAAY,CAAC,QAAQ,CAAE,CAAC,OAAO,CAAC,MAAM;QACtC,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM;QACnC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM;KAC5C,CAAC,QAAQ,CAAC,MAAM,CAAC,EAClB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAA;IAClE,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAA;IAE1D,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1,97 +0,0 @@
1
- import { formatUnits, zeroAddress } from 'viem';
2
- export const feeCalls = (lockerId, accumulatorAddress) => {
3
- const calls = [];
4
- if (accumulatorAddress === zeroAddress || ['mav', 'pendle', 'ynd'].includes(lockerId)) {
5
- return calls;
6
- }
7
- // Harvester fees
8
- calls.push({ address: accumulatorAddress, name: 'claimerFee' });
9
- // Treasury
10
- if (['cake'].includes(lockerId)) {
11
- calls.push({ address: accumulatorAddress, name: 'daoFee' });
12
- }
13
- switch (lockerId) {
14
- case 'angle':
15
- break;
16
- case 'cake':
17
- calls.push({ address: accumulatorAddress, name: 'liquidityFee' });
18
- break;
19
- case 'bpt':
20
- calls.push({ address: accumulatorAddress, name: 'lockerFee' });
21
- break;
22
- default:
23
- calls.push({ address: accumulatorAddress, name: 'getFeeSplit' });
24
- break;
25
- }
26
- return calls;
27
- };
28
- export const extractFees = (lockers, feesData) => {
29
- const results = [];
30
- // We reverse it because all fee calls was pushed in the locker array order
31
- // It's easier to get back fees with the pop function
32
- // And we slice it because the reverse modify the original array
33
- const lockersReverse = lockers.slice().reverse();
34
- for (const locker of lockersReverse) {
35
- if (locker.extensions.accumulator === zeroAddress || ['mav', 'pendle', 'ynd'].includes(locker.id)) {
36
- const claimerFee = locker.fees.find((f) => f.key === 'claimerFee');
37
- const daoFee = locker.fees.find((f) => f.key === 'daoFee');
38
- const bountyFee = locker.fees.find((f) => f.key === 'bountyFee');
39
- const liquidityFee = locker.fees.find((f) => f.key === 'liquidityFee');
40
- const lockerFee = locker.fees.find((f) => f.key === 'lockerFee');
41
- results.push({
42
- lockerId: locker.id,
43
- claimerFee: claimerFee ? `${claimerFee.value}` : '0',
44
- daoFee: daoFee ? `${daoFee.value}` : '0',
45
- bountyFee: bountyFee ? `${bountyFee.value}` : '0',
46
- liquidityFee: liquidityFee ? `${liquidityFee.value}` : '0',
47
- lockerFee: lockerFee ? `${lockerFee.value}` : '0',
48
- });
49
- continue;
50
- }
51
- let daoFee = '0';
52
- const bountyFee = '0';
53
- let liquidityFee = '0';
54
- let lockerFee = '0';
55
- switch (locker.id) {
56
- case 'angle':
57
- break;
58
- case 'cake':
59
- liquidityFee = formatUnits(feesData.pop()?.result, 2);
60
- daoFee = formatUnits(feesData.pop()?.result, 2);
61
- break;
62
- case 'bpt':
63
- lockerFee = formatUnits(feesData.pop()?.result, 2);
64
- break;
65
- case 'fxs': {
66
- const fxsFees = feesData.pop()?.result;
67
- daoFee = formatUnits(fxsFees.fees[0], 2);
68
- liquidityFee = formatUnits(fxsFees.fees[1], 2);
69
- break;
70
- }
71
- case 'spectra':
72
- case 'zero': {
73
- const split = feesData.pop()?.result;
74
- daoFee = formatUnits(split[0]?.fee || BigInt(0), 16);
75
- liquidityFee = formatUnits(split[1]?.fee || BigInt(0), 16);
76
- break;
77
- }
78
- default: {
79
- const fees = feesData.pop()?.result;
80
- daoFee = formatUnits(fees?.fees[0] || BigInt(0), 16);
81
- liquidityFee = formatUnits(fees?.fees[1] || BigInt(0), 16);
82
- break;
83
- }
84
- }
85
- const claimerFee = formatUnits(feesData.pop()?.result, !['angle', 'cake', 'bpt', 'fxs'].includes(locker.id) ? 16 : 2);
86
- results.push({
87
- lockerId: locker.id,
88
- claimerFee,
89
- daoFee,
90
- bountyFee,
91
- liquidityFee,
92
- lockerFee,
93
- });
94
- }
95
- return results;
96
- };
97
- //# sourceMappingURL=feeCalls.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"feeCalls.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/feeCalls.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { lockerWithId } from '@stake-dao/constants';
2
- const gaugeCalls = (gauge) => [
3
- { address: gauge, name: 'totalSupply' },
4
- gauge === lockerWithId('zero', 59144).modules.gauge
5
- ? { address: gauge, name: 'totalSupply' }
6
- : { address: gauge, name: 'working_supply' },
7
- ];
8
- export default gaugeCalls;
9
- //# sourceMappingURL=gaugeCalls.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gaugeCalls.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/gaugeCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC;IACpC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE;IACvC,KAAK,KAAK,YAAY,CAAC,MAAM,EAAE,KAAK,CAAE,CAAC,OAAO,CAAC,KAAK;QAClD,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE;QACzC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE;CAC/C,CAAA;AAED,eAAe,UAAU,CAAA"}
@@ -1,34 +0,0 @@
1
- import { FOUR_YEAR, OneEther } from '@stake-dao/constants';
2
- import { zeroAddress } from 'viem';
3
- import depositorCalls from './depositorCalls.js';
4
- import gaugeCalls from './gaugeCalls.js';
5
- import pegCalls from './pegCalls.js';
6
- import veBoosts from './veBoosts.js';
7
- import veCalls from './veCalls.js';
8
- import veSdtCalls from './veSdtCalls.js';
9
- const callsForLockers = (lockerId, token, sdToken, votingEscrow, depositor, gauge, locker, secondaryMarket, voteBooster, veBoost, veNFT) => [
10
- ...veCalls(lockerId, votingEscrow, depositor, locker, token, veNFT),
11
- ...depositorCalls(depositor, locker),
12
- ...gaugeCalls(gauge),
13
- // Token
14
- { address: token, name: 'balanceOf', params: [depositor] },
15
- {
16
- address: sdToken,
17
- name: 'balanceOf',
18
- params: [secondaryMarket?.label === 'Balancer' ? secondaryMarket.router : secondaryMarket?.pool || zeroAddress],
19
- },
20
- ...veSdtCalls(voteBooster, token, sdToken, gauge),
21
- pegCalls(secondaryMarket, sdToken, token),
22
- ...(lockerId === 'mav'
23
- ? [
24
- {
25
- address: votingEscrow,
26
- name: 'previewPoints',
27
- params: [OneEther, FOUR_YEAR],
28
- },
29
- ]
30
- : []),
31
- ...veBoosts(token, veBoost),
32
- ];
33
- export default callsForLockers;
34
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA8B,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAEtF,OAAO,EAAgB,WAAW,EAAE,MAAM,MAAM,CAAA;AAChD,OAAO,cAAc,MAAM,qBAAqB,CAAA;AAChD,OAAO,UAAU,MAAM,iBAAiB,CAAA;AACxC,OAAO,QAAQ,MAAM,eAAe,CAAA;AACpC,OAAO,QAAQ,MAAM,eAAe,CAAA;AACpC,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,UAAU,MAAM,iBAAiB,CAAA;AAExC,MAAM,eAAe,GAAG,CACtB,QAAgB,EAChB,KAAa,EACb,OAAe,EACf,YAAoB,EACpB,SAAiB,EACjB,KAAa,EACb,MAAc,EACd,eAAkD,EAClD,WAAgB,EAChB,OAGC,EACD,KAAe,EACf,EAAE,CAAC;IACH,GAAG,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAiB,EAAE,KAAK,EAAE,KAAK,CAAC;IAC9E,GAAG,cAAc,CAAC,SAAS,EAAE,MAAiB,CAAC;IAC/C,GAAG,UAAU,CAAC,KAAK,CAAC;IACpB,QAAQ;IACR,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE;IAC1D;QACE,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,CAAC,eAAe,EAAE,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,EAAE,IAAI,IAAI,WAAW,CAAC;KAChH;IACD,GAAG,UAAU,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC;IACjD,QAAQ,CAAC,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC;IACzC,GAAG,CAAC,QAAQ,KAAK,KAAK;QACpB,CAAC,CAAC;YACE;gBACE,OAAO,EAAE,YAAY;gBACrB,IAAI,EAAE,eAAe;gBACrB,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;aAC9B;SACF;QACH,CAAC,CAAC,EAAE,CAAC;IACP,GAAG,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CAC5B,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -1,17 +0,0 @@
1
- import { ONE_WEEK } from '@stake-dao/constants';
2
- import { range } from 'lodash-es';
3
- const veBoosts = (token, veBoost) => {
4
- const calls = [];
5
- if (veBoost) {
6
- calls.push({ address: veBoost.delegator, name: 'totalSupply', params: [] });
7
- const now = Math.floor(Date.now() / 1000);
8
- const lastWeek = Math.floor(now / ONE_WEEK) * ONE_WEEK;
9
- const lastFiveWeeks = range(0, 5).map((i) => lastWeek - i * ONE_WEEK);
10
- for (const weekTimestamp of lastFiveWeeks) {
11
- calls.push({ address: veBoost.delegator, name: 'weeklyRewards', params: [token, weekTimestamp] });
12
- }
13
- }
14
- return calls;
15
- };
16
- export default veBoosts;
17
- //# sourceMappingURL=veBoosts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"veBoosts.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/veBoosts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AAGjC,MAAM,QAAQ,GAAG,CACf,KAAa,EACb,OAGC,EACD,EAAE;IACF,MAAM,KAAK,GAAU,EAAE,CAAA;IACvB,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;QAE3E,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,QAAQ,CAAA;QACtD,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAA;QAErE,KAAK,MAAM,aAAa,IAAI,aAAa,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC,CAAA;QACnG,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,eAAe,QAAQ,CAAA"}
@@ -1,33 +0,0 @@
1
- import { lockerWithId } from '@stake-dao/constants';
2
- import { lockedAmountCall } from '../index.js';
3
- const veCalls = (lockerId, votingEscrow, depositor, locker, token, veNFT) => {
4
- const calls = [];
5
- calls.push(lockedAmountCall(lockerId, votingEscrow, depositor, locker));
6
- calls.push({ address: votingEscrow, name: 'balanceOf', params: [locker] });
7
- if ([
8
- lockerWithId('pendle').modules.locker,
9
- lockerWithId('mav').modules.locker,
10
- lockerWithId('cake', 56).modules.locker,
11
- lockerWithId('zero', 59144).modules.locker,
12
- ].includes(locker)) {
13
- calls.push({ address: token, name: 'balanceOf', params: [veNFT || votingEscrow] });
14
- }
15
- else if (lockerWithId('ynd').modules.locker) {
16
- calls.push({ address: token, name: 'balanceOf', params: [lockerWithId('ynd').modules.escrow] });
17
- }
18
- else {
19
- calls.push({ address: votingEscrow, name: 'supply' });
20
- }
21
- if (locker === lockerWithId('pendle').modules.locker) {
22
- calls.push({ address: votingEscrow, name: 'totalSupplyStored' });
23
- }
24
- else if (locker === lockerWithId('ynd').modules.locker) {
25
- calls.push({ address: lockerWithId('ynd').modules.escrow, name: 'totalLocked' });
26
- }
27
- else {
28
- calls.push({ address: votingEscrow, name: 'totalSupply' });
29
- }
30
- return calls;
31
- };
32
- export default veCalls;
33
- //# sourceMappingURL=veCalls.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"veCalls.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/veCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,OAAO,GAAG,CACd,QAAgB,EAChB,YAAoB,EACpB,SAAiB,EACjB,MAAe,EACf,KAAa,EACb,KAAe,EACf,EAAE;IACF,MAAM,KAAK,GAAU,EAAE,CAAA;IACvB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;IACvE,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAE1E,IACE;QACE,YAAY,CAAC,QAAQ,CAAE,CAAC,OAAO,CAAC,MAAM;QACtC,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM;QACnC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAE,CAAC,OAAO,CAAC,MAAM;QACxC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM;KAC5C,CAAC,QAAQ,CAAC,MAAM,CAAC,EAClB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,KAAK,IAAI,YAAY,CAAC,EAAE,CAAC,CAAA;IACpF,CAAC;SAAM,IAAI,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAClG,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;IACvD,CAAC;IAED,IAAI,MAAM,KAAK,YAAY,CAAC,QAAQ,CAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACtD,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAA;IAClE,CAAC;SAAM,IAAI,MAAM,KAAK,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1D,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;IACnF,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -1,14 +0,0 @@
1
- import { contracts, tokenWithId } from '@stake-dao/constants';
2
- const veSdtCalls = (voteBooster, token, sdToken, sdTokenGauge) => [
3
- { address: tokenWithId('vesdt').address, name: 'totalSupply' },
4
- ...(voteBooster
5
- ? [
6
- { address: token, name: 'balanceOf', params: [contracts.voteBoosterStrategy[1]] },
7
- { address: sdToken, name: 'balanceOf', params: [contracts.voteBoosterStrategy[1]] },
8
- { address: sdTokenGauge, name: 'balanceOf', params: [contracts.voteBoosterStrategy[1]] },
9
- { address: sdTokenGauge, name: 'working_balances', params: [contracts.voteBoosterStrategy[1]] },
10
- ]
11
- : []),
12
- ];
13
- export default veSdtCalls;
14
- //# sourceMappingURL=veSdtCalls.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"veSdtCalls.js","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/veSdtCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAE7D,MAAM,UAAU,GAAG,CAAC,WAAgB,EAAE,KAAa,EAAE,OAAe,EAAE,YAAoB,EAAE,EAAE,CAAC;IAC7F,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,CAAE,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE;IAC/D,GAAG,CAAC,WAAW;QACb,CAAC,CAAC;YACE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,mBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;YAClF,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,mBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;YACpF,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,mBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;YACzF,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,mBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE;SACjG;QACH,CAAC,CAAC,EAAE,CAAC;CACR,CAAA;AAED,eAAe,UAAU,CAAA"}
@@ -1,27 +0,0 @@
1
- import {} from './callsForLockers/feeCalls.js';
2
- const getFees = (locker, lockerFee) => {
3
- const fees = [];
4
- for (const fee of locker.fees) {
5
- let value = fee.value;
6
- if (!fee.static) {
7
- switch (fee.key) {
8
- case 'voteFee':
9
- value = Number(lockerFee?.bountyFee || 0);
10
- break;
11
- default:
12
- value = Number(lockerFee?.[fee.key] || 0);
13
- break;
14
- }
15
- }
16
- if (value > 0) {
17
- fees.push({
18
- label: fee.label,
19
- value,
20
- key: fee.key,
21
- });
22
- }
23
- }
24
- return fees;
25
- };
26
- export default getFees;
27
- //# sourceMappingURL=getFees.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getFees.js","sourceRoot":"","sources":["../../../../src/lockers/utils/getFees.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,MAAM,+BAA+B,CAAA;AAE/D,MAAM,OAAO,GAAG,CAAC,MAAW,EAAE,SAAwC,EAAE,EAAE;IACxE,MAAM,IAAI,GAAU,EAAE,CAAA;IAEtB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,KAAK,GAAW,GAAG,CAAC,KAAK,CAAA;QAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YAChB,QAAQ,GAAG,CAAC,GAAG,EAAE,CAAC;gBAChB,KAAK,SAAS;oBACZ,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,SAAS,IAAI,CAAC,CAAC,CAAA;oBACzC,MAAK;gBACP;oBACE,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;oBACzC,MAAK;YACT,CAAC;QACH,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,IAAI,CAAC,IAAI,CAAC;gBACR,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,KAAK;gBACL,GAAG,EAAE,GAAG,CAAC,GAAG;aACb,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -1,4 +0,0 @@
1
- import { type Locker } from '@stake-dao/constants';
2
- export declare const parseBoost: (locker: Locker, chunkedRawLockersData: any) => string;
3
- export declare const parseVeBoostApr: (lockerId: string, tokenPriceInUsd: number, totalDelegatedVeBoost: number, chunkedRawLockersData: any) => number;
4
- //# sourceMappingURL=parseBoost.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseBoost.d.ts","sourceRoot":"","sources":["../../../../src/lockers/fetch/parseBoost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAA4B,MAAM,sBAAsB,CAAA;AAI5E,eAAO,MAAM,UAAU,WAAY,MAAM,yBAAyB,GAAG,WASpE,CAAA;AAED,eAAO,MAAM,eAAe,aAChB,MAAM,mBACC,MAAM,yBACA,MAAM,yBACN,GAAG,WA0B3B,CAAA"}
@@ -1,3 +0,0 @@
1
- import { type Locker } from '@stake-dao/constants';
2
- export declare const parsePeg: (locker: Locker, chunkedRawLockersData: any) => string;
3
- //# sourceMappingURL=parsePeg.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parsePeg.d.ts","sourceRoot":"","sources":["../../../../src/lockers/fetch/parsePeg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAGlD,eAAO,MAAM,QAAQ,WAAY,MAAM,yBAAyB,GAAG,WAkBlE,CAAA"}
@@ -1,13 +0,0 @@
1
- import { type Locker } from '@stake-dao/constants';
2
- export declare const parseVoteBoosterData: (locker: Locker, chunkedRawLockersData: any) => {
3
- booster: `0x${string}`;
4
- vSdToken: `0x${string}`;
5
- balance: {
6
- token: string;
7
- sdToken: string;
8
- staked: string;
9
- working: string;
10
- };
11
- boost: number;
12
- } | undefined;
13
- //# sourceMappingURL=parseVoteBoosterData.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseVoteBoosterData.d.ts","sourceRoot":"","sources":["../../../../src/lockers/fetch/parseVoteBoosterData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAIlD,eAAO,MAAM,oBAAoB,WAAY,MAAM,yBAAyB,GAAG;;;;;;;;;;aA6B9E,CAAA"}
@@ -1,4 +0,0 @@
1
- import type { Address } from 'viem';
2
- declare const depositorCalls: (depositor: string, locker: Address) => any[];
3
- export default depositorCalls;
4
- //# sourceMappingURL=depositorCalls.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"depositorCalls.d.ts","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/depositorCalls.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,QAAA,MAAM,cAAc,cAAe,MAAM,UAAU,OAAO,UAwBzD,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1,13 +0,0 @@
1
- import { type Address } from 'viem';
2
- import type { Call } from '../../../utils.js';
3
- export declare const feeCalls: (lockerId: string, accumulatorAddress: Address) => Call[];
4
- export interface ILockerFee {
5
- lockerId: string;
6
- claimerFee: string;
7
- daoFee: string;
8
- bountyFee: string;
9
- liquidityFee: string;
10
- lockerFee: string;
11
- }
12
- export declare const extractFees: (lockers: any, feesData: any) => ILockerFee[];
13
- //# sourceMappingURL=feeCalls.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"feeCalls.d.ts","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/feeCalls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAA4B,MAAM,MAAM,CAAA;AAC7D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAE7C,eAAO,MAAM,QAAQ,aAAc,MAAM,sBAAsB,OAAO,WA8BrE,CAAA;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,eAAO,MAAM,WAAW,YAAa,GAAG,YAAY,GAAG,KAAG,UAAU,EA+EnE,CAAA"}
@@ -1,6 +0,0 @@
1
- declare const gaugeCalls: (gauge: string) => {
2
- address: string;
3
- name: string;
4
- }[];
5
- export default gaugeCalls;
6
- //# sourceMappingURL=gaugeCalls.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gaugeCalls.d.ts","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/gaugeCalls.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,UAAU,UAAW,MAAM;;;GAKhC,CAAA;AAED,eAAe,UAAU,CAAA"}
@@ -1,8 +0,0 @@
1
- import { type LockerSecondaryMarket } from '@stake-dao/constants';
2
- import { type Address } from 'viem';
3
- declare const callsForLockers: (lockerId: string, token: string, sdToken: string, votingEscrow: string, depositor: string, gauge: string, locker: string, secondaryMarket: LockerSecondaryMarket | undefined, voteBooster: any, veBoost?: {
4
- address: Address;
5
- delegator: Address;
6
- }, veNFT?: Address) => any[];
7
- export default callsForLockers;
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,qBAAqB,EAAY,MAAM,sBAAsB,CAAA;AAEtF,OAAO,EAAE,KAAK,OAAO,EAAe,MAAM,MAAM,CAAA;AAQhD,QAAA,MAAM,eAAe,aACT,MAAM,SACT,MAAM,WACJ,MAAM,gBACD,MAAM,aACT,MAAM,SACV,MAAM,UACL,MAAM,mBACG,qBAAqB,GAAG,SAAS,eACrC,GAAG,YACN;IACR,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;CACnB,UACO,OAAO,UAwBhB,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -1,7 +0,0 @@
1
- import type { Address } from 'viem';
2
- declare const veBoosts: (token: string, veBoost?: {
3
- address: Address;
4
- delegator: Address;
5
- }) => any[];
6
- export default veBoosts;
7
- //# sourceMappingURL=veBoosts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"veBoosts.d.ts","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/veBoosts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,QAAA,MAAM,QAAQ,UACL,MAAM,YACH;IACR,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;CACnB,UAgBF,CAAA;AAED,eAAe,QAAQ,CAAA"}
@@ -1,4 +0,0 @@
1
- import type { Address } from 'viem';
2
- declare const veCalls: (lockerId: string, votingEscrow: string, depositor: string, locker: Address, token: string, veNFT?: Address) => any[];
3
- export default veCalls;
4
- //# sourceMappingURL=veCalls.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"veCalls.d.ts","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/veCalls.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAGnC,QAAA,MAAM,OAAO,aACD,MAAM,gBACF,MAAM,aACT,MAAM,UACT,OAAO,SACR,MAAM,UACL,OAAO,UA8BhB,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -1,11 +0,0 @@
1
- declare const veSdtCalls: (voteBooster: any, token: string, sdToken: string, sdTokenGauge: string) => ({
2
- address: string;
3
- name: string;
4
- params?: undefined;
5
- } | {
6
- address: string;
7
- name: string;
8
- params: (string | undefined)[];
9
- })[];
10
- export default veSdtCalls;
11
- //# sourceMappingURL=veSdtCalls.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"veSdtCalls.d.ts","sourceRoot":"","sources":["../../../../../src/lockers/utils/callsForLockers/veSdtCalls.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,UAAU,gBAAiB,GAAG,SAAS,MAAM,WAAW,MAAM,gBAAgB,MAAM;;;;;;;;IAUzF,CAAA;AAED,eAAe,UAAU,CAAA"}
@@ -1,4 +0,0 @@
1
- import { type ILockerFee } from './callsForLockers/feeCalls.js';
2
- declare const getFees: (locker: any, lockerFee: ILockerFee | null | undefined) => any[];
3
- export default getFees;
4
- //# sourceMappingURL=getFees.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getFees.d.ts","sourceRoot":"","sources":["../../../../src/lockers/utils/getFees.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE/D,QAAA,MAAM,OAAO,WAAY,GAAG,aAAa,UAAU,GAAG,IAAI,GAAG,SAAS,UA0BrE,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -1,46 +0,0 @@
1
- import { type Locker, ONE_WEEK, ONE_YEAR, Zero } from '@stake-dao/constants'
2
- import { range } from 'lodash-es'
3
- import { formatUnits } from 'viem'
4
-
5
- export const parseBoost = (locker: Locker, chunkedRawLockersData: any) => {
6
- let boost = '0'
7
- if (locker.veBoost && locker.id === 'crv') {
8
- boost = formatUnits(chunkedRawLockersData[16].result, locker.token.decimals)
9
- } else if (locker.veBoost) {
10
- boost = formatUnits(chunkedRawLockersData[12].result, locker.token.decimals)
11
- }
12
-
13
- return boost
14
- }
15
-
16
- export const parseVeBoostApr = (
17
- lockerId: string,
18
- tokenPriceInUsd: number,
19
- totalDelegatedVeBoost: number,
20
- chunkedRawLockersData: any,
21
- ) => {
22
- const startIndex = lockerId === 'crv' ? 17 : 13
23
- let amountPerYear = 0
24
-
25
- try {
26
- const rawWeeklyRewards = range(startIndex, startIndex + 5).map((i) => chunkedRawLockersData[i])
27
-
28
- const weeklyRewardsWithoutNull = rawWeeklyRewards
29
- .filter((el) => el.status === 'success' && el.result && typeof el.result === 'bigint' && el.result > Zero)
30
- .map((el) => Number(formatUnits(el.result as bigint, 18)))
31
-
32
- if (weeklyRewardsWithoutNull.length > 0) {
33
- amountPerYear =
34
- (weeklyRewardsWithoutNull.reduce((total, x) => (total += x)) / (weeklyRewardsWithoutNull.length * ONE_WEEK)) *
35
- ONE_YEAR
36
- }
37
- } catch (e) {
38
- console.error(e)
39
- amountPerYear = 0
40
- }
41
-
42
- const tvl = totalDelegatedVeBoost * tokenPriceInUsd
43
- const apr = tvl > 0 ? ((amountPerYear * tokenPriceInUsd) / tvl) * 100 : 0
44
-
45
- return apr
46
- }
@@ -1,22 +0,0 @@
1
- import { type Locker } from '@stake-dao/constants'
2
- import { formatUnits, parseUnits, zeroAddress } from 'viem'
3
-
4
- export const parsePeg = (locker: Locker, chunkedRawLockersData: any) => {
5
- const rawPeg =
6
- locker.secondaryMarket?.pool !== zeroAddress
7
- ? chunkedRawLockersData[locker.voteBooster ? 15 : 11].result
8
- : undefined
9
-
10
- let parsedPeg = rawPeg
11
- switch (locker.id) {
12
- case 'bal':
13
- parsedPeg = rawPeg[1] * BigInt(-1)
14
- break
15
- }
16
- const peg =
17
- rawPeg && parsedPeg
18
- ? formatUnits(parsedPeg / parseUnits(locker.secondaryMarket?.pegBase?.toString() || '1', 0), 18)
19
- : '-'
20
-
21
- return peg
22
- }
@@ -1,34 +0,0 @@
1
- import { type Locker } from '@stake-dao/constants'
2
- import { formatUnits, zeroAddress } from 'viem'
3
- import { mainnet } from 'viem/chains'
4
-
5
- export const parseVoteBoosterData = (locker: Locker, chunkedRawLockersData: any) => {
6
- if (locker.voteBooster) {
7
- const voteBoosterBalance = {
8
- token: formatUnits(chunkedRawLockersData[11].result, locker.token.decimals),
9
- sdToken: formatUnits(chunkedRawLockersData[12].result, locker.sdToken.decimals),
10
- staked:
11
- locker.modules.gauge !== zeroAddress
12
- ? formatUnits(chunkedRawLockersData[13].result, locker.sdToken.decimals)
13
- : '0',
14
- working:
15
- locker.chainId === mainnet.id && locker.modules.gauge !== zeroAddress
16
- ? formatUnits(chunkedRawLockersData[14].result, locker.sdToken.decimals)
17
- : '0',
18
- }
19
-
20
- const voteBoosterBoost =
21
- voteBoosterBalance && Number(voteBoosterBalance.working) > 0 && Number(voteBoosterBalance.staked) > 0
22
- ? Number(voteBoosterBalance.working) / (Number(voteBoosterBalance.staked) * 0.4)
23
- : 1
24
-
25
- return {
26
- booster: locker.voteBooster.booster,
27
- vSdToken: locker.voteBooster.vSdToken,
28
- balance: voteBoosterBalance,
29
- boost: voteBoosterBoost,
30
- }
31
- }
32
-
33
- return undefined
34
- }
@@ -1,30 +0,0 @@
1
- import { lockerWithId } from '@stake-dao/constants'
2
- import type { Address } from 'viem'
3
-
4
- const depositorCalls = (depositor: string, locker: Address) => {
5
- const calls: any[] = []
6
-
7
- if (
8
- [
9
- lockerWithId('crv')!.modules.locker,
10
- lockerWithId('mav')!.modules.locker,
11
- lockerWithId('cake', 56)!.modules.locker,
12
- lockerWithId('fxs', 252)!.modules.locker,
13
- lockerWithId('fxn')!.modules.locker,
14
- lockerWithId('yfi')!.modules.locker,
15
- lockerWithId('pendle')!.modules.locker,
16
- lockerWithId('ynd')!.modules.locker,
17
- lockerWithId('zero', 59144)!.modules.locker,
18
- ].includes(locker)
19
- ) {
20
- calls.push({ address: depositor, name: 'lockIncentivePercent' })
21
- } else {
22
- calls.push({ address: depositor, name: 'lockIncentive' })
23
- }
24
-
25
- calls.push({ address: depositor, name: 'incentiveToken' })
26
-
27
- return calls
28
- }
29
-
30
- export default depositorCalls