@lidofinance/lsv-cli 1.0.0-alpha.53 → 1.0.0-alpha.55

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 (512) hide show
  1. package/README.md +3 -3
  2. package/dist/abi/AccessControlConfirmable.d.ts +331 -0
  3. package/dist/abi/AccessControlConfirmable.js +430 -0
  4. package/dist/abi/AccessControlConfirmable.js.map +1 -0
  5. package/dist/abi/Dashboard.d.ts +813 -374
  6. package/dist/abi/Dashboard.js +458 -277
  7. package/dist/abi/Dashboard.js.map +1 -1
  8. package/dist/abi/LazyOracle.d.ts +604 -0
  9. package/dist/abi/LazyOracle.js +782 -0
  10. package/dist/abi/LazyOracle.js.map +1 -0
  11. package/dist/abi/LidoLocator.d.ts +28 -0
  12. package/dist/abi/LidoLocator.js +36 -0
  13. package/dist/abi/LidoLocator.js.map +1 -1
  14. package/dist/abi/OperatorGrid.d.ts +340 -169
  15. package/dist/abi/OperatorGrid.js +344 -164
  16. package/dist/abi/OperatorGrid.js.map +1 -1
  17. package/dist/abi/PredepositGuarantee.d.ts +371 -56
  18. package/dist/abi/PredepositGuarantee.js +290 -69
  19. package/dist/abi/PredepositGuarantee.js.map +1 -1
  20. package/dist/abi/StakingVault.d.ts +97 -425
  21. package/dist/abi/StakingVault.js +94 -419
  22. package/dist/abi/StakingVault.js.map +1 -1
  23. package/dist/abi/VaultFactory.d.ts +209 -134
  24. package/dist/abi/VaultFactory.js +66 -10
  25. package/dist/abi/VaultFactory.js.map +1 -1
  26. package/dist/abi/VaultHub.d.ts +1109 -445
  27. package/dist/abi/VaultHub.js +1502 -559
  28. package/dist/abi/VaultHub.js.map +1 -1
  29. package/dist/abi/VaultViewer.d.ts +308 -1
  30. package/dist/abi/VaultViewer.js +399 -1
  31. package/dist/abi/VaultViewer.js.map +1 -1
  32. package/dist/abi/index.d.ts +2 -3
  33. package/dist/abi/index.js +2 -4
  34. package/dist/abi/index.js.map +1 -1
  35. package/dist/command/index.js +1 -1
  36. package/dist/command/index.js.map +1 -1
  37. package/dist/contracts/index.d.ts +1 -4
  38. package/dist/contracts/index.js +1 -4
  39. package/dist/contracts/index.js.map +1 -1
  40. package/dist/contracts/lazy-oracle.d.ts +3 -0
  41. package/dist/contracts/lazy-oracle.js +18 -0
  42. package/dist/contracts/lazy-oracle.js.map +1 -0
  43. package/dist/contracts/locator.d.ts +1342 -38
  44. package/dist/contracts/operator-grid.d.ts +1 -0
  45. package/dist/contracts/pdg.d.ts +1 -0
  46. package/dist/contracts/vault-factory.d.ts +8849 -3187
  47. package/dist/contracts/vault-viewer.d.ts +6467 -73
  48. package/dist/contracts/vault-viewer.js +1 -1
  49. package/dist/contracts/vault.d.ts +1 -0
  50. package/dist/features/dashboard.js +5 -250
  51. package/dist/features/dashboard.js.map +1 -1
  52. package/dist/features/deposits/check-bls-deposits.d.ts +3 -0
  53. package/dist/features/deposits/check-bls-deposits.js +15 -0
  54. package/dist/features/deposits/check-bls-deposits.js.map +1 -0
  55. package/dist/features/deposits/index.d.ts +3 -0
  56. package/dist/features/deposits/index.js +4 -0
  57. package/dist/features/deposits/index.js.map +1 -0
  58. package/dist/features/deposits/make-pdg-proof.d.ts +3 -0
  59. package/dist/features/deposits/make-pdg-proof.js +52 -0
  60. package/dist/features/deposits/make-pdg-proof.js.map +1 -0
  61. package/dist/features/deposits/no-pdg.d.ts +21 -0
  62. package/dist/features/deposits/no-pdg.js +92 -0
  63. package/dist/features/deposits/no-pdg.js.map +1 -0
  64. package/dist/features/index.d.ts +4 -0
  65. package/dist/features/index.js +4 -0
  66. package/dist/features/index.js.map +1 -1
  67. package/dist/features/mint-burn/allowance.d.ts +2 -0
  68. package/dist/features/mint-burn/allowance.js +49 -0
  69. package/dist/features/mint-burn/allowance.js.map +1 -0
  70. package/dist/features/mint-burn/burn-shares.d.ts +3 -0
  71. package/dist/features/mint-burn/burn-shares.js +33 -0
  72. package/dist/features/mint-burn/burn-shares.js.map +1 -0
  73. package/dist/features/mint-burn/burn-steth.d.ts +3 -0
  74. package/dist/features/mint-burn/burn-steth.js +35 -0
  75. package/dist/features/mint-burn/burn-steth.js.map +1 -0
  76. package/dist/features/mint-burn/index.d.ts +5 -0
  77. package/dist/features/mint-burn/index.js +6 -0
  78. package/dist/features/mint-burn/index.js.map +1 -0
  79. package/dist/features/mint-burn/mint-shares.d.ts +3 -0
  80. package/dist/features/mint-burn/mint-shares.js +37 -0
  81. package/dist/features/mint-burn/mint-shares.js.map +1 -0
  82. package/dist/features/mint-burn/mint-steth.d.ts +3 -0
  83. package/dist/features/mint-burn/mint-steth.js +39 -0
  84. package/dist/features/mint-burn/mint-steth.js.map +1 -0
  85. package/dist/features/pdg.js +17 -23
  86. package/dist/features/pdg.js.map +1 -1
  87. package/dist/features/utils/get-address.d.ts +2 -0
  88. package/dist/features/utils/get-address.js +16 -0
  89. package/dist/features/utils/get-address.js.map +1 -0
  90. package/dist/features/utils/index.d.ts +4 -0
  91. package/dist/features/utils/index.js +5 -0
  92. package/dist/features/utils/index.js.map +1 -0
  93. package/dist/features/utils/liability-shares.d.ts +2 -0
  94. package/dist/features/utils/liability-shares.js +10 -0
  95. package/dist/features/utils/liability-shares.js.map +1 -0
  96. package/dist/features/utils/minting-capacity.d.ts +2 -0
  97. package/dist/features/utils/minting-capacity.js +11 -0
  98. package/dist/features/utils/minting-capacity.js.map +1 -0
  99. package/dist/features/utils/report-fresh.d.ts +2 -0
  100. package/dist/features/utils/report-fresh.js +18 -0
  101. package/dist/features/utils/report-fresh.js.map +1 -0
  102. package/dist/features/vault-factory.d.ts +17 -1
  103. package/dist/features/vault-factory.js +44 -8
  104. package/dist/features/vault-factory.js.map +1 -1
  105. package/dist/features/vault-hub.js +6 -6
  106. package/dist/features/vault-hub.js.map +1 -1
  107. package/dist/features/vault-operations/create-vault.d.ts +2 -0
  108. package/dist/features/vault-operations/create-vault.js +58 -0
  109. package/dist/features/vault-operations/create-vault.js.map +1 -0
  110. package/dist/features/vault-operations/dashboard-by-vault.d.ts +11 -0
  111. package/dist/features/vault-operations/dashboard-by-vault.js +34 -0
  112. package/dist/features/vault-operations/dashboard-by-vault.js.map +1 -0
  113. package/dist/features/vault-operations/index.d.ts +7 -0
  114. package/dist/features/vault-operations/index.js +8 -0
  115. package/dist/features/vault-operations/index.js.map +1 -0
  116. package/dist/features/vault-operations/vault-health.d.ts +2 -0
  117. package/dist/features/vault-operations/vault-health.js +24 -0
  118. package/dist/features/vault-operations/vault-health.js.map +1 -0
  119. package/dist/features/vault-operations/vault-info.d.ts +2 -0
  120. package/dist/features/vault-operations/vault-info.js +107 -0
  121. package/dist/features/vault-operations/vault-info.js.map +1 -0
  122. package/dist/features/vault-operations/vault-overview.d.ts +2 -0
  123. package/dist/features/vault-operations/vault-overview.js +107 -0
  124. package/dist/features/vault-operations/vault-overview.js.map +1 -0
  125. package/dist/features/vault-operations/vault-roles.d.ts +6 -0
  126. package/dist/features/vault-operations/vault-roles.js +62 -0
  127. package/dist/features/vault-operations/vault-roles.js.map +1 -0
  128. package/dist/features/vault-operations/vaults-by-role.d.ts +3 -0
  129. package/dist/features/vault-operations/vaults-by-role.js +45 -0
  130. package/dist/features/vault-operations/vaults-by-role.js.map +1 -0
  131. package/dist/features/vault.js +6 -14
  132. package/dist/features/vault.js.map +1 -1
  133. package/dist/index.js +16 -1
  134. package/dist/index.js.map +1 -1
  135. package/dist/programs/account/read.js +5 -1
  136. package/dist/programs/account/read.js.map +1 -1
  137. package/dist/programs/contracts/dashboard/config.d.ts +3 -0
  138. package/dist/programs/{dashboard → contracts/dashboard}/config.js +43 -35
  139. package/dist/programs/contracts/dashboard/config.js.map +1 -0
  140. package/dist/programs/contracts/dashboard/index.js.map +1 -0
  141. package/dist/programs/contracts/dashboard/main.js +5 -0
  142. package/dist/programs/contracts/dashboard/main.js.map +1 -0
  143. package/dist/programs/{dashboard → contracts/dashboard}/read.js +6 -33
  144. package/dist/programs/contracts/dashboard/read.js.map +1 -0
  145. package/dist/programs/{dashboard → contracts/dashboard}/write.js +109 -130
  146. package/dist/programs/contracts/dashboard/write.js.map +1 -0
  147. package/dist/programs/contracts/hub/config.d.ts +3 -0
  148. package/dist/programs/contracts/hub/config.js +165 -0
  149. package/dist/programs/contracts/hub/config.js.map +1 -0
  150. package/dist/programs/contracts/hub/index.js.map +1 -0
  151. package/dist/programs/contracts/hub/main.js +5 -0
  152. package/dist/programs/contracts/hub/main.js.map +1 -0
  153. package/dist/programs/{hub → contracts/hub}/read.js +13 -18
  154. package/dist/programs/contracts/hub/read.js.map +1 -0
  155. package/dist/programs/contracts/hub/write.js +425 -0
  156. package/dist/programs/contracts/hub/write.js.map +1 -0
  157. package/dist/programs/contracts/index.d.ts +8 -0
  158. package/dist/programs/contracts/index.js +9 -0
  159. package/dist/programs/contracts/index.js.map +1 -0
  160. package/dist/programs/contracts/main.d.ts +1 -0
  161. package/dist/programs/contracts/main.js +6 -0
  162. package/dist/programs/contracts/main.js.map +1 -0
  163. package/dist/programs/contracts/operator-grid/config.d.ts +3 -0
  164. package/dist/programs/{operator-grid → contracts/operator-grid}/config.js +40 -34
  165. package/dist/programs/contracts/operator-grid/config.js.map +1 -0
  166. package/dist/programs/contracts/operator-grid/index.js.map +1 -0
  167. package/dist/programs/contracts/operator-grid/main.js +5 -0
  168. package/dist/programs/contracts/operator-grid/main.js.map +1 -0
  169. package/dist/programs/{operator-grid → contracts/operator-grid}/read.js +4 -4
  170. package/dist/programs/contracts/operator-grid/read.js.map +1 -0
  171. package/dist/programs/{operator-grid → contracts/operator-grid}/write.js +27 -32
  172. package/dist/programs/contracts/operator-grid/write.js.map +1 -0
  173. package/dist/programs/contracts/pdg/config.d.ts +3 -0
  174. package/dist/programs/{pdg → contracts/pdg}/config.js +53 -27
  175. package/dist/programs/contracts/pdg/config.js.map +1 -0
  176. package/dist/programs/contracts/pdg/index.js.map +1 -0
  177. package/dist/programs/contracts/pdg/main.js +5 -0
  178. package/dist/programs/contracts/pdg/main.js.map +1 -0
  179. package/dist/programs/{pdg → contracts/pdg}/read.js +4 -4
  180. package/dist/programs/contracts/pdg/read.js.map +1 -0
  181. package/dist/programs/{pdg → contracts/pdg}/write.js +38 -20
  182. package/dist/programs/contracts/pdg/write.js.map +1 -0
  183. package/dist/programs/contracts/vault/config.d.ts +3 -0
  184. package/dist/programs/{vault → contracts/vault}/config.js +0 -28
  185. package/dist/programs/contracts/vault/config.js.map +1 -0
  186. package/dist/programs/contracts/vault/index.js.map +1 -0
  187. package/dist/programs/contracts/vault/main.js +3 -0
  188. package/dist/programs/contracts/vault/main.js.map +1 -0
  189. package/dist/programs/{vault → contracts/vault}/read.js +4 -4
  190. package/dist/programs/contracts/vault/read.js.map +1 -0
  191. package/dist/programs/{vault → contracts/vault}/write.js +37 -70
  192. package/dist/programs/contracts/vault/write.js.map +1 -0
  193. package/dist/programs/contracts/vault-factory/config.d.ts +3 -0
  194. package/dist/programs/contracts/vault-factory/config.js.map +1 -0
  195. package/dist/programs/contracts/vault-factory/index.js.map +1 -0
  196. package/dist/programs/contracts/vault-factory/main.js +5 -0
  197. package/dist/programs/contracts/vault-factory/main.js.map +1 -0
  198. package/dist/programs/{vault-factory → contracts/vault-factory}/read.js +4 -4
  199. package/dist/programs/contracts/vault-factory/read.js.map +1 -0
  200. package/dist/programs/contracts/vault-factory/write.js +126 -0
  201. package/dist/programs/contracts/vault-factory/write.js.map +1 -0
  202. package/dist/programs/contracts/vault-viewer/config.d.ts +3 -0
  203. package/dist/programs/contracts/vault-viewer/config.js.map +1 -0
  204. package/dist/programs/contracts/vault-viewer/index.js.map +1 -0
  205. package/dist/programs/contracts/vault-viewer/main.js +5 -0
  206. package/dist/programs/contracts/vault-viewer/main.js.map +1 -0
  207. package/dist/programs/contracts/vault-viewer/read.d.ts +1 -0
  208. package/dist/programs/{vault-viewer → contracts/vault-viewer}/read.js +20 -10
  209. package/dist/programs/contracts/vault-viewer/read.js.map +1 -0
  210. package/dist/programs/index.d.ts +2 -9
  211. package/dist/programs/index.js +2 -9
  212. package/dist/programs/index.js.map +1 -1
  213. package/dist/programs/pdg-helpers.js +46 -10
  214. package/dist/programs/pdg-helpers.js.map +1 -1
  215. package/dist/programs/use-cases/deposits/index.js.map +1 -0
  216. package/dist/programs/use-cases/deposits/main.d.ts +1 -0
  217. package/dist/programs/use-cases/deposits/main.js +6 -0
  218. package/dist/programs/use-cases/deposits/main.js.map +1 -0
  219. package/dist/programs/use-cases/deposits/read.js +13 -0
  220. package/dist/programs/use-cases/deposits/read.js.map +1 -0
  221. package/dist/programs/use-cases/deposits/write.js +211 -0
  222. package/dist/programs/use-cases/deposits/write.js.map +1 -0
  223. package/dist/programs/use-cases/index.d.ts +4 -0
  224. package/dist/programs/use-cases/index.js +5 -0
  225. package/dist/programs/use-cases/index.js.map +1 -0
  226. package/dist/programs/use-cases/metrics/index.js.map +1 -0
  227. package/dist/programs/use-cases/metrics/main.js +6 -0
  228. package/dist/programs/use-cases/metrics/main.js.map +1 -0
  229. package/dist/programs/{metrics → use-cases/metrics}/read.js +29 -23
  230. package/dist/programs/use-cases/metrics/read.js.map +1 -0
  231. package/dist/programs/use-cases/report/index.d.ts +3 -0
  232. package/dist/programs/use-cases/report/index.js +4 -0
  233. package/dist/programs/use-cases/report/index.js.map +1 -0
  234. package/dist/programs/use-cases/report/main.js +6 -0
  235. package/dist/programs/use-cases/report/main.js.map +1 -0
  236. package/dist/programs/{report → use-cases/report}/read.js +32 -41
  237. package/dist/programs/use-cases/report/read.js.map +1 -0
  238. package/dist/programs/{report → use-cases/report}/write.js +33 -42
  239. package/dist/programs/use-cases/report/write.js.map +1 -0
  240. package/dist/programs/use-cases/vault-operations/create-vault.js +129 -0
  241. package/dist/programs/use-cases/vault-operations/create-vault.js.map +1 -0
  242. package/dist/programs/use-cases/vault-operations/index.d.ts +4 -0
  243. package/dist/programs/use-cases/vault-operations/index.js +5 -0
  244. package/dist/programs/use-cases/vault-operations/index.js.map +1 -0
  245. package/dist/programs/use-cases/vault-operations/main.d.ts +1 -0
  246. package/dist/programs/use-cases/vault-operations/main.js +6 -0
  247. package/dist/programs/use-cases/vault-operations/main.js.map +1 -0
  248. package/dist/programs/use-cases/vault-operations/read.js +46 -0
  249. package/dist/programs/use-cases/vault-operations/read.js.map +1 -0
  250. package/dist/programs/use-cases/vault-operations/write.d.ts +1 -0
  251. package/dist/programs/use-cases/vault-operations/write.js +148 -0
  252. package/dist/programs/use-cases/vault-operations/write.js.map +1 -0
  253. package/dist/providers/wallet.d.ts +10 -10
  254. package/dist/tests/utils/error-handler.test.js +0 -8
  255. package/dist/tests/utils/error-handler.test.js.map +1 -1
  256. package/dist/tests/utils/ipfs.test.js +2 -2
  257. package/dist/tests/utils/ipfs.test.js.map +1 -1
  258. package/dist/types/common.d.ts +6 -2
  259. package/dist/utils/arguments.d.ts +1 -0
  260. package/dist/utils/arguments.js +3 -0
  261. package/dist/utils/arguments.js.map +1 -1
  262. package/dist/utils/cache.d.ts +2 -2
  263. package/dist/utils/cache.js +7 -7
  264. package/dist/utils/cache.js.map +1 -1
  265. package/dist/utils/calculate-overview-v2.d.ts +2 -1
  266. package/dist/utils/calculate-overview-v2.js +2 -4
  267. package/dist/utils/calculate-overview-v2.js.map +1 -1
  268. package/dist/utils/calculate-overview.d.ts +0 -1
  269. package/dist/utils/calculate-overview.js +1 -3
  270. package/dist/utils/calculate-overview.js.map +1 -1
  271. package/dist/utils/charts/blessed/charts-apr.js +6 -3
  272. package/dist/utils/charts/blessed/charts-apr.js.map +1 -1
  273. package/dist/utils/charts/blessed/charts-rewards.js +3 -3
  274. package/dist/utils/charts/blessed/charts-rewards.js.map +1 -1
  275. package/dist/utils/charts/blessed/datasets/prepare-metrics.js +4 -4
  276. package/dist/utils/charts/blessed/datasets/prepare-metrics.js.map +1 -1
  277. package/dist/utils/charts/simple/simple-charts.js +5 -5
  278. package/dist/utils/charts/simple/simple-charts.js.map +1 -1
  279. package/dist/utils/commands/confirmations.d.ts +20 -8
  280. package/dist/utils/commands/confirmations.js +30 -14
  281. package/dist/utils/commands/confirmations.js.map +1 -1
  282. package/dist/utils/commands/index.d.ts +0 -2
  283. package/dist/utils/commands/index.js +0 -2
  284. package/dist/utils/commands/index.js.map +1 -1
  285. package/dist/utils/commands/report.d.ts +1 -1
  286. package/dist/utils/commands/report.js +18 -25
  287. package/dist/utils/commands/report.js.map +1 -1
  288. package/dist/utils/consts.d.ts +3 -0
  289. package/dist/utils/consts.js +4 -0
  290. package/dist/utils/consts.js.map +1 -0
  291. package/dist/utils/contract.d.ts +2 -0
  292. package/dist/utils/contract.js +3 -1
  293. package/dist/utils/contract.js.map +1 -1
  294. package/dist/utils/fetchCL.d.ts +22 -0
  295. package/dist/utils/fetchCL.js +12 -0
  296. package/dist/utils/fetchCL.js.map +1 -1
  297. package/dist/utils/index.d.ts +2 -1
  298. package/dist/utils/index.js +2 -1
  299. package/dist/utils/index.js.map +1 -1
  300. package/dist/utils/prompts/confirmations.js +2 -2
  301. package/dist/utils/prompts/confirmations.js.map +1 -1
  302. package/dist/utils/prompts/default.d.ts +2 -0
  303. package/dist/utils/prompts/default.js +7 -0
  304. package/dist/utils/prompts/default.js.map +1 -1
  305. package/dist/utils/prompts/index.d.ts +1 -1
  306. package/dist/utils/prompts/index.js +1 -1
  307. package/dist/utils/prompts/index.js.map +1 -1
  308. package/dist/utils/prompts/mint-burn/confirm-burn.d.ts +17 -0
  309. package/dist/utils/prompts/mint-burn/confirm-burn.js +23 -0
  310. package/dist/utils/prompts/mint-burn/confirm-burn.js.map +1 -0
  311. package/dist/utils/prompts/{dashboard.d.ts → mint-burn/confirm-mint.d.ts} +0 -15
  312. package/dist/utils/prompts/mint-burn/confirm-mint.js +23 -0
  313. package/dist/utils/prompts/mint-burn/confirm-mint.js.map +1 -0
  314. package/dist/utils/prompts/mint-burn/constants.d.ts +2 -0
  315. package/dist/utils/prompts/mint-burn/constants.js +6 -0
  316. package/dist/utils/prompts/mint-burn/constants.js.map +1 -0
  317. package/dist/utils/prompts/mint-burn/index.d.ts +2 -0
  318. package/dist/utils/prompts/mint-burn/index.js +3 -0
  319. package/dist/utils/prompts/mint-burn/index.js.map +1 -0
  320. package/dist/utils/prompts/operations.d.ts +1 -1
  321. package/dist/utils/prompts/operations.js +3 -3
  322. package/dist/utils/prompts/operations.js.map +1 -1
  323. package/dist/utils/prompts/predeposit-guarantee.d.ts +2 -2
  324. package/dist/utils/prompts/predeposit-guarantee.js.map +1 -1
  325. package/dist/utils/proof/create-proof.d.ts +4 -0
  326. package/dist/utils/proof/create-proof.js +2 -0
  327. package/dist/utils/proof/create-proof.js.map +1 -1
  328. package/dist/utils/proof/index.d.ts +0 -1
  329. package/dist/utils/proof/index.js +0 -1
  330. package/dist/utils/proof/index.js.map +1 -1
  331. package/dist/utils/read-programs-by-abi.d.ts +11 -4
  332. package/dist/utils/read-programs-by-abi.js +4 -3
  333. package/dist/utils/read-programs-by-abi.js.map +1 -1
  334. package/dist/utils/report/index.d.ts +2 -1
  335. package/dist/utils/report/index.js +2 -1
  336. package/dist/utils/report/index.js.map +1 -1
  337. package/dist/utils/report/report-proof.d.ts +42 -0
  338. package/dist/utils/report/report-proof.js +38 -0
  339. package/dist/utils/report/report-proof.js.map +1 -0
  340. package/dist/utils/report/report.d.ts +3 -60
  341. package/dist/utils/report/report.js +14 -8
  342. package/dist/utils/report/report.js.map +1 -1
  343. package/dist/utils/report/statistic-data.d.ts +1 -1
  344. package/dist/utils/report/statistic-data.js +5 -6
  345. package/dist/utils/report/statistic-data.js.map +1 -1
  346. package/dist/utils/report/types.d.ts +69 -0
  347. package/dist/utils/report/types.js +2 -0
  348. package/dist/utils/report/types.js.map +1 -0
  349. package/dist/utils/statistic/index.d.ts +1 -0
  350. package/dist/utils/statistic/index.js +2 -0
  351. package/dist/utils/statistic/index.js.map +1 -0
  352. package/dist/utils/{report → statistic}/report-statistic.d.ts +3 -3
  353. package/dist/utils/{report → statistic}/report-statistic.js +16 -19
  354. package/dist/utils/statistic/report-statistic.js.map +1 -0
  355. package/dist/version/index.js +1 -1
  356. package/package.json +2 -1
  357. package/dist/abi/BlsHarness.d.ts +0 -178
  358. package/dist/abi/BlsHarness.js +0 -232
  359. package/dist/abi/BlsHarness.js.map +0 -1
  360. package/dist/abi/CLProofVerifier.d.ts +0 -188
  361. package/dist/abi/CLProofVerifier.js +0 -247
  362. package/dist/abi/CLProofVerifier.js.map +0 -1
  363. package/dist/abi/ReportChecker.d.ts +0 -83
  364. package/dist/abi/ReportChecker.js +0 -109
  365. package/dist/abi/ReportChecker.js.map +0 -1
  366. package/dist/contracts/blsHarness.d.ts +0 -947
  367. package/dist/contracts/blsHarness.js +0 -24
  368. package/dist/contracts/blsHarness.js.map +0 -1
  369. package/dist/contracts/clProofVerifier.d.ts +0 -2647
  370. package/dist/contracts/clProofVerifier.js +0 -23
  371. package/dist/contracts/clProofVerifier.js.map +0 -1
  372. package/dist/contracts/reportChecker.d.ts +0 -758
  373. package/dist/contracts/reportChecker.js +0 -23
  374. package/dist/contracts/reportChecker.js.map +0 -1
  375. package/dist/contracts/voting.d.ts +0 -6
  376. package/dist/contracts/voting.js +0 -19
  377. package/dist/contracts/voting.js.map +0 -1
  378. package/dist/programs/dashboard/config.d.ts +0 -2
  379. package/dist/programs/dashboard/config.js.map +0 -1
  380. package/dist/programs/dashboard/index.js.map +0 -1
  381. package/dist/programs/dashboard/main.js +0 -5
  382. package/dist/programs/dashboard/main.js.map +0 -1
  383. package/dist/programs/dashboard/read.js.map +0 -1
  384. package/dist/programs/dashboard/write.js.map +0 -1
  385. package/dist/programs/hub/config.d.ts +0 -2
  386. package/dist/programs/hub/config.js +0 -123
  387. package/dist/programs/hub/config.js.map +0 -1
  388. package/dist/programs/hub/index.js.map +0 -1
  389. package/dist/programs/hub/main.js +0 -5
  390. package/dist/programs/hub/main.js.map +0 -1
  391. package/dist/programs/hub/read.js.map +0 -1
  392. package/dist/programs/hub/write.js +0 -246
  393. package/dist/programs/hub/write.js.map +0 -1
  394. package/dist/programs/metrics/index.js.map +0 -1
  395. package/dist/programs/metrics/main.js +0 -3
  396. package/dist/programs/metrics/main.js.map +0 -1
  397. package/dist/programs/metrics/read.js.map +0 -1
  398. package/dist/programs/operator-grid/config.d.ts +0 -2
  399. package/dist/programs/operator-grid/config.js.map +0 -1
  400. package/dist/programs/operator-grid/index.js.map +0 -1
  401. package/dist/programs/operator-grid/main.js +0 -5
  402. package/dist/programs/operator-grid/main.js.map +0 -1
  403. package/dist/programs/operator-grid/read.js.map +0 -1
  404. package/dist/programs/operator-grid/write.js.map +0 -1
  405. package/dist/programs/pdg/config.d.ts +0 -2
  406. package/dist/programs/pdg/config.js.map +0 -1
  407. package/dist/programs/pdg/index.js.map +0 -1
  408. package/dist/programs/pdg/main.js +0 -5
  409. package/dist/programs/pdg/main.js.map +0 -1
  410. package/dist/programs/pdg/read.js.map +0 -1
  411. package/dist/programs/pdg/write.js.map +0 -1
  412. package/dist/programs/report/index.js.map +0 -1
  413. package/dist/programs/report/main.js +0 -3
  414. package/dist/programs/report/main.js.map +0 -1
  415. package/dist/programs/report/read.js.map +0 -1
  416. package/dist/programs/report/write.js.map +0 -1
  417. package/dist/programs/vault/config.d.ts +0 -2
  418. package/dist/programs/vault/config.js.map +0 -1
  419. package/dist/programs/vault/index.js.map +0 -1
  420. package/dist/programs/vault/main.js +0 -3
  421. package/dist/programs/vault/main.js.map +0 -1
  422. package/dist/programs/vault/read.js.map +0 -1
  423. package/dist/programs/vault/write.js.map +0 -1
  424. package/dist/programs/vault-factory/config.d.ts +0 -2
  425. package/dist/programs/vault-factory/config.js.map +0 -1
  426. package/dist/programs/vault-factory/index.js.map +0 -1
  427. package/dist/programs/vault-factory/main.js +0 -5
  428. package/dist/programs/vault-factory/main.js.map +0 -1
  429. package/dist/programs/vault-factory/read.js.map +0 -1
  430. package/dist/programs/vault-factory/write.js +0 -86
  431. package/dist/programs/vault-factory/write.js.map +0 -1
  432. package/dist/programs/vault-viewer/config.d.ts +0 -2
  433. package/dist/programs/vault-viewer/config.js.map +0 -1
  434. package/dist/programs/vault-viewer/index.js.map +0 -1
  435. package/dist/programs/vault-viewer/main.js +0 -10
  436. package/dist/programs/vault-viewer/main.js.map +0 -1
  437. package/dist/programs/vault-viewer/read.js.map +0 -1
  438. package/dist/tests/__mocks__/@lodestar/types.js +0 -6
  439. package/dist/tests/__mocks__/@lodestar/types.js.map +0 -1
  440. package/dist/tests/utils/fetchCL.test.js +0 -57
  441. package/dist/tests/utils/fetchCL.test.js.map +0 -1
  442. package/dist/tests/utils/report-proof.test.js +0 -29
  443. package/dist/tests/utils/report-proof.test.js.map +0 -1
  444. package/dist/tests/utils/report-statistic.test.d.ts +0 -1
  445. package/dist/tests/utils/report-statistic.test.js +0 -247
  446. package/dist/tests/utils/report-statistic.test.js.map +0 -1
  447. package/dist/tests/utils/required-lock.test.d.ts +0 -1
  448. package/dist/tests/utils/required-lock.test.js +0 -26
  449. package/dist/tests/utils/required-lock.test.js.map +0 -1
  450. package/dist/utils/commands/dashboard.d.ts +0 -6
  451. package/dist/utils/commands/dashboard.js +0 -145
  452. package/dist/utils/commands/dashboard.js.map +0 -1
  453. package/dist/utils/commands/utils.d.ts +0 -6
  454. package/dist/utils/commands/utils.js +0 -57
  455. package/dist/utils/commands/utils.js.map +0 -1
  456. package/dist/utils/prompts/dashboard.js +0 -45
  457. package/dist/utils/prompts/dashboard.js.map +0 -1
  458. package/dist/utils/proof/report-proof.d.ts +0 -5
  459. package/dist/utils/proof/report-proof.js +0 -26
  460. package/dist/utils/proof/report-proof.js.map +0 -1
  461. package/dist/utils/report/report-statistic.js.map +0 -1
  462. package/dist/utils/required-lock.d.ts +0 -5
  463. package/dist/utils/required-lock.js +0 -21
  464. package/dist/utils/required-lock.js.map +0 -1
  465. /package/dist/programs/{dashboard → contracts/dashboard}/index.d.ts +0 -0
  466. /package/dist/programs/{dashboard → contracts/dashboard}/index.js +0 -0
  467. /package/dist/programs/{dashboard → contracts/dashboard}/main.d.ts +0 -0
  468. /package/dist/programs/{dashboard → contracts/dashboard}/read.d.ts +0 -0
  469. /package/dist/programs/{dashboard → contracts/dashboard}/write.d.ts +0 -0
  470. /package/dist/programs/{hub → contracts/hub}/index.d.ts +0 -0
  471. /package/dist/programs/{hub → contracts/hub}/index.js +0 -0
  472. /package/dist/programs/{hub → contracts/hub}/main.d.ts +0 -0
  473. /package/dist/programs/{hub → contracts/hub}/read.d.ts +0 -0
  474. /package/dist/programs/{hub → contracts/hub}/write.d.ts +0 -0
  475. /package/dist/programs/{operator-grid → contracts/operator-grid}/index.d.ts +0 -0
  476. /package/dist/programs/{operator-grid → contracts/operator-grid}/index.js +0 -0
  477. /package/dist/programs/{operator-grid → contracts/operator-grid}/main.d.ts +0 -0
  478. /package/dist/programs/{metrics → contracts/operator-grid}/read.d.ts +0 -0
  479. /package/dist/programs/{operator-grid → contracts/operator-grid}/write.d.ts +0 -0
  480. /package/dist/programs/{pdg → contracts/pdg}/index.d.ts +0 -0
  481. /package/dist/programs/{pdg → contracts/pdg}/index.js +0 -0
  482. /package/dist/programs/{pdg → contracts/pdg}/main.d.ts +0 -0
  483. /package/dist/programs/{operator-grid → contracts/pdg}/read.d.ts +0 -0
  484. /package/dist/programs/{pdg → contracts/pdg}/write.d.ts +0 -0
  485. /package/dist/programs/{vault-factory → contracts/vault}/index.d.ts +0 -0
  486. /package/dist/programs/{vault-factory → contracts/vault}/index.js +0 -0
  487. /package/dist/programs/{vault → contracts/vault}/main.d.ts +0 -0
  488. /package/dist/programs/{report → contracts/vault}/read.d.ts +0 -0
  489. /package/dist/programs/{vault-factory → contracts/vault}/write.d.ts +0 -0
  490. /package/dist/programs/{vault-factory → contracts/vault-factory}/config.js +0 -0
  491. /package/dist/programs/{report → contracts/vault-factory}/index.d.ts +0 -0
  492. /package/dist/programs/{report → contracts/vault-factory}/index.js +0 -0
  493. /package/dist/programs/{vault-factory → contracts/vault-factory}/main.d.ts +0 -0
  494. /package/dist/programs/{pdg → contracts/vault-factory}/read.d.ts +0 -0
  495. /package/dist/programs/{report → contracts/vault-factory}/write.d.ts +0 -0
  496. /package/dist/programs/{vault-viewer → contracts/vault-viewer}/config.js +0 -0
  497. /package/dist/programs/{metrics → contracts/vault-viewer}/index.d.ts +0 -0
  498. /package/dist/programs/{metrics → contracts/vault-viewer}/index.js +0 -0
  499. /package/dist/programs/{vault-viewer → contracts/vault-viewer}/main.d.ts +0 -0
  500. /package/dist/programs/{vault → use-cases/deposits}/index.d.ts +0 -0
  501. /package/dist/programs/{vault → use-cases/deposits}/index.js +0 -0
  502. /package/dist/programs/{vault-factory → use-cases/deposits}/read.d.ts +0 -0
  503. /package/dist/programs/{vault → use-cases/deposits}/write.d.ts +0 -0
  504. /package/dist/programs/{vault-viewer → use-cases/metrics}/index.d.ts +0 -0
  505. /package/dist/programs/{vault-viewer → use-cases/metrics}/index.js +0 -0
  506. /package/dist/programs/{metrics → use-cases/metrics}/main.d.ts +0 -0
  507. /package/dist/programs/{vault-viewer → use-cases/metrics}/read.d.ts +0 -0
  508. /package/dist/programs/{report → use-cases/report}/main.d.ts +0 -0
  509. /package/dist/programs/{vault → use-cases/report}/read.d.ts +0 -0
  510. /package/dist/{tests/__mocks__/@lodestar/types.d.ts → programs/use-cases/report/write.d.ts} +0 -0
  511. /package/dist/{tests/utils/fetchCL.test.d.ts → programs/use-cases/vault-operations/create-vault.d.ts} +0 -0
  512. /package/dist/{tests/utils/report-proof.test.d.ts → programs/use-cases/vault-operations/read.d.ts} +0 -0
@@ -1,247 +0,0 @@
1
- // NOTE: These tests require jest and @types/jest for correct execution.
2
- import { describe, it, expect } from '@jest/globals';
3
- import { reportMetrics } from '../../utils/report/report-statistic.js';
4
- const makeReport = ({ total_value_wei, in_out_delta, liability_shares, timestamp, }) => ({
5
- data: {
6
- vault_address: '0x123',
7
- total_value_wei: total_value_wei.toString(),
8
- in_out_delta: in_out_delta.toString(),
9
- fee: '0',
10
- liability_shares: liability_shares.toString(),
11
- },
12
- leaf: '0x0',
13
- refSlot: 0,
14
- blockNumber: 0,
15
- timestamp,
16
- proofsCID: '',
17
- prevTreeCID: '',
18
- merkleTreeRoot: '',
19
- });
20
- describe('reportMetrics', () => {
21
- it('returns all expected fields with positive rewards', () => {
22
- const previous = makeReport({
23
- total_value_wei: '100000000000000000000', // 0.1 ETH
24
- in_out_delta: '0',
25
- liability_shares: '1000',
26
- timestamp: 1000,
27
- });
28
- const current = makeReport({
29
- total_value_wei: '110000000000000000000', // 0.11 ETH
30
- in_out_delta: '0',
31
- liability_shares: '1000',
32
- timestamp: 1000 + 3600,
33
- });
34
- const stEthLiabilityRebaseRewards = '5000000000000000000';
35
- const nodeOperatorFeeBP = 100n;
36
- const res = reportMetrics({
37
- reports: { current, previous },
38
- nodeOperatorFeeBP,
39
- stEthLiabilityRebaseRewards: BigInt(stEthLiabilityRebaseRewards),
40
- });
41
- // Проверяем все возвращаемые значения
42
- expect(res).toHaveProperty('grossStakingRewards', 10000000000000000000n);
43
- expect(res).toHaveProperty('nodeOperatorRewards', 100000000000000000n);
44
- expect(res).toHaveProperty('dailyLidoFees', 0n);
45
- expect(res).toHaveProperty('netStakingRewards', 9900000000000000000n);
46
- expect(res).toHaveProperty('grossStakingAPR');
47
- expect(res).toHaveProperty('netStakingAPR');
48
- expect(res).toHaveProperty('bottomLine', 4900000000000000000n);
49
- expect(res).toHaveProperty('efficiency');
50
- expect(res).toHaveProperty('grossStakingAPR_bigint');
51
- expect(res).toHaveProperty('netStakingAPR_bigint');
52
- expect(res).toHaveProperty('efficiency_bigint');
53
- expect(res).toHaveProperty('grossStakingAPR_bps');
54
- expect(res).toHaveProperty('netStakingAPR_bps');
55
- expect(res).toHaveProperty('efficiency_bps');
56
- expect(res).toHaveProperty('grossStakingAPR_percent');
57
- expect(res).toHaveProperty('netStakingAPR_percent');
58
- expect(res).toHaveProperty('efficiency_percent');
59
- // Проверяем что значения APR положительные
60
- expect(Number(res.grossStakingAPR)).toBeGreaterThan(0);
61
- expect(Number(res.grossStakingAPR.apr_bps)).toBeGreaterThan(0);
62
- expect(Number(res.grossStakingAPR.apr_percent)).toBeGreaterThan(0);
63
- });
64
- it('returns all expected fields with zero rewards', () => {
65
- const previous = makeReport({
66
- total_value_wei: '100000000000000000000',
67
- in_out_delta: '0',
68
- liability_shares: '1000',
69
- timestamp: 1000,
70
- });
71
- const current = makeReport({
72
- total_value_wei: '100000000000000000000',
73
- in_out_delta: '0',
74
- liability_shares: '1000',
75
- timestamp: 1000 + 3600,
76
- });
77
- const res = reportMetrics({
78
- reports: { current, previous },
79
- nodeOperatorFeeBP: 100n,
80
- stEthLiabilityRebaseRewards: 0n,
81
- });
82
- Object.keys(res).forEach((key) => {
83
- expect(res).toHaveProperty(key);
84
- });
85
- expect(res.grossStakingRewards).toBe(0n);
86
- expect(res.grossStakingAPR).toBe(0n);
87
- expect(res.grossStakingAPR.apr_bps).toBe(0);
88
- expect(res.grossStakingAPR.apr_percent).toBe(0);
89
- });
90
- it('returns all expected fields with negative rewards', () => {
91
- const previous = makeReport({
92
- total_value_wei: '100000000000000000000',
93
- in_out_delta: '0',
94
- liability_shares: '1000',
95
- timestamp: 1000,
96
- });
97
- const current = makeReport({
98
- total_value_wei: '90000000000000000000',
99
- in_out_delta: '0',
100
- liability_shares: '1000',
101
- timestamp: 1000 + 3600,
102
- });
103
- const res = reportMetrics({
104
- reports: { current, previous },
105
- nodeOperatorFeeBP: 100n,
106
- stEthLiabilityRebaseRewards: 0n,
107
- });
108
- Object.keys(res).forEach((key) => {
109
- expect(res).toHaveProperty(key);
110
- });
111
- expect(res.grossStakingRewards).toBe(-10000000000000000000n);
112
- expect(Number(res.grossStakingAPR)).toBeLessThan(0);
113
- expect(Number(res.grossStakingAPR.apr_bps)).toBeLessThan(0);
114
- expect(Number(res.grossStakingAPR.apr_percent)).toBeLessThan(0);
115
- });
116
- it('handles very small rewards (edge case)', () => {
117
- const previous = makeReport({
118
- total_value_wei: '100000000000000000000',
119
- in_out_delta: '0',
120
- liability_shares: '1000',
121
- timestamp: 1000,
122
- });
123
- const current = makeReport({
124
- total_value_wei: '100000000000000000001', // +1 wei
125
- in_out_delta: '0',
126
- liability_shares: '1000',
127
- timestamp: 1000 + 3600,
128
- });
129
- const res = reportMetrics({
130
- reports: { current, previous },
131
- nodeOperatorFeeBP: 100n,
132
- stEthLiabilityRebaseRewards: 0n,
133
- });
134
- Object.keys(res).forEach((key) => {
135
- expect(res).toHaveProperty(key);
136
- });
137
- expect(res.grossStakingRewards).toBe(1n);
138
- expect(Number(res.grossStakingAPR.apr_percent)).toBeGreaterThanOrEqual(0);
139
- });
140
- it('handles very large values (big TVL and rewards)', () => {
141
- const previous = makeReport({
142
- total_value_wei: '100000000000000000000000000000', // 1e26
143
- in_out_delta: '0',
144
- liability_shares: '1000000000000',
145
- timestamp: 1000,
146
- });
147
- const current = makeReport({
148
- total_value_wei: '110000000000000000000000000000', // +10%
149
- in_out_delta: '0',
150
- liability_shares: '1000000000000',
151
- timestamp: 1000 + 3600,
152
- });
153
- const res = reportMetrics({
154
- reports: { current, previous },
155
- nodeOperatorFeeBP: 100n,
156
- stEthLiabilityRebaseRewards: 0n,
157
- });
158
- Object.keys(res).forEach((key) => {
159
- expect(res).toHaveProperty(key);
160
- });
161
- expect(res.grossStakingRewards).toBe(10000000000000000000000000000n);
162
- expect(Number(res.grossStakingAPR.apr_percent)).toBeGreaterThan(0);
163
- });
164
- it('handles nodeOperatorFeeBP = 0 (no operator fee)', () => {
165
- const previous = makeReport({
166
- total_value_wei: '100000000000000000000',
167
- in_out_delta: '0',
168
- liability_shares: '1000',
169
- timestamp: 1000,
170
- });
171
- const current = makeReport({
172
- total_value_wei: '110000000000000000000',
173
- in_out_delta: '0',
174
- liability_shares: '1000',
175
- timestamp: 1000 + 3600,
176
- });
177
- const res = reportMetrics({
178
- reports: { current, previous },
179
- nodeOperatorFeeBP: 0n,
180
- stEthLiabilityRebaseRewards: 0n,
181
- });
182
- expect(res.nodeOperatorRewards).toBe(0n);
183
- expect(res.netStakingRewards).toBe(res.grossStakingRewards);
184
- });
185
- it('handles nodeOperatorFeeBP = 10000 (100%)', () => {
186
- const previous = makeReport({
187
- total_value_wei: '100000000000000000000',
188
- in_out_delta: '0',
189
- liability_shares: '1000',
190
- timestamp: 1000,
191
- });
192
- const current = makeReport({
193
- total_value_wei: '110000000000000000000',
194
- in_out_delta: '0',
195
- liability_shares: '1000',
196
- timestamp: 1000 + 3600,
197
- });
198
- const res = reportMetrics({
199
- reports: { current, previous },
200
- nodeOperatorFeeBP: 10000n,
201
- stEthLiabilityRebaseRewards: 0n,
202
- });
203
- expect(res.nodeOperatorRewards).toBe(res.grossStakingRewards);
204
- expect(res.netStakingRewards).toBe(0n);
205
- });
206
- it('handles very short period (1 second)', () => {
207
- const previous = makeReport({
208
- total_value_wei: '100000000000000000000',
209
- in_out_delta: '0',
210
- liability_shares: '1000',
211
- timestamp: 1000,
212
- });
213
- const current = makeReport({
214
- total_value_wei: '110000000000000000000',
215
- in_out_delta: '0',
216
- liability_shares: '1000',
217
- timestamp: 1001,
218
- });
219
- const res = reportMetrics({
220
- reports: { current, previous },
221
- nodeOperatorFeeBP: 100n,
222
- stEthLiabilityRebaseRewards: 0n,
223
- });
224
- expect(Number(res.grossStakingAPR.apr_percent)).toBeGreaterThan(1000000); // Очень большой APR
225
- });
226
- it('handles very long period (1 year)', () => {
227
- const previous = makeReport({
228
- total_value_wei: '100000000000000000000',
229
- in_out_delta: '0',
230
- liability_shares: '1000',
231
- timestamp: 1000,
232
- });
233
- const current = makeReport({
234
- total_value_wei: '110000000000000000000',
235
- in_out_delta: '0',
236
- liability_shares: '1000',
237
- timestamp: 1000 + 31536000, // 1 год
238
- });
239
- const res = reportMetrics({
240
- reports: { current, previous },
241
- nodeOperatorFeeBP: 100n,
242
- stEthLiabilityRebaseRewards: 0n,
243
- });
244
- expect(Number(res.grossStakingAPR.apr_percent)).toBeCloseTo(10, 1); // ~10% годовых
245
- });
246
- });
247
- //# sourceMappingURL=report-statistic.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"report-statistic.test.js","sourceRoot":"","sources":["../../../tests/utils/report-statistic.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,26 +0,0 @@
1
- import { describe, test, expect, jest, beforeEach } from '@jest/globals';
2
- import { getRequiredLockByShares } from '../../utils/required-lock.js';
3
- jest.mock('contracts', () => ({
4
- getStethContract: jest.fn(() => ({
5
- read: { getPooledEthByShares: jest.fn(() => 10n) },
6
- })),
7
- getDashboardContract: jest.fn(() => ({})),
8
- getStakingVaultContract: jest.fn(() => ({})),
9
- }));
10
- jest.mock('../../utils/index.js', () => ({
11
- callReadMethodSilent: jest.fn(async () => ({
12
- liabilityShares: 1n,
13
- reserveRatioBP: 100,
14
- })),
15
- }));
16
- beforeEach(() => {
17
- jest.clearAllMocks();
18
- });
19
- describe('getRequiredLockByShares', () => {
20
- test('calculates required lock', async () => {
21
- const result = await getRequiredLockByShares('0x1', '1');
22
- expect(result).toHaveProperty('requiredLock');
23
- expect(result).toHaveProperty('currentLock');
24
- });
25
- });
26
- //# sourceMappingURL=required-lock.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"required-lock.test.js","sourceRoot":"","sources":["../../../tests/utils/required-lock.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5B,gBAAgB,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAC/B,IAAI,EAAE,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE;KACnD,CAAC,CAAC;IACH,oBAAoB,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACzC,uBAAuB,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;CAC7C,CAAC,CAAC,CAAC;AAEJ,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;IACvC,oBAAoB,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QACzC,eAAe,EAAE,EAAE;QACnB,cAAc,EAAE,GAAG;KACpB,CAAC,CAAC;CACJ,CAAC,CAAC,CAAC;AAEJ,UAAU,CAAC,GAAG,EAAE;IACd,IAAI,CAAC,aAAa,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,IAAI,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- import { Address } from 'viem';
2
- import { DashboardContract } from '../../contracts/index.js';
3
- export declare const mintSteth: (contract: DashboardContract, recipient: Address, amountOfSteth: bigint) => Promise<void>;
4
- export declare const mintShares: (contract: DashboardContract, recipient: Address, amountOfShares: bigint, method: "mintShares" | "mintWstETH") => Promise<void>;
5
- export declare const burnSteth: (contract: DashboardContract, amountOfSteth: bigint) => Promise<void>;
6
- export declare const burnShares: (contract: DashboardContract, amountOfShares: bigint, method: "burnShares" | "burnWstETH") => Promise<void>;
@@ -1,145 +0,0 @@
1
- import { callWriteMethodWithReceipt, confirmBurn } from '../index.js';
2
- import { getStethContract } from '../../contracts/index.js';
3
- import { callReadMethodSilent, fetchAndCalculateVaultHealthWithNewValue, showSpinner, confirmMint, } from '../index.js';
4
- import { checkMintingCapacity, checkLiabilityShares, confirmLock, checkIsReportFresh, } from './utils.js';
5
- export const mintSteth = async (contract, recipient, amountOfSteth) => {
6
- const stethContract = await getStethContract();
7
- const amountOfShares = await callReadMethodSilent(stethContract, 'getSharesByPooledEth', [amountOfSteth]);
8
- const isReportFresh = await checkIsReportFresh(contract);
9
- if (!isReportFresh)
10
- return;
11
- const isMintingCapacityOk = await checkMintingCapacity(contract, amountOfShares);
12
- if (!isMintingCapacityOk)
13
- return;
14
- const isConfirmedLock = await confirmLock(amountOfShares, contract.address);
15
- if (!isConfirmedLock)
16
- return;
17
- const hideSpinner = showSpinner();
18
- const { currentVaultHealth, newVaultHealth, newLiabilityShares, newLiabilitySharesInStethWei, liabilityShares, liabilitySharesInStethWei, valueInStethWei, } = await fetchAndCalculateVaultHealthWithNewValue(contract, amountOfShares, 'mint');
19
- const vault = await callReadMethodSilent(contract, 'stakingVault');
20
- hideSpinner();
21
- const confirm = await confirmMint({
22
- vaultAddress: vault,
23
- recipient,
24
- amountOfMint: amountOfShares,
25
- amountOfMintInStethWei: valueInStethWei,
26
- newLiabilityShares: newLiabilityShares,
27
- newLiabilitySharesInStethWei: newLiabilitySharesInStethWei,
28
- currentLiabilityShares: liabilityShares,
29
- currentLiabilitySharesInStethWei: liabilitySharesInStethWei,
30
- newHealthRatio: newVaultHealth.healthRatio,
31
- currentHealthRatio: currentVaultHealth.healthRatio,
32
- newIsHealthy: newVaultHealth.isHealthy,
33
- currentIsHealthy: currentVaultHealth.isHealthy,
34
- type: 'stETH',
35
- });
36
- if (!confirm)
37
- return;
38
- await callWriteMethodWithReceipt({
39
- contract,
40
- methodName: 'mintStETH',
41
- payload: [recipient, amountOfSteth],
42
- });
43
- };
44
- export const mintShares = async (contract, recipient, amountOfShares, method) => {
45
- const type = method === 'mintShares' ? 'shares' : 'wstETH';
46
- const isReportFresh = await checkIsReportFresh(contract);
47
- if (!isReportFresh)
48
- return;
49
- const isMintingCapacityOk = await checkMintingCapacity(contract, amountOfShares);
50
- if (!isMintingCapacityOk)
51
- return;
52
- const isConfirmedLock = await confirmLock(amountOfShares, contract.address);
53
- if (!isConfirmedLock)
54
- return;
55
- const hideSpinner = showSpinner();
56
- const { currentVaultHealth, newVaultHealth, newLiabilityShares, newLiabilitySharesInStethWei, liabilityShares, liabilitySharesInStethWei, valueInStethWei, } = await fetchAndCalculateVaultHealthWithNewValue(contract, amountOfShares, 'mint');
57
- const vault = await callReadMethodSilent(contract, 'stakingVault');
58
- hideSpinner();
59
- const confirm = await confirmMint({
60
- vaultAddress: vault,
61
- recipient,
62
- amountOfMint: amountOfShares,
63
- amountOfMintInStethWei: valueInStethWei,
64
- newLiabilityShares: newLiabilityShares,
65
- newLiabilitySharesInStethWei: newLiabilitySharesInStethWei,
66
- currentLiabilityShares: liabilityShares,
67
- currentLiabilitySharesInStethWei: liabilitySharesInStethWei,
68
- newHealthRatio: newVaultHealth.healthRatio,
69
- currentHealthRatio: currentVaultHealth.healthRatio,
70
- newIsHealthy: newVaultHealth.isHealthy,
71
- currentIsHealthy: currentVaultHealth.isHealthy,
72
- type,
73
- });
74
- if (!confirm)
75
- return;
76
- await callWriteMethodWithReceipt({
77
- contract,
78
- methodName: method,
79
- payload: [recipient, amountOfShares],
80
- });
81
- };
82
- export const burnSteth = async (contract, amountOfSteth) => {
83
- const stethContract = await getStethContract();
84
- const amountOfShares = await callReadMethodSilent(stethContract, 'getSharesByPooledEth', [amountOfSteth]);
85
- const isLiabilitySharesOk = await checkLiabilityShares(contract, amountOfShares);
86
- if (!isLiabilitySharesOk)
87
- return;
88
- const hideSpinner = showSpinner();
89
- const { currentVaultHealth, newVaultHealth, newLiabilityShares, newLiabilitySharesInStethWei, valueInStethWei, liabilityShares, liabilitySharesInStethWei, } = await fetchAndCalculateVaultHealthWithNewValue(contract, amountOfShares, 'burn');
90
- const vault = await callReadMethodSilent(contract, 'stakingVault');
91
- hideSpinner();
92
- const confirm = await confirmBurn({
93
- vaultAddress: vault,
94
- amountOfBurn: amountOfSteth,
95
- amountOfBurnInStethWei: valueInStethWei,
96
- newLiabilityShares: newLiabilityShares,
97
- newLiabilitySharesInStethWei: newLiabilitySharesInStethWei,
98
- currentLiabilityShares: liabilityShares,
99
- currentLiabilitySharesInStethWei: liabilitySharesInStethWei,
100
- newHealthRatio: newVaultHealth.healthRatio,
101
- currentHealthRatio: currentVaultHealth.healthRatio,
102
- newIsHealthy: newVaultHealth.isHealthy,
103
- currentIsHealthy: currentVaultHealth.isHealthy,
104
- type: 'stETH',
105
- });
106
- if (!confirm)
107
- return;
108
- await callWriteMethodWithReceipt({
109
- contract,
110
- methodName: 'burnStETH',
111
- payload: [amountOfSteth],
112
- });
113
- };
114
- export const burnShares = async (contract, amountOfShares, method) => {
115
- const type = method === 'burnShares' ? 'shares' : 'wstETH';
116
- const isLiabilitySharesOk = await checkLiabilityShares(contract, amountOfShares);
117
- if (!isLiabilitySharesOk)
118
- return;
119
- const hideSpinner = showSpinner();
120
- const { currentVaultHealth, newVaultHealth, newLiabilityShares, newLiabilitySharesInStethWei, valueInStethWei, liabilityShares, liabilitySharesInStethWei, } = await fetchAndCalculateVaultHealthWithNewValue(contract, amountOfShares, 'burn');
121
- const vault = await callReadMethodSilent(contract, 'stakingVault');
122
- hideSpinner();
123
- const confirm = await confirmBurn({
124
- vaultAddress: vault,
125
- amountOfBurn: amountOfShares,
126
- amountOfBurnInStethWei: valueInStethWei,
127
- newLiabilityShares: newLiabilityShares,
128
- newLiabilitySharesInStethWei: newLiabilitySharesInStethWei,
129
- currentLiabilityShares: liabilityShares,
130
- currentLiabilitySharesInStethWei: liabilitySharesInStethWei,
131
- newHealthRatio: newVaultHealth.healthRatio,
132
- currentHealthRatio: currentVaultHealth.healthRatio,
133
- newIsHealthy: newVaultHealth.isHealthy,
134
- currentIsHealthy: currentVaultHealth.isHealthy,
135
- type,
136
- });
137
- if (!confirm)
138
- return;
139
- await callWriteMethodWithReceipt({
140
- contract,
141
- methodName: method,
142
- payload: [amountOfShares],
143
- });
144
- };
145
- //# sourceMappingURL=dashboard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../../utils/commands/dashboard.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import { Address } from 'viem';
2
- import { DashboardContract } from '../../contracts/index.js';
3
- export declare const checkMintingCapacity: (contract: DashboardContract, amountOfShares: bigint) => Promise<boolean>;
4
- export declare const checkLiabilityShares: (contract: DashboardContract, amountOfShares: bigint) => Promise<boolean>;
5
- export declare const confirmLock: (amountOfSharesWei: bigint, dashboardAddress: Address) => Promise<boolean>;
6
- export declare const checkIsReportFresh: (contract: DashboardContract) => Promise<boolean>;
@@ -1,57 +0,0 @@
1
- import { formatEther } from 'viem';
2
- import { callReadMethodSilent, confirmOperation, logInfo, getRequiredLockByShares, logError, } from '../index.js';
3
- import { getDashboardContract, getStakingVaultContract, } from '../../contracts/index.js';
4
- import { getAccount } from '../../providers/index.js';
5
- import { submitReport } from './report.js';
6
- export const checkMintingCapacity = async (contract, amountOfShares) => {
7
- const remainingMintingCapacity = await callReadMethodSilent(contract, 'remainingMintingCapacity', [0n]);
8
- if (remainingMintingCapacity < amountOfShares) {
9
- logError(`Cannot mint more shares than the vault can mint. Mintable: ${formatEther(remainingMintingCapacity)}`);
10
- return false;
11
- }
12
- return true;
13
- };
14
- export const checkLiabilityShares = async (contract, amountOfShares) => {
15
- const liabilityShares = await callReadMethodSilent(contract, 'liabilityShares');
16
- if (amountOfShares > liabilityShares) {
17
- logError('Cannot burn more shares than the liability shares');
18
- return false;
19
- }
20
- return true;
21
- };
22
- export const confirmLock = async (amountOfSharesWei, dashboardAddress) => {
23
- const contract = getDashboardContract(dashboardAddress);
24
- const { requiredLock, currentLock } = await getRequiredLockByShares(dashboardAddress, formatEther(amountOfSharesWei));
25
- const currentWallet = getAccount();
26
- const LOCK_ROLE = await callReadMethodSilent(contract, 'LOCK_ROLE');
27
- const currentLockRoles = await callReadMethodSilent(contract, 'getRoleMembers', [LOCK_ROLE]);
28
- const isLockRole = currentLockRoles.includes(currentWallet.address);
29
- if (requiredLock > currentLock) {
30
- logInfo(`Required lock: ${formatEther(requiredLock)} shares, current lock: ${formatEther(currentLock)} shares.
31
- Auto-lock will be applied to enable minting the required number of shares. LOCK_ROLE is required.`);
32
- if (!isLockRole) {
33
- logError("You don't have a LOCK_ROLE. Please add yourself to the LOCK_ROLE.");
34
- return false;
35
- }
36
- const confirm = await confirmOperation('Do you want to continue?');
37
- if (!confirm)
38
- return confirm;
39
- }
40
- return true;
41
- };
42
- export const checkIsReportFresh = async (contract) => {
43
- const vault = await callReadMethodSilent(contract, 'stakingVault');
44
- const vaultContract = getStakingVaultContract(vault);
45
- const isReportFresh = await callReadMethodSilent(vaultContract, 'isReportFresh');
46
- if (!isReportFresh) {
47
- logInfo('The report is not fresh');
48
- const confirm = await confirmOperation('Do you want to submit a fresh report?');
49
- if (!confirm)
50
- return false;
51
- await submitReport({ vault });
52
- return true;
53
- }
54
- logInfo('The report is fresh');
55
- return isReportFresh;
56
- };
57
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../utils/commands/utils.ts"],"names":[],"mappings":"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"}
@@ -1,45 +0,0 @@
1
- import { formatEther } from 'viem';
2
- import Table from 'cli-table3';
3
- import { confirmOperation, logInfo } from '../index.js';
4
- const TABLE_PARAMS = {
5
- head: ['Type', 'Value'],
6
- colAligns: ['left', 'right', 'right'],
7
- style: { head: ['gray'], compact: true },
8
- };
9
- export const confirmMint = async (props) => {
10
- const { vaultAddress, recipient, amountOfMint, amountOfMintInStethWei, newLiabilityShares, newLiabilitySharesInStethWei, currentLiabilityShares, currentLiabilitySharesInStethWei, newHealthRatio, currentHealthRatio, newIsHealthy, currentIsHealthy, type, } = props;
11
- const amountOfMintInShares = formatEther(amountOfMint);
12
- const amountOfMintInSteth = formatEther(amountOfMintInStethWei);
13
- const isShares = type === 'shares';
14
- const isWsteth = type === 'wstETH';
15
- const value = isShares || isWsteth ? amountOfMintInShares : amountOfMintInSteth;
16
- const tableCurrent = new Table(TABLE_PARAMS);
17
- logInfo(`Current vault ${vaultAddress} health:`);
18
- tableCurrent.push(['Vault Address', vaultAddress], ['Current Liability, wei', currentLiabilityShares], ['Current Liability, Shares', formatEther(currentLiabilityShares)], ['Current Liability, stETH', formatEther(currentLiabilitySharesInStethWei)], ['Current Health Ratio', `${currentHealthRatio.toFixed(2)}%`], ['Current Is Healthy', currentIsHealthy]);
19
- console.info(tableCurrent.toString());
20
- const tableNew = new Table(TABLE_PARAMS);
21
- logInfo(`Minting ${value} ${type} to ${recipient}:`);
22
- tableNew.push(['Vault Address', vaultAddress], ['New Liability, wei', newLiabilityShares], ['New Liability, Shares', formatEther(newLiabilityShares)], ['New Liability, stETH', formatEther(newLiabilitySharesInStethWei)], ['New Health Ratio', `${newHealthRatio.toFixed(2)}%`], ['New Is Healthy', newIsHealthy]);
23
- console.info(tableNew.toString());
24
- const confirm = await confirmOperation(`Are you sure you want to mint ${value} ${type} to ${recipient}?`);
25
- return confirm;
26
- };
27
- export const confirmBurn = async (props) => {
28
- const { vaultAddress, amountOfBurn, amountOfBurnInStethWei, newLiabilityShares, newLiabilitySharesInStethWei, currentLiabilityShares, currentLiabilitySharesInStethWei, newHealthRatio, currentHealthRatio, newIsHealthy, currentIsHealthy, type, } = props;
29
- const amountOfBurnInShares = formatEther(amountOfBurn);
30
- const amountOfBurnInSteth = formatEther(amountOfBurnInStethWei);
31
- const isShares = type === 'shares';
32
- const isWsteth = type === 'wstETH';
33
- const value = isShares || isWsteth ? amountOfBurnInShares : amountOfBurnInSteth;
34
- const tableCurrent = new Table(TABLE_PARAMS);
35
- logInfo(`Current vault ${vaultAddress} health:`);
36
- tableCurrent.push(['Vault Address', vaultAddress], ['Current Liability, wei', currentLiabilityShares], ['Current Liability, Shares', formatEther(currentLiabilityShares)], ['Current Liability, stETH', formatEther(currentLiabilitySharesInStethWei)], ['Current Health Ratio', `${currentHealthRatio.toFixed(2)}%`], ['Current Is Healthy', currentIsHealthy]);
37
- console.info(tableCurrent.toString());
38
- const tableNew = new Table(TABLE_PARAMS);
39
- logInfo(`Burning ${value} ${type} for ${vaultAddress}:`);
40
- tableNew.push(['Vault Address', vaultAddress], ['New Liability, wei', newLiabilityShares], ['New Liability, Shares', formatEther(newLiabilityShares)], ['New Liability, stETH', formatEther(newLiabilitySharesInStethWei)], ['New Health Ratio', `${newHealthRatio.toFixed(2)}%`], ['New Is Healthy', newIsHealthy]);
41
- console.info(tableNew.toString());
42
- const confirm = await confirmOperation(`Are you sure you want to burn ${value} ${type} for ${vaultAddress}?`);
43
- return confirm;
44
- };
45
- //# sourceMappingURL=dashboard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../../utils/prompts/dashboard.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { Hex } from 'viem';
2
- import { LeafDataFields } from '../index.js';
3
- export declare const DOUBLE_HASH: (data: Hex) => Hex;
4
- export declare const hashNode: (a: Hex, b: Hex) => Hex;
5
- export declare const getReportLeaf: (input: LeafDataFields) => Hex;
@@ -1,26 +0,0 @@
1
- import { encodeAbiParameters, keccak256, concatHex } from 'viem';
2
- export const DOUBLE_HASH = (data) => keccak256(keccak256(data));
3
- export const hashNode = (a, b) => {
4
- const [left, right] = a < b ? [a, b] : [b, a];
5
- return keccak256(concatHex([left, right]));
6
- };
7
- const encoding = [
8
- { type: 'address', name: 'vault_address' },
9
- { type: 'uint256', name: 'total_value_wei' },
10
- { type: 'uint256', name: 'in_out_delta' },
11
- { type: 'uint256', name: 'fee' },
12
- { type: 'uint256', name: 'liability_shares' },
13
- ];
14
- const getLeafInput = (vault) => [
15
- vault.vault_address,
16
- BigInt(vault.total_value_wei),
17
- BigInt(vault.in_out_delta),
18
- BigInt(vault.fee),
19
- BigInt(vault.liability_shares),
20
- ];
21
- export const getReportLeaf = (input) => {
22
- const encoded = encodeAbiParameters(encoding, getLeafInput(input));
23
- const leaf = DOUBLE_HASH(encoded);
24
- return leaf;
25
- };
26
- //# sourceMappingURL=report-proof.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"report-proof.js","sourceRoot":"","sources":["../../../utils/proof/report-proof.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAO,SAAS,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAGtE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAS,EAAO,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1E,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAM,EAAE,CAAM,EAAO,EAAE;IAC9C,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9C,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG;IACf,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE;IAC1C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE;IAC5C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE;IACzC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE;IAChC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,EAAE;CAC9C,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAqB,EAAE,EAAE,CAAC;IAC9C,KAAK,CAAC,aAAa;IACnB,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;IAC7B,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC;IAC1B,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;IACjB,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAqB,EAAO,EAAE;IAC1D,MAAM,OAAO,GAAG,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}