@lidofinance/lsv-cli 1.0.0 → 1.2.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 (499) hide show
  1. package/dist/abi/AccessControlConfirmable.d.ts +3 -2
  2. package/dist/abi/AccessControlConfirmable.js +3 -1
  3. package/dist/abi/AccessControlConfirmable.js.map +1 -1
  4. package/dist/abi/Dashboard.d.ts +87 -30
  5. package/dist/abi/Dashboard.js +46 -32
  6. package/dist/abi/Dashboard.js.map +1 -1
  7. package/dist/abi/LazyOracle.d.ts +408 -3
  8. package/dist/abi/LazyOracle.js +59 -3
  9. package/dist/abi/LazyOracle.js.map +1 -1
  10. package/dist/abi/OperatorGrid.d.ts +52 -0
  11. package/dist/abi/OperatorGrid.js +16 -0
  12. package/dist/abi/OperatorGrid.js.map +1 -1
  13. package/dist/abi/PredepositGuarantee.d.ts +28 -0
  14. package/dist/abi/StakingVault.d.ts +56 -0
  15. package/dist/abi/StakingVault.js +2 -0
  16. package/dist/abi/StakingVault.js.map +1 -1
  17. package/dist/abi/ValidatorConsolidationRequests.d.ts +121 -0
  18. package/dist/abi/ValidatorConsolidationRequests.js +159 -0
  19. package/dist/abi/ValidatorConsolidationRequests.js.map +1 -0
  20. package/dist/abi/VaultFactory.d.ts +48 -4
  21. package/dist/abi/VaultHub.d.ts +38 -0
  22. package/dist/abi/VaultHub.js +13 -0
  23. package/dist/abi/VaultHub.js.map +1 -1
  24. package/dist/abi/VaultViewer.d.ts +130 -196
  25. package/dist/abi/VaultViewer.js +169 -257
  26. package/dist/abi/VaultViewer.js.map +1 -1
  27. package/dist/abi/defi-wrapper/Distributor.d.ts +486 -0
  28. package/dist/abi/defi-wrapper/Distributor.js +633 -0
  29. package/dist/abi/defi-wrapper/Distributor.js.map +1 -0
  30. package/dist/abi/defi-wrapper/Factory.d.ts +1184 -0
  31. package/dist/abi/defi-wrapper/Factory.js +932 -0
  32. package/dist/abi/defi-wrapper/Factory.js.map +1 -0
  33. package/dist/abi/defi-wrapper/StvPool.d.ts +1079 -0
  34. package/dist/abi/defi-wrapper/StvPool.js +1410 -0
  35. package/dist/abi/defi-wrapper/StvPool.js.map +1 -0
  36. package/dist/abi/defi-wrapper/StvStETHPool.d.ts +1772 -0
  37. package/dist/abi/defi-wrapper/StvStETHPool.js +2316 -0
  38. package/dist/abi/defi-wrapper/StvStETHPool.js.map +1 -0
  39. package/dist/abi/defi-wrapper/WithdrawalQueue.d.ts +1265 -0
  40. package/dist/abi/defi-wrapper/WithdrawalQueue.js +1647 -0
  41. package/dist/abi/defi-wrapper/WithdrawalQueue.js.map +1 -0
  42. package/dist/abi/defi-wrapper/index.d.ts +5 -0
  43. package/dist/abi/defi-wrapper/index.js +6 -0
  44. package/dist/abi/defi-wrapper/index.js.map +1 -0
  45. package/dist/abi/index.d.ts +1 -0
  46. package/dist/abi/index.js +1 -0
  47. package/dist/abi/index.js.map +1 -1
  48. package/dist/configs/constants.d.ts +44 -2
  49. package/dist/configs/constants.js +2 -2
  50. package/dist/configs/constants.js.map +1 -1
  51. package/dist/configs/deployed.d.ts +2 -2
  52. package/dist/configs/deployed.js +48 -6
  53. package/dist/configs/deployed.js.map +1 -1
  54. package/dist/configs/utils.d.ts +2 -0
  55. package/dist/configs/utils.js +12 -0
  56. package/dist/configs/utils.js.map +1 -1
  57. package/dist/contracts/dashboard-impl.d.ts +4 -0
  58. package/dist/contracts/dashboard-impl.js +17 -0
  59. package/dist/contracts/dashboard-impl.js.map +1 -0
  60. package/dist/contracts/dashboard.d.ts +2 -2
  61. package/dist/contracts/dashboard.js +3 -2
  62. package/dist/contracts/dashboard.js.map +1 -1
  63. package/dist/contracts/defi-wrapper/distributor.d.ts +4 -0
  64. package/dist/contracts/defi-wrapper/distributor.js +12 -0
  65. package/dist/contracts/defi-wrapper/distributor.js.map +1 -0
  66. package/dist/contracts/defi-wrapper/factory.d.ts +4 -0
  67. package/dist/contracts/defi-wrapper/factory.js +12 -0
  68. package/dist/contracts/defi-wrapper/factory.js.map +1 -0
  69. package/dist/contracts/defi-wrapper/index.d.ts +5 -0
  70. package/dist/contracts/defi-wrapper/index.js +6 -0
  71. package/dist/contracts/defi-wrapper/index.js.map +1 -0
  72. package/dist/contracts/defi-wrapper/stv-pool.d.ts +4 -0
  73. package/dist/contracts/defi-wrapper/stv-pool.js +12 -0
  74. package/dist/contracts/defi-wrapper/stv-pool.js.map +1 -0
  75. package/dist/contracts/defi-wrapper/stv-steth-pool.d.ts +4 -0
  76. package/dist/contracts/defi-wrapper/stv-steth-pool.js +12 -0
  77. package/dist/contracts/defi-wrapper/stv-steth-pool.js.map +1 -0
  78. package/dist/contracts/defi-wrapper/withdrawal-queue.d.ts +4 -0
  79. package/dist/contracts/defi-wrapper/withdrawal-queue.js +12 -0
  80. package/dist/contracts/defi-wrapper/withdrawal-queue.js.map +1 -0
  81. package/dist/contracts/index.d.ts +2 -0
  82. package/dist/contracts/index.js +2 -0
  83. package/dist/contracts/index.js.map +1 -1
  84. package/dist/contracts/lazy-oracle.js +3 -2
  85. package/dist/contracts/lazy-oracle.js.map +1 -1
  86. package/dist/contracts/locator.d.ts +3 -9655
  87. package/dist/contracts/locator.js +4 -3
  88. package/dist/contracts/locator.js.map +1 -1
  89. package/dist/contracts/operator-grid.d.ts +1 -1
  90. package/dist/contracts/operator-grid.js +3 -2
  91. package/dist/contracts/operator-grid.js.map +1 -1
  92. package/dist/contracts/pdg.js +3 -2
  93. package/dist/contracts/pdg.js.map +1 -1
  94. package/dist/contracts/steth.d.ts +54 -54
  95. package/dist/contracts/steth.js +3 -2
  96. package/dist/contracts/steth.js.map +1 -1
  97. package/dist/contracts/validator-consolidation-requests.d.ts +5 -0
  98. package/dist/contracts/validator-consolidation-requests.js +13 -0
  99. package/dist/contracts/validator-consolidation-requests.js.map +1 -0
  100. package/dist/contracts/vault-factory.d.ts +3 -27674
  101. package/dist/contracts/vault-factory.js +4 -3
  102. package/dist/contracts/vault-factory.js.map +1 -1
  103. package/dist/contracts/vault-hub.js +3 -2
  104. package/dist/contracts/vault-hub.js.map +1 -1
  105. package/dist/contracts/vault-viewer.d.ts +3 -11789
  106. package/dist/contracts/vault-viewer.js +9 -7
  107. package/dist/contracts/vault-viewer.js.map +1 -1
  108. package/dist/contracts/vault.d.ts +2 -2
  109. package/dist/contracts/vault.js +3 -2
  110. package/dist/contracts/vault.js.map +1 -1
  111. package/dist/contracts/wsteth.d.ts +3 -24690
  112. package/dist/contracts/wsteth.js +4 -3
  113. package/dist/contracts/wsteth.js.map +1 -1
  114. package/dist/features/consolidation.d.ts +18 -0
  115. package/dist/features/consolidation.js +199 -0
  116. package/dist/features/consolidation.js.map +1 -0
  117. package/dist/features/defi-wrapper/create-vault.d.ts +17 -0
  118. package/dist/features/defi-wrapper/create-vault.js +137 -0
  119. package/dist/features/defi-wrapper/create-vault.js.map +1 -0
  120. package/dist/features/defi-wrapper/defi-wrapper-factory.d.ts +112 -0
  121. package/dist/features/defi-wrapper/defi-wrapper-factory.js +228 -0
  122. package/dist/features/defi-wrapper/defi-wrapper-factory.js.map +1 -0
  123. package/dist/features/defi-wrapper/index.d.ts +3 -0
  124. package/dist/features/defi-wrapper/index.js +4 -0
  125. package/dist/features/defi-wrapper/index.js.map +1 -0
  126. package/dist/features/defi-wrapper/pool-info.d.ts +35 -0
  127. package/dist/features/defi-wrapper/pool-info.js +97 -0
  128. package/dist/features/defi-wrapper/pool-info.js.map +1 -0
  129. package/dist/features/deposits/check-bls-deposits.d.ts +2 -1
  130. package/dist/features/deposits/check-bls-deposits.js +11 -2
  131. package/dist/features/deposits/check-bls-deposits.js.map +1 -1
  132. package/dist/features/deposits/index.d.ts +1 -0
  133. package/dist/features/deposits/index.js +1 -0
  134. package/dist/features/deposits/index.js.map +1 -1
  135. package/dist/features/deposits/make-pdg-proof.d.ts +8 -0
  136. package/dist/features/deposits/make-pdg-proof.js +17 -1
  137. package/dist/features/deposits/make-pdg-proof.js.map +1 -1
  138. package/dist/features/deposits/no-pdg.d.ts +1 -1
  139. package/dist/features/deposits/no-pdg.js +6 -3
  140. package/dist/features/deposits/no-pdg.js.map +1 -1
  141. package/dist/features/deposits/pdg.d.ts +2 -0
  142. package/dist/features/deposits/pdg.js +18 -0
  143. package/dist/features/deposits/pdg.js.map +1 -0
  144. package/dist/features/dev-tools/impersonate.d.ts +14 -0
  145. package/dist/features/dev-tools/impersonate.js +64 -0
  146. package/dist/features/dev-tools/impersonate.js.map +1 -0
  147. package/dist/features/dev-tools/index.d.ts +1 -0
  148. package/dist/features/dev-tools/index.js +2 -0
  149. package/dist/features/dev-tools/index.js.map +1 -0
  150. package/dist/features/index.d.ts +4 -0
  151. package/dist/features/index.js +4 -0
  152. package/dist/features/index.js.map +1 -1
  153. package/dist/features/metrics.d.ts +4 -0
  154. package/dist/features/metrics.js +48 -0
  155. package/dist/features/metrics.js.map +1 -0
  156. package/dist/features/mint-burn/allowance.js +1 -1
  157. package/dist/features/mint-burn/allowance.js.map +1 -1
  158. package/dist/features/pdg.d.ts +7 -0
  159. package/dist/features/pdg.js +9 -5
  160. package/dist/features/pdg.js.map +1 -1
  161. package/dist/features/utils/get-boolean.d.ts +1 -0
  162. package/dist/features/utils/get-boolean.js +13 -0
  163. package/dist/features/utils/get-boolean.js.map +1 -0
  164. package/dist/features/utils/index.d.ts +1 -0
  165. package/dist/features/utils/index.js +1 -0
  166. package/dist/features/utils/index.js.map +1 -1
  167. package/dist/features/utils/quarantine.d.ts +2 -0
  168. package/dist/features/utils/quarantine.js +2 -0
  169. package/dist/features/utils/quarantine.js.map +1 -1
  170. package/dist/features/utils/report-fresh.js +19 -3
  171. package/dist/features/utils/report-fresh.js.map +1 -1
  172. package/dist/features/vault-factory.d.ts +2 -2
  173. package/dist/features/vault-factory.js +8 -3
  174. package/dist/features/vault-factory.js.map +1 -1
  175. package/dist/features/vault-operations/create-vault.d.ts +4 -2
  176. package/dist/features/vault-operations/create-vault.js +13 -5
  177. package/dist/features/vault-operations/create-vault.js.map +1 -1
  178. package/dist/features/vault-operations/dashboard-by-vault.js +4 -4
  179. package/dist/features/vault-operations/dashboard-by-vault.js.map +1 -1
  180. package/dist/features/vault-operations/vault-info.js +2 -2
  181. package/dist/features/vault-operations/vault-info.js.map +1 -1
  182. package/dist/features/vault-operations/vault-overview.js +10 -12
  183. package/dist/features/vault-operations/vault-overview.js.map +1 -1
  184. package/dist/features/vault-operations/vault-roles.d.ts +2 -1
  185. package/dist/features/vault-operations/vault-roles.js +25 -23
  186. package/dist/features/vault-operations/vault-roles.js.map +1 -1
  187. package/dist/features/vault-operations/vaults-by-role.d.ts +5 -0
  188. package/dist/features/vault-operations/vaults-by-role.js +123 -36
  189. package/dist/features/vault-operations/vaults-by-role.js.map +1 -1
  190. package/dist/features/vault.js +4 -2
  191. package/dist/features/vault.js.map +1 -1
  192. package/dist/index.js +13 -4
  193. package/dist/index.js.map +1 -1
  194. package/dist/programs/account/read.js +1 -1
  195. package/dist/programs/account/read.js.map +1 -1
  196. package/dist/programs/account/write.js +14 -0
  197. package/dist/programs/account/write.js.map +1 -1
  198. package/dist/programs/contracts/dashboard/config.js +4 -0
  199. package/dist/programs/contracts/dashboard/config.js.map +1 -1
  200. package/dist/programs/contracts/dashboard/read.js +7 -7
  201. package/dist/programs/contracts/dashboard/read.js.map +1 -1
  202. package/dist/programs/contracts/dashboard/write.js +85 -61
  203. package/dist/programs/contracts/dashboard/write.js.map +1 -1
  204. package/dist/programs/contracts/hub/config.js +0 -10
  205. package/dist/programs/contracts/hub/config.js.map +1 -1
  206. package/dist/programs/contracts/hub/read.js +63 -2
  207. package/dist/programs/contracts/hub/read.js.map +1 -1
  208. package/dist/programs/contracts/hub/write.js +1 -1
  209. package/dist/programs/contracts/hub/write.js.map +1 -1
  210. package/dist/programs/contracts/lazy-oracle/config.js +33 -0
  211. package/dist/programs/contracts/lazy-oracle/config.js.map +1 -1
  212. package/dist/programs/contracts/operator-grid/write.js +2 -75
  213. package/dist/programs/contracts/operator-grid/write.js.map +1 -1
  214. package/dist/programs/contracts/pdg/read.js +4 -6
  215. package/dist/programs/contracts/pdg/read.js.map +1 -1
  216. package/dist/programs/contracts/pdg/write.js +76 -10
  217. package/dist/programs/contracts/pdg/write.js.map +1 -1
  218. package/dist/programs/contracts/vault/write.js +34 -23
  219. package/dist/programs/contracts/vault/write.js.map +1 -1
  220. package/dist/programs/contracts/vault-factory/write.js +25 -15
  221. package/dist/programs/contracts/vault-factory/write.js.map +1 -1
  222. package/dist/programs/contracts/vault-viewer/config.js +102 -59
  223. package/dist/programs/contracts/vault-viewer/config.js.map +1 -1
  224. package/dist/programs/contracts/vault-viewer/read.js +22 -76
  225. package/dist/programs/contracts/vault-viewer/read.js.map +1 -1
  226. package/dist/programs/defi-wrapper/contracts/distributor/config.d.ts +3 -0
  227. package/dist/programs/defi-wrapper/contracts/distributor/config.js +44 -0
  228. package/dist/programs/defi-wrapper/contracts/distributor/config.js.map +1 -0
  229. package/dist/programs/defi-wrapper/contracts/distributor/index.d.ts +3 -0
  230. package/dist/programs/defi-wrapper/contracts/distributor/index.js +4 -0
  231. package/dist/programs/defi-wrapper/contracts/distributor/index.js.map +1 -0
  232. package/dist/programs/defi-wrapper/contracts/distributor/main.d.ts +1 -0
  233. package/dist/programs/defi-wrapper/contracts/distributor/main.js +5 -0
  234. package/dist/programs/defi-wrapper/contracts/distributor/main.js.map +1 -0
  235. package/dist/programs/defi-wrapper/contracts/distributor/read.d.ts +1 -0
  236. package/dist/programs/defi-wrapper/contracts/distributor/read.js +40 -0
  237. package/dist/programs/defi-wrapper/contracts/distributor/read.js.map +1 -0
  238. package/dist/programs/defi-wrapper/contracts/distributor/write.d.ts +1 -0
  239. package/dist/programs/defi-wrapper/contracts/distributor/write.js +70 -0
  240. package/dist/programs/defi-wrapper/contracts/distributor/write.js.map +1 -0
  241. package/dist/programs/defi-wrapper/contracts/factory/config.d.ts +3 -0
  242. package/dist/programs/defi-wrapper/contracts/factory/config.js +2 -0
  243. package/dist/programs/defi-wrapper/contracts/factory/config.js.map +1 -0
  244. package/dist/programs/defi-wrapper/contracts/factory/index.d.ts +3 -0
  245. package/dist/programs/defi-wrapper/contracts/factory/index.js +4 -0
  246. package/dist/programs/defi-wrapper/contracts/factory/index.js.map +1 -0
  247. package/dist/programs/defi-wrapper/contracts/factory/main.d.ts +1 -0
  248. package/dist/programs/defi-wrapper/contracts/factory/main.js +6 -0
  249. package/dist/programs/defi-wrapper/contracts/factory/main.js.map +1 -0
  250. package/dist/programs/defi-wrapper/contracts/factory/read.d.ts +1 -0
  251. package/dist/programs/defi-wrapper/contracts/factory/read.js +50 -0
  252. package/dist/programs/defi-wrapper/contracts/factory/read.js.map +1 -0
  253. package/dist/programs/defi-wrapper/contracts/factory/write.d.ts +1 -0
  254. package/dist/programs/defi-wrapper/contracts/factory/write.js +144 -0
  255. package/dist/programs/defi-wrapper/contracts/factory/write.js.map +1 -0
  256. package/dist/programs/defi-wrapper/contracts/index.d.ts +6 -0
  257. package/dist/programs/defi-wrapper/contracts/index.js +7 -0
  258. package/dist/programs/defi-wrapper/contracts/index.js.map +1 -0
  259. package/dist/programs/defi-wrapper/contracts/main.d.ts +1 -0
  260. package/dist/programs/defi-wrapper/contracts/main.js +6 -0
  261. package/dist/programs/defi-wrapper/contracts/main.js.map +1 -0
  262. package/dist/programs/defi-wrapper/contracts/stv-pool/config.d.ts +3 -0
  263. package/dist/programs/defi-wrapper/contracts/stv-pool/config.js +73 -0
  264. package/dist/programs/defi-wrapper/contracts/stv-pool/config.js.map +1 -0
  265. package/dist/programs/defi-wrapper/contracts/stv-pool/index.d.ts +3 -0
  266. package/dist/programs/defi-wrapper/contracts/stv-pool/index.js +4 -0
  267. package/dist/programs/defi-wrapper/contracts/stv-pool/index.js.map +1 -0
  268. package/dist/programs/defi-wrapper/contracts/stv-pool/main.d.ts +1 -0
  269. package/dist/programs/defi-wrapper/contracts/stv-pool/main.js +6 -0
  270. package/dist/programs/defi-wrapper/contracts/stv-pool/main.js.map +1 -0
  271. package/dist/programs/defi-wrapper/contracts/stv-pool/read.d.ts +1 -0
  272. package/dist/programs/defi-wrapper/contracts/stv-pool/read.js +70 -0
  273. package/dist/programs/defi-wrapper/contracts/stv-pool/read.js.map +1 -0
  274. package/dist/programs/defi-wrapper/contracts/stv-pool/write.d.ts +1 -0
  275. package/dist/programs/defi-wrapper/contracts/stv-pool/write.js +138 -0
  276. package/dist/programs/defi-wrapper/contracts/stv-pool/write.js.map +1 -0
  277. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.d.ts +3 -0
  278. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js +120 -0
  279. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js.map +1 -0
  280. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.d.ts +3 -0
  281. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.js +4 -0
  282. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.js.map +1 -0
  283. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.d.ts +1 -0
  284. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.js +6 -0
  285. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.js.map +1 -0
  286. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.d.ts +1 -0
  287. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js +70 -0
  288. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js.map +1 -0
  289. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.d.ts +1 -0
  290. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js +173 -0
  291. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js.map +1 -0
  292. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.d.ts +3 -0
  293. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js +66 -0
  294. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js.map +1 -0
  295. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.d.ts +3 -0
  296. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.js +4 -0
  297. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.js.map +1 -0
  298. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.d.ts +1 -0
  299. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.js +6 -0
  300. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.js.map +1 -0
  301. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.d.ts +1 -0
  302. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js +65 -0
  303. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js.map +1 -0
  304. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.d.ts +1 -0
  305. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js +171 -0
  306. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js.map +1 -0
  307. package/dist/programs/defi-wrapper/index.d.ts +3 -0
  308. package/dist/programs/defi-wrapper/index.js +4 -0
  309. package/dist/programs/defi-wrapper/index.js.map +1 -0
  310. package/dist/programs/defi-wrapper/main.d.ts +1 -0
  311. package/dist/programs/defi-wrapper/main.js +6 -0
  312. package/dist/programs/defi-wrapper/main.js.map +1 -0
  313. package/dist/programs/defi-wrapper/use-cases/health/index.d.ts +3 -0
  314. package/dist/programs/defi-wrapper/use-cases/health/index.js +4 -0
  315. package/dist/programs/defi-wrapper/use-cases/health/index.js.map +1 -0
  316. package/dist/programs/defi-wrapper/use-cases/health/main.d.ts +1 -0
  317. package/dist/programs/defi-wrapper/use-cases/health/main.js +6 -0
  318. package/dist/programs/defi-wrapper/use-cases/health/main.js.map +1 -0
  319. package/dist/programs/defi-wrapper/use-cases/health/read.d.ts +1 -0
  320. package/dist/programs/defi-wrapper/use-cases/health/read.js +338 -0
  321. package/dist/programs/defi-wrapper/use-cases/health/read.js.map +1 -0
  322. package/dist/programs/defi-wrapper/use-cases/health/utils.d.ts +56 -0
  323. package/dist/programs/defi-wrapper/use-cases/health/utils.js +389 -0
  324. package/dist/programs/defi-wrapper/use-cases/health/utils.js.map +1 -0
  325. package/dist/programs/defi-wrapper/use-cases/health/write.d.ts +1 -0
  326. package/dist/programs/defi-wrapper/use-cases/health/write.js +254 -0
  327. package/dist/programs/defi-wrapper/use-cases/health/write.js.map +1 -0
  328. package/dist/programs/defi-wrapper/use-cases/index.d.ts +3 -0
  329. package/dist/programs/defi-wrapper/use-cases/index.js +4 -0
  330. package/dist/programs/defi-wrapper/use-cases/index.js.map +1 -0
  331. package/dist/programs/defi-wrapper/use-cases/main.d.ts +1 -0
  332. package/dist/programs/defi-wrapper/use-cases/main.js +6 -0
  333. package/dist/programs/defi-wrapper/use-cases/main.js.map +1 -0
  334. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.d.ts +1 -0
  335. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.js +143 -0
  336. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.js.map +1 -0
  337. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.d.ts +3 -0
  338. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.js +5 -0
  339. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.js.map +1 -0
  340. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.d.ts +1 -0
  341. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.js +6 -0
  342. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.js.map +1 -0
  343. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.d.ts +1 -0
  344. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.js +130 -0
  345. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.js.map +1 -0
  346. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.d.ts +1 -0
  347. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.js +13 -0
  348. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.js.map +1 -0
  349. package/dist/programs/dev-tools/anvil/index.d.ts +2 -0
  350. package/dist/programs/dev-tools/anvil/index.js +3 -0
  351. package/dist/programs/dev-tools/anvil/index.js.map +1 -0
  352. package/dist/programs/dev-tools/anvil/main.d.ts +1 -0
  353. package/dist/programs/dev-tools/anvil/main.js +5 -0
  354. package/dist/programs/dev-tools/anvil/main.js.map +1 -0
  355. package/dist/programs/dev-tools/anvil/write.d.ts +1 -0
  356. package/dist/programs/dev-tools/anvil/write.js +122 -0
  357. package/dist/programs/dev-tools/anvil/write.js.map +1 -0
  358. package/dist/programs/dev-tools/defi-wrapper/index.d.ts +2 -0
  359. package/dist/programs/dev-tools/defi-wrapper/index.js +3 -0
  360. package/dist/programs/dev-tools/defi-wrapper/index.js.map +1 -0
  361. package/dist/programs/dev-tools/defi-wrapper/main.d.ts +1 -0
  362. package/dist/programs/dev-tools/defi-wrapper/main.js +6 -0
  363. package/dist/programs/dev-tools/defi-wrapper/main.js.map +1 -0
  364. package/dist/programs/dev-tools/defi-wrapper/write.d.ts +1 -0
  365. package/dist/programs/dev-tools/defi-wrapper/write.js +77 -0
  366. package/dist/programs/dev-tools/defi-wrapper/write.js.map +1 -0
  367. package/dist/programs/dev-tools/index.d.ts +3 -0
  368. package/dist/programs/dev-tools/index.js +4 -0
  369. package/dist/programs/dev-tools/index.js.map +1 -0
  370. package/dist/programs/dev-tools/main.d.ts +1 -0
  371. package/dist/programs/dev-tools/main.js +6 -0
  372. package/dist/programs/dev-tools/main.js.map +1 -0
  373. package/dist/programs/index.d.ts +2 -0
  374. package/dist/programs/index.js +2 -0
  375. package/dist/programs/index.js.map +1 -1
  376. package/dist/programs/pdg-helpers.js +22 -18
  377. package/dist/programs/pdg-helpers.js.map +1 -1
  378. package/dist/programs/use-cases/consolidation/index.d.ts +2 -0
  379. package/dist/programs/use-cases/consolidation/index.js +3 -0
  380. package/dist/programs/use-cases/consolidation/index.js.map +1 -0
  381. package/dist/programs/use-cases/consolidation/main.d.ts +1 -0
  382. package/dist/programs/use-cases/consolidation/main.js +5 -0
  383. package/dist/programs/use-cases/consolidation/main.js.map +1 -0
  384. package/dist/programs/use-cases/consolidation/write.d.ts +1 -0
  385. package/dist/programs/use-cases/consolidation/write.js +78 -0
  386. package/dist/programs/use-cases/consolidation/write.js.map +1 -0
  387. package/dist/programs/use-cases/deposits/read.js +8 -4
  388. package/dist/programs/use-cases/deposits/read.js.map +1 -1
  389. package/dist/programs/use-cases/deposits/write.js +141 -16
  390. package/dist/programs/use-cases/deposits/write.js.map +1 -1
  391. package/dist/programs/use-cases/index.d.ts +1 -0
  392. package/dist/programs/use-cases/index.js +1 -0
  393. package/dist/programs/use-cases/index.js.map +1 -1
  394. package/dist/programs/use-cases/metrics/read.js +38 -33
  395. package/dist/programs/use-cases/metrics/read.js.map +1 -1
  396. package/dist/programs/use-cases/report/write.js +3 -0
  397. package/dist/programs/use-cases/report/write.js.map +1 -1
  398. package/dist/programs/use-cases/vault-operations/create-vault.js +13 -7
  399. package/dist/programs/use-cases/vault-operations/create-vault.js.map +1 -1
  400. package/dist/providers/wallet.d.ts +6986 -171
  401. package/dist/providers/wallet.js +15 -5
  402. package/dist/providers/wallet.js.map +1 -1
  403. package/dist/tests/utils/bigInt.test.d.ts +1 -0
  404. package/dist/tests/utils/bigInt.test.js +61 -0
  405. package/dist/tests/utils/bigInt.test.js.map +1 -0
  406. package/dist/types/config.d.ts +1 -0
  407. package/dist/utils/arguments.d.ts +8 -0
  408. package/dist/utils/arguments.js +56 -4
  409. package/dist/utils/arguments.js.map +1 -1
  410. package/dist/utils/bigInt.d.ts +2 -0
  411. package/dist/utils/bigInt.js +3 -0
  412. package/dist/utils/bigInt.js.map +1 -0
  413. package/dist/utils/bls.d.ts +2 -2
  414. package/dist/utils/bls.js +8 -7
  415. package/dist/utils/bls.js.map +1 -1
  416. package/dist/utils/cache.d.ts +30 -0
  417. package/dist/utils/cache.js +140 -3
  418. package/dist/utils/cache.js.map +1 -1
  419. package/dist/utils/calculate-overview-v2.js +1 -2
  420. package/dist/utils/calculate-overview-v2.js.map +1 -1
  421. package/dist/utils/calculate-overview.js +1 -2
  422. package/dist/utils/calculate-overview.js.map +1 -1
  423. package/dist/utils/charts/blessed/charts-apr.js +8 -18
  424. package/dist/utils/charts/blessed/charts-apr.js.map +1 -1
  425. package/dist/utils/charts/blessed/charts-rewards.js +7 -17
  426. package/dist/utils/charts/blessed/charts-rewards.js.map +1 -1
  427. package/dist/utils/charts/blessed/datasets/prepare-metrics.d.ts +5 -5
  428. package/dist/utils/charts/blessed/datasets/prepare-metrics.js +11 -11
  429. package/dist/utils/charts/blessed/datasets/prepare-metrics.js.map +1 -1
  430. package/dist/utils/charts/simple/simple-charts.js +8 -18
  431. package/dist/utils/charts/simple/simple-charts.js.map +1 -1
  432. package/dist/utils/commands/confirmations.js +1 -1
  433. package/dist/utils/commands/confirmations.js.map +1 -1
  434. package/dist/utils/commands/report.d.ts +1 -1
  435. package/dist/utils/commands/report.js +3 -2
  436. package/dist/utils/commands/report.js.map +1 -1
  437. package/dist/utils/consolidation/checks.d.ts +7 -0
  438. package/dist/utils/consolidation/checks.js +40 -0
  439. package/dist/utils/consolidation/checks.js.map +1 -0
  440. package/dist/utils/consolidation/confirms.d.ts +4 -0
  441. package/dist/utils/consolidation/confirms.js +41 -0
  442. package/dist/utils/consolidation/confirms.js.map +1 -0
  443. package/dist/utils/consolidation/index.d.ts +6 -0
  444. package/dist/utils/consolidation/index.js +7 -0
  445. package/dist/utils/consolidation/index.js.map +1 -0
  446. package/dist/utils/consolidation/logs.d.ts +3 -0
  447. package/dist/utils/consolidation/logs.js +41 -0
  448. package/dist/utils/consolidation/logs.js.map +1 -0
  449. package/dist/utils/consolidation/pubkeys.d.ts +8 -0
  450. package/dist/utils/consolidation/pubkeys.js +40 -0
  451. package/dist/utils/consolidation/pubkeys.js.map +1 -0
  452. package/dist/utils/consolidation/types.d.ts +11 -0
  453. package/dist/utils/consolidation/types.js +2 -0
  454. package/dist/utils/consolidation/types.js.map +1 -0
  455. package/dist/utils/consolidation/validator-info.d.ts +4 -0
  456. package/dist/utils/consolidation/validator-info.js +34 -0
  457. package/dist/utils/consolidation/validator-info.js.map +1 -0
  458. package/dist/utils/consolidation/validators-checks.d.ts +10 -0
  459. package/dist/utils/consolidation/validators-checks.js +58 -0
  460. package/dist/utils/consolidation/validators-checks.js.map +1 -0
  461. package/dist/utils/fetchCL.d.ts +36 -19
  462. package/dist/utils/fetchCL.js +82 -11
  463. package/dist/utils/fetchCL.js.map +1 -1
  464. package/dist/utils/health/health-utils.d.ts +54 -54
  465. package/dist/utils/health/health-utils.js +1 -1
  466. package/dist/utils/health/health-utils.js.map +1 -1
  467. package/dist/utils/index.d.ts +1 -0
  468. package/dist/utils/index.js +1 -0
  469. package/dist/utils/index.js.map +1 -1
  470. package/dist/utils/proof/constants.d.ts +6 -0
  471. package/dist/utils/proof/constants.js +7 -0
  472. package/dist/utils/proof/constants.js.map +1 -0
  473. package/dist/utils/proof/first-validator-gindex.js +0 -4
  474. package/dist/utils/proof/first-validator-gindex.js.map +1 -1
  475. package/dist/utils/proof/proofs.d.ts +7 -8
  476. package/dist/utils/proof/proofs.js +36 -28
  477. package/dist/utils/proof/proofs.js.map +1 -1
  478. package/dist/utils/read-programs-by-abi.d.ts +1 -1
  479. package/dist/utils/read-programs-by-abi.js +4 -18
  480. package/dist/utils/read-programs-by-abi.js.map +1 -1
  481. package/dist/utils/report/report.js +1 -1
  482. package/dist/utils/report/report.js.map +1 -1
  483. package/dist/utils/report/statistic-data.js +3 -3
  484. package/dist/utils/report/statistic-data.js.map +1 -1
  485. package/dist/utils/statistic/report-statistic.d.ts +6 -5
  486. package/dist/utils/statistic/report-statistic.js +15 -16
  487. package/dist/utils/statistic/report-statistic.js.map +1 -1
  488. package/dist/utils/transactions/tx-private-key.d.ts +2 -2
  489. package/dist/utils/transactions/tx-private-key.js +14 -9
  490. package/dist/utils/transactions/tx-private-key.js.map +1 -1
  491. package/dist/utils/transactions/tx-wc.d.ts +32 -2
  492. package/dist/utils/transactions/tx-wc.js +61 -33
  493. package/dist/utils/transactions/tx-wc.js.map +1 -1
  494. package/dist/utils/transactions/types.d.ts +4 -2
  495. package/dist/utils/wallet-connect.d.ts +4 -7664
  496. package/dist/utils/wallet-connect.js +17 -5
  497. package/dist/utils/wallet-connect.js.map +1 -1
  498. package/dist/version/index.js +1 -1
  499. package/package.json +5 -6
@@ -19,7 +19,7 @@ dashboardRead
19
19
  .description('get dashboard base info')
20
20
  .argument('<address>', 'dashboard address', stringToAddress)
21
21
  .action(async (address) => {
22
- const contract = getDashboardContract(address);
22
+ const contract = await getDashboardContract(address);
23
23
  await getDashboardBaseInfo(contract);
24
24
  });
25
25
  dashboardRead
@@ -27,7 +27,7 @@ dashboardRead
27
27
  .description('get dashboard overview')
28
28
  .argument('<address>', 'dashboard address', stringToAddress)
29
29
  .action(async (address) => {
30
- const contract = getDashboardContract(address);
30
+ const contract = await getDashboardContract(address);
31
31
  await getDashboardOverview(contract);
32
32
  });
33
33
  dashboardRead
@@ -35,7 +35,7 @@ dashboardRead
35
35
  .description('get dashboard roles')
36
36
  .argument('<address>', 'dashboard address', stringToAddress)
37
37
  .action(async (address) => {
38
- const contract = getDashboardContract(address);
38
+ const contract = await getDashboardContract(address);
39
39
  await getDashboardRoles(contract);
40
40
  });
41
41
  dashboardRead
@@ -43,7 +43,7 @@ dashboardRead
43
43
  .description('get vault health info')
44
44
  .argument('<address>', 'dashboard address', stringToAddress)
45
45
  .action(async (address) => {
46
- const contract = getDashboardContract(address);
46
+ const contract = await getDashboardContract(address);
47
47
  await getDashboardHealth(contract);
48
48
  });
49
49
  dashboardRead
@@ -63,7 +63,7 @@ dashboardRead
63
63
  .description('get vault address by dashboard')
64
64
  .argument('<dashboard>', 'dashboard address', stringToAddress)
65
65
  .action(async (dashboard) => {
66
- const dashboardContract = getDashboardContract(dashboard);
66
+ const dashboardContract = await getDashboardContract(dashboard);
67
67
  const vault = await callReadMethodSilent(dashboardContract, 'stakingVault');
68
68
  logResult({
69
69
  data: [['Vault Address', vault]],
@@ -74,7 +74,7 @@ dashboardRead
74
74
  .description('get pending confirmations')
75
75
  .argument('<address>', 'dashboard address', stringToAddress)
76
76
  .action(async (address) => {
77
- const contract = getDashboardContract(address);
77
+ const contract = await getDashboardContract(address);
78
78
  const confirmations = await getConfirmationsInfo(contract, contract.abi);
79
79
  if (!confirmations)
80
80
  return console.error('No confirmations found');
@@ -106,7 +106,7 @@ dashboardRead
106
106
  .description('get the roles that can:change the confirm expiry, set the node operator fee, set a new owner of the StakingVault')
107
107
  .argument('<address>', 'dashboard address', stringToAddress)
108
108
  .action(async (address) => {
109
- const contract = getDashboardContract(address);
109
+ const contract = await getDashboardContract(address);
110
110
  const confirmingRoles = await callReadMethodSilent(contract, 'confirmingRoles');
111
111
  const confirmingRolesNames = [
112
112
  'DEFAULT_ADMIN_ROLE',
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../programs/contracts/dashboard/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../programs/contracts/dashboard/read.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { parseEther, formatEther } from 'viem';
2
2
  import { Option } from 'commander';
3
3
  import { getDashboardContract, getOperatorGridContract, getStakingVaultContract, } from '../../../contracts/index.js';
4
- import { mintShares, burnShares, mintSteth, burnSteth, checkIsReportFresh, confirmSettledGrowth, } from '../../../features/index.js';
4
+ import { mintShares, burnShares, mintSteth, burnSteth, checkIsReportFresh, checkBLSDeposits, } from '../../../features/index.js';
5
5
  import { callReadMethod, callWriteMethodWithReceipt, jsonToRoleAssignment, confirmOperation, stringToBigInt, parseDepositArray, logInfo, getCommandsJson, stringToAddress, createPDGProof, confirmProposal, formatBP, callReadMethodSilent, showSpinner, stringToBigIntArrayWei, stringToHexArray, etherToWei, stringToNumber, } from '../../../utils/index.js';
6
6
  import { dashboard } from './main.js';
7
7
  const dashboardWrite = dashboard
@@ -20,7 +20,7 @@ dashboardWrite
20
20
  .argument('<address>', 'dashboard address', stringToAddress)
21
21
  .argument('<newOwner>', 'address of the new owner', stringToAddress)
22
22
  .action(async (address, newOwner) => {
23
- const contract = getDashboardContract(address);
23
+ const contract = await getDashboardContract(address);
24
24
  const vault = await callReadMethod(contract, 'stakingVault');
25
25
  const confirm = await confirmOperation(`Are you sure you want to transfer ownership of the staking vault ${vault} to ${newOwner}?`);
26
26
  if (!confirm)
@@ -36,11 +36,14 @@ dashboardWrite
36
36
  .description('disconnects the staking vault from the vault hub')
37
37
  .argument('<address>', 'dashboard address', stringToAddress)
38
38
  .action(async (address) => {
39
- const contract = getDashboardContract(address);
39
+ const contract = await getDashboardContract(address);
40
40
  const vault = await callReadMethod(contract, 'stakingVault');
41
41
  const confirm = await confirmOperation(`Are you sure you want to disconnect the staking vault ${vault}?`);
42
42
  if (!confirm)
43
43
  return;
44
+ const isReportFresh = await checkIsReportFresh(vault);
45
+ if (!isReportFresh)
46
+ return;
44
47
  await callWriteMethodWithReceipt({
45
48
  contract,
46
49
  methodName: 'voluntaryDisconnect',
@@ -53,7 +56,7 @@ dashboardWrite
53
56
  .argument('<address>', 'dashboard address', stringToAddress)
54
57
  .argument('<ether>', 'amount of ether to be funded (in ETH)')
55
58
  .action(async (address, ether) => {
56
- const contract = getDashboardContract(address);
59
+ const contract = await getDashboardContract(address);
57
60
  const vault = await callReadMethod(contract, 'stakingVault');
58
61
  const confirm = await confirmOperation(`Are you sure you want to fund the staking vault ${vault} with ${ether} ether?`);
59
62
  if (!confirm)
@@ -72,7 +75,7 @@ dashboardWrite
72
75
  .argument('<recipient>', 'address of the recipient', stringToAddress)
73
76
  .argument('<eth>', 'amount of ether to withdraw (in ETH)')
74
77
  .action(async (address, recipient, ether) => {
75
- const contract = getDashboardContract(address);
78
+ const contract = await getDashboardContract(address);
76
79
  const vault = await callReadMethod(contract, 'stakingVault');
77
80
  const confirm = await confirmOperation(`Are you sure you want to withdraw ${ether} from the staking vault ${vault} to ${recipient}?`);
78
81
  if (!confirm)
@@ -92,7 +95,7 @@ dashboardWrite
92
95
  .argument('<address>', 'dashboard address', stringToAddress)
93
96
  .argument('<validatorPubKey>', 'public key of the validator to exit')
94
97
  .action(async (address, validatorPubKey) => {
95
- const contract = getDashboardContract(address);
98
+ const contract = await getDashboardContract(address);
96
99
  const vault = await callReadMethod(contract, 'stakingVault');
97
100
  const confirm = await confirmOperation(`Are you sure you want to exit the validator ${validatorPubKey} from the staking vault ${vault}?`);
98
101
  if (!confirm)
@@ -112,9 +115,9 @@ dashboardWrite
112
115
  .argument('<recipient>', 'address of the recipient', stringToAddress)
113
116
  .action(async (address, pubkeys, amounts, recipient) => {
114
117
  const mergedPubkeys = pubkeys.join('');
115
- const contract = getDashboardContract(address);
118
+ const contract = await getDashboardContract(address);
116
119
  const vault = await callReadMethod(contract, 'stakingVault');
117
- const vaultContract = getStakingVaultContract(vault);
120
+ const vaultContract = await getStakingVaultContract(vault);
118
121
  const fee = await callReadMethod(vaultContract, 'calculateValidatorWithdrawalFee', [BigInt(amounts.length)]);
119
122
  const confirmationMessage = `Are you sure you want to trigger the withdrawal of the validators
120
123
  ${pubkeys.join(', ')}
@@ -139,7 +142,7 @@ dashboardWrite
139
142
  .argument('<recipient>', 'address of the recipient', stringToAddress)
140
143
  .argument('<amountOfShares>', 'amount of shares to mint (in Shares)')
141
144
  .action(async (address, recipient, amountOfShares) => {
142
- const contract = getDashboardContract(address);
145
+ const contract = await getDashboardContract(address);
143
146
  const vault = await callReadMethod(contract, 'stakingVault');
144
147
  await mintShares(contract, recipient, parseEther(amountOfShares), vault, 'mintShares');
145
148
  });
@@ -150,7 +153,7 @@ dashboardWrite
150
153
  .argument('<recipient>', 'address of the recipient', stringToAddress)
151
154
  .argument('<amountOfSteth>', 'amount of stETH to mint')
152
155
  .action(async (address, recipient, amountOfSteth) => {
153
- const contract = getDashboardContract(address);
156
+ const contract = await getDashboardContract(address);
154
157
  const vault = await callReadMethod(contract, 'stakingVault');
155
158
  await mintSteth(contract, recipient, parseEther(amountOfSteth), vault);
156
159
  });
@@ -161,7 +164,7 @@ dashboardWrite
161
164
  .argument('<recipient>', 'address of the recipient', stringToAddress)
162
165
  .argument('<amountOfWsteth>', 'amount of wstETH to mint')
163
166
  .action(async (address, recipient, amountOfWsteth) => {
164
- const contract = getDashboardContract(address);
167
+ const contract = await getDashboardContract(address);
165
168
  const vault = await callReadMethod(contract, 'stakingVault');
166
169
  await mintShares(contract, recipient, parseEther(amountOfWsteth), vault, 'mintWstETH');
167
170
  });
@@ -172,7 +175,7 @@ dashboardWrite
172
175
  .argument('<address>', 'dashboard address', stringToAddress)
173
176
  .argument('<amountOfShares>', 'amount of shares to burn (in Shares)')
174
177
  .action(async (address, amountOfShares) => {
175
- const contract = getDashboardContract(address);
178
+ const contract = await getDashboardContract(address);
176
179
  const vault = await callReadMethod(contract, 'stakingVault');
177
180
  await burnShares(contract, parseEther(amountOfShares), vault, 'burnShares');
178
181
  });
@@ -182,7 +185,7 @@ dashboardWrite
182
185
  .argument('<address>', 'dashboard address', stringToAddress)
183
186
  .argument('<amountOfShares>', 'amount of shares to burn (in stETH)')
184
187
  .action(async (address, amountOfShares) => {
185
- const contract = getDashboardContract(address);
188
+ const contract = await getDashboardContract(address);
186
189
  const vault = await callReadMethod(contract, 'stakingVault');
187
190
  await burnSteth(contract, parseEther(amountOfShares), vault);
188
191
  });
@@ -192,7 +195,7 @@ dashboardWrite
192
195
  .argument('<address>', 'dashboard address', stringToAddress)
193
196
  .argument('<tokens>', 'amount of wstETH tokens to burn (in wstETH)')
194
197
  .action(async (address, tokens) => {
195
- const contract = getDashboardContract(address);
198
+ const contract = await getDashboardContract(address);
196
199
  const vault = await callReadMethod(contract, 'stakingVault');
197
200
  await burnShares(contract, parseEther(tokens), vault, 'burnWstETH');
198
201
  });
@@ -202,7 +205,7 @@ dashboardWrite
202
205
  .argument('<address>', 'dashboard address', stringToAddress)
203
206
  .argument('<ether>', 'amount of ether to rebalance (in ETH)', etherToWei)
204
207
  .action(async (address, ether) => {
205
- const contract = getDashboardContract(address);
208
+ const contract = await getDashboardContract(address);
206
209
  const vault = await callReadMethod(contract, 'stakingVault');
207
210
  const confirm = await confirmOperation(`Are you sure you want to rebalance the vault ${vault} with ${formatEther(ether)} ether by transferring?`);
208
211
  if (!confirm)
@@ -220,7 +223,7 @@ dashboardWrite
220
223
  .argument('<address>', 'dashboard address', stringToAddress)
221
224
  .argument('<shares>', 'amount of shares to rebalance (in shares)', etherToWei)
222
225
  .action(async (address, shares) => {
223
- const contract = getDashboardContract(address);
226
+ const contract = await getDashboardContract(address);
224
227
  const vault = await callReadMethod(contract, 'stakingVault');
225
228
  const confirm = await confirmOperation(`Are you sure you want to rebalance the vault ${vault} with ${formatEther(shares)} shares?`);
226
229
  if (!confirm)
@@ -239,7 +242,7 @@ dashboardWrite
239
242
  .argument('<amount>', 'amount of tokens or ether to recover (in ETH)', etherToWei)
240
243
  .argument('<recipient>', 'address of the recovery recipient', stringToAddress)
241
244
  .action(async (address, token, amount, recipient) => {
242
- const contract = getDashboardContract(address);
245
+ const contract = await getDashboardContract(address);
243
246
  const confirm = await confirmOperation(`Are you sure you want to recover the token ${token} with amount ${formatEther(amount)} from the dashboard contract ${address} to ${recipient}?`);
244
247
  if (!confirm)
245
248
  return;
@@ -257,7 +260,7 @@ dashboardWrite
257
260
  .argument('<amount>', 'amount of tokens or ether to recover (in ETH)', etherToWei)
258
261
  .argument('<recipient>', 'address of the recovery recipient', stringToAddress)
259
262
  .action(async (address, token, amount, recipient) => {
260
- const contract = getDashboardContract(address);
263
+ const contract = await getDashboardContract(address);
261
264
  const confirm = await confirmOperation(`Are you sure you want to recover the token ${token} with amount ${formatEther(amount)} from the dashboard contract ${address} to ${recipient}?`);
262
265
  if (!confirm)
263
266
  return;
@@ -272,7 +275,7 @@ dashboardWrite
272
275
  .description('Pauses beacon chain deposits on the staking vault.')
273
276
  .argument('<address>', 'dashboard address', stringToAddress)
274
277
  .action(async (address) => {
275
- const contract = getDashboardContract(address);
278
+ const contract = await getDashboardContract(address);
276
279
  const vault = await callReadMethod(contract, 'stakingVault');
277
280
  const confirm = await confirmOperation(`Are you sure you want to pause beacon chain deposits on the staking vault ${vault}?`);
278
281
  if (!confirm)
@@ -288,7 +291,7 @@ dashboardWrite
288
291
  .description('resumes deposits to beacon chain')
289
292
  .argument('<address>', 'dashboard address', stringToAddress)
290
293
  .action(async (address) => {
291
- const contract = getDashboardContract(address);
294
+ const contract = await getDashboardContract(address);
292
295
  const vault = await callReadMethod(contract, 'stakingVault');
293
296
  const confirm = await confirmOperation(`Are you sure you want to resume beacon chain deposits on the staking vault ${vault}?`);
294
297
  if (!confirm)
@@ -312,7 +315,7 @@ dashboardWrite
312
315
  {second role assignment}
313
316
  ...]`)
314
317
  .action(async (address, roleAssignment) => {
315
- const contract = getDashboardContract(address);
318
+ const contract = await getDashboardContract(address);
316
319
  if (!Array.isArray(roleAssignment)) {
317
320
  throw new Error('the 2nd argument should be an array of role assignments');
318
321
  }
@@ -339,7 +342,7 @@ dashboardWrite
339
342
  {second role assignment}
340
343
  ...]`)
341
344
  .action(async (address, roleAssignment) => {
342
- const contract = getDashboardContract(address);
345
+ const contract = await getDashboardContract(address);
343
346
  if (!Array.isArray(roleAssignment)) {
344
347
  throw new Error('the 2nd argument should be an array of role assignments');
345
348
  }
@@ -359,7 +362,8 @@ dashboardWrite
359
362
  .description('withdraws ether from vault and deposits directly to provided validators bypassing the default PDG process')
360
363
  .argument('<address>', 'dashboard address', stringToAddress)
361
364
  .argument('<deposits>', 'array of IStakingVault.Deposit structs containing deposit data', parseDepositArray)
362
- .addHelpText('after', `Deposit format:
365
+ .option('--no-bls-check', 'skip bls signature check')
366
+ .addHelpText('after', `Deposit format (amount are in gwei):
363
367
  '[{
364
368
  "pubkey": "...",
365
369
  "signature": "...",
@@ -368,13 +372,16 @@ dashboardWrite
368
372
  }
369
373
  {second deposit}
370
374
  ...]'`)
371
- .action(async (address, deposits) => {
372
- const contract = getDashboardContract(address);
375
+ .action(async (address, deposits, { blsCheck }) => {
376
+ const contract = await getDashboardContract(address);
373
377
  const vault = await callReadMethod(contract, 'stakingVault');
378
+ const vaultContract = await getStakingVaultContract(vault);
374
379
  const confirm = await confirmOperation(`Are you sure you want to unguaranteed deposit ${deposits.length} deposits to the beacon chain in the staking vault ${vault}?
375
380
  Pubkeys: ${deposits.map((i) => i.pubkey).join(', ')}`);
376
381
  if (!confirm)
377
382
  return;
383
+ if (blsCheck)
384
+ await checkBLSDeposits(vaultContract, deposits);
378
385
  await callWriteMethodWithReceipt({
379
386
  contract,
380
387
  methodName: 'unguaranteedDepositToBeaconChain',
@@ -388,9 +395,9 @@ dashboardWrite
388
395
  .argument('<address>', 'dashboard address', stringToAddress)
389
396
  .argument('<validatorIndex...>', 'index of the validator to prove')
390
397
  .action(async (address, validatorIndexes) => {
391
- const contract = getDashboardContract(address);
398
+ const contract = await getDashboardContract(address);
392
399
  const vault = await callReadMethod(contract, 'stakingVault');
393
- const vaultContract = getStakingVaultContract(vault);
400
+ const vaultContract = await getStakingVaultContract(vault);
394
401
  const pdgContract = await callReadMethodSilent(vaultContract, 'depositor');
395
402
  const payload = [];
396
403
  const pdgPolicy = await callReadMethodSilent(contract, 'pdgPolicy');
@@ -433,7 +440,7 @@ dashboardWrite
433
440
  .argument('<address>', 'dashboard address', stringToAddress)
434
441
  .argument('<newOwner>', 'new owner address', stringToAddress)
435
442
  .action(async (address, newOwner) => {
436
- const contract = getDashboardContract(address);
443
+ const contract = await getDashboardContract(address);
437
444
  const vault = await callReadMethod(contract, 'stakingVault');
438
445
  const confirm = await confirmOperation(`Are you sure you want to abandon the dashboard ${address} (vault: ${vault})?`);
439
446
  if (!confirm)
@@ -447,23 +454,21 @@ dashboardWrite
447
454
  dashboardWrite
448
455
  .command('connect-to-vault-hub')
449
456
  .alias('connect-hub')
450
- .description('connects to VaultHub, transferring ownership to VaultHub.')
457
+ .description('connects to VaultHub, transferring underlying StakingVault ownership to VaultHub.')
451
458
  .argument('<address>', 'dashboard address', stringToAddress)
459
+ .addHelpText('after', `Reverts if settledGrowth is not corrected after the vault is disconnected`)
452
460
  .action(async (address) => {
453
- const contract = getDashboardContract(address);
461
+ const contract = await getDashboardContract(address);
454
462
  const vault = await callReadMethod(contract, 'stakingVault');
455
463
  const currentSettledGrowth = await callReadMethodSilent(contract, 'settledGrowth');
456
- const confirmedSettledGrowth = await confirmSettledGrowth(currentSettledGrowth);
457
- if (confirmedSettledGrowth === false)
458
- return;
459
464
  const confirm = await confirmOperation(`Are you sure you want to connect the dashboard ${address} (vault: ${vault}) to VaultHub?
460
- Settled growth: ${formatEther(confirmedSettledGrowth)}`);
465
+ Current settled growth: ${formatEther(currentSettledGrowth)}`);
461
466
  if (!confirm)
462
467
  return;
463
468
  await callWriteMethodWithReceipt({
464
469
  contract,
465
470
  methodName: 'connectToVaultHub',
466
- payload: [confirmedSettledGrowth],
471
+ payload: [],
467
472
  });
468
473
  });
469
474
  dashboardWrite
@@ -471,21 +476,19 @@ dashboardWrite
471
476
  .alias('reconnect-hub')
472
477
  .description('accepts the ownership over the StakingVault and connects to VaultHub. Can be called to reconnect to the hub after voluntaryDisconnect()')
473
478
  .argument('<address>', 'dashboard address', stringToAddress)
479
+ .addHelpText('after', `Reverts if settledGrowth is not corrected after the vault is disconnected`)
474
480
  .action(async (address) => {
475
- const contract = getDashboardContract(address);
481
+ const contract = await getDashboardContract(address);
476
482
  const vault = await callReadMethod(contract, 'stakingVault');
477
483
  const currentSettledGrowth = await callReadMethodSilent(contract, 'settledGrowth');
478
- const confirmedSettledGrowth = await confirmSettledGrowth(currentSettledGrowth);
479
- if (confirmedSettledGrowth === false)
480
- return;
481
484
  const confirm = await confirmOperation(`Are you sure you want to reconnect the dashboard ${address} (vault: ${vault}) to VaultHub?
482
- Settled growth: ${formatEther(confirmedSettledGrowth)}`);
485
+ Current settled growth: ${formatEther(currentSettledGrowth)}`);
483
486
  if (!confirm)
484
487
  return;
485
488
  await callWriteMethodWithReceipt({
486
489
  contract,
487
490
  methodName: 'reconnectToVaultHub',
488
- payload: [confirmedSettledGrowth],
491
+ payload: [],
489
492
  });
490
493
  });
491
494
  dashboardWrite
@@ -496,22 +499,20 @@ dashboardWrite
496
499
  .argument('<tier>', 'tier to change to', stringToBigInt)
497
500
  .argument('<requestedShareLimit>', 'requested new share limit for the vault (in shares)', etherToWei)
498
501
  .option('-f, --fund', 'optional fund the vault with 1 ETH', false)
502
+ .addHelpText('after', `Reverts if settledGrowth is not corrected after the vault is disconnected`)
499
503
  .action(async (address, tier, requestedShareLimit, { fund }) => {
500
- const contract = getDashboardContract(address);
504
+ const contract = await getDashboardContract(address);
501
505
  const vault = await callReadMethod(contract, 'stakingVault');
502
506
  const currentSettledGrowth = await callReadMethodSilent(contract, 'settledGrowth');
503
- const confirmedSettledGrowth = await confirmSettledGrowth(currentSettledGrowth);
504
- if (confirmedSettledGrowth === false)
505
- return;
506
507
  const confirm = await confirmOperation(`Are you sure you want to change the tier of the vault ${vault} to ${tier} and connect to VaultHub?
507
508
  Requested share limit: ${formatEther(requestedShareLimit)}
508
- Settled growth: ${formatEther(confirmedSettledGrowth)}`);
509
+ Current settled growth: ${formatEther(currentSettledGrowth)}`);
509
510
  if (!confirm)
510
511
  return;
511
512
  await callWriteMethodWithReceipt({
512
513
  contract,
513
514
  methodName: 'connectAndAcceptTier',
514
- payload: [tier, requestedShareLimit, confirmedSettledGrowth],
515
+ payload: [tier, requestedShareLimit],
515
516
  value: fund ? parseEther('1') : undefined,
516
517
  });
517
518
  });
@@ -520,8 +521,12 @@ dashboardWrite
520
521
  .description('set the PDG policy')
521
522
  .argument('<address>', 'dashboard address', stringToAddress)
522
523
  .argument('<policy>', 'policy to set the PDG policy to', stringToNumber)
524
+ .addHelpText('after', `Policy values:
525
+ 0: STRICT
526
+ 1: ALLOW_PROVE
527
+ 2: ALLOW_DEPOSIT_AND_PROVE`)
523
528
  .action(async (address, policy) => {
524
- const contract = getDashboardContract(address);
529
+ const contract = await getDashboardContract(address);
525
530
  const PDG_POLICY = {
526
531
  0: 'STRICT',
527
532
  1: 'ALLOW_PROVE',
@@ -543,7 +548,7 @@ dashboardWrite
543
548
  .argument('<address>', 'dashboard address', stringToAddress)
544
549
  .argument('<recipient>', 'address of the new node operator fee recipient', stringToAddress)
545
550
  .action(async (address, recipient) => {
546
- const contract = getDashboardContract(address);
551
+ const contract = await getDashboardContract(address);
547
552
  const confirm = await confirmOperation(`Are you sure you want to set the node operator fee recipient to ${recipient}?`);
548
553
  if (!confirm)
549
554
  return;
@@ -558,7 +563,7 @@ dashboardWrite
558
563
  .description('Confirms a proposal')
559
564
  .argument('<address>', 'dashboard address', stringToAddress)
560
565
  .action(async (address) => {
561
- const contract = getDashboardContract(address);
566
+ const contract = await getDashboardContract(address);
562
567
  const vault = await callReadMethodSilent(contract, 'stakingVault');
563
568
  const operatorGridContract = await getOperatorGridContract();
564
569
  const log = await confirmProposal({
@@ -586,7 +591,7 @@ dashboardWrite
586
591
  .argument('<address>', 'dashboard address', stringToAddress)
587
592
  .argument('<expiry>', 'expiry in seconds', stringToBigInt)
588
593
  .action(async (address, expiry) => {
589
- const contract = getDashboardContract(address);
594
+ const contract = await getDashboardContract(address);
590
595
  const hours = Number(expiry) / 3600;
591
596
  const confirm = await confirmOperation(`Are you sure you want to set the confirm expiry to ${expiry} seconds (${hours} hours)?`);
592
597
  if (!confirm)
@@ -603,7 +608,7 @@ dashboardWrite
603
608
  .argument('<address>', 'dashboard address', stringToAddress)
604
609
  .argument('<fee>', 'the new node operator fee rate in basis points', stringToBigInt)
605
610
  .action(async (address, fee) => {
606
- const contract = getDashboardContract(address);
611
+ const contract = await getDashboardContract(address);
607
612
  const percentage = formatBP(fee);
608
613
  const confirm = await confirmOperation(`Are you sure you want to set the node operator fee ${fee} in basis points (${percentage})?`);
609
614
  if (!confirm)
@@ -619,7 +624,7 @@ dashboardWrite
619
624
  .description('transfers the node-operator`s accrued fee (if any) to nodeOperatorFeeRecipient')
620
625
  .argument('<address>', 'dashboard address', stringToAddress)
621
626
  .action(async (address) => {
622
- const contract = getDashboardContract(address);
627
+ const contract = await getDashboardContract(address);
623
628
  const nodeOperatorFeeRecipient = await callReadMethodSilent(contract, 'feeRecipient');
624
629
  const confirm = await confirmOperation(`Are you sure you want to transfer the node operator fee to ${nodeOperatorFeeRecipient}?`);
625
630
  if (!confirm)
@@ -638,7 +643,7 @@ dashboardWrite
638
643
  .argument('<tierId>', 'tier id', stringToBigInt)
639
644
  .argument('<requestedShareLimit>', 'requested share limit (in shares)', etherToWei)
640
645
  .action(async (address, tierId, requestedShareLimit) => {
641
- const contract = getDashboardContract(address);
646
+ const contract = await getDashboardContract(address);
642
647
  const vault = await callReadMethod(contract, 'stakingVault');
643
648
  const confirm = await confirmOperation(`Are you sure you want to change the current tier to tier ID ${tierId} for vault ${vault} with share limit ${formatEther(requestedShareLimit)} shares?`);
644
649
  if (!confirm)
@@ -659,7 +664,7 @@ dashboardWrite
659
664
  - First call returns false (pending), second call with both confirmations completes the sync
660
665
  - Confirmations expire after the configured period (default: 1 day)`)
661
666
  .action(async (address) => {
662
- const contract = getDashboardContract(address);
667
+ const contract = await getDashboardContract(address);
663
668
  const vault = await callReadMethod(contract, 'stakingVault');
664
669
  const confirm = await confirmOperation(`Are you sure you want to sync the tier of the vault ${vault}?`);
665
670
  if (!confirm)
@@ -672,13 +677,14 @@ dashboardWrite
672
677
  });
673
678
  dashboardWrite
674
679
  .command('update-share-limit')
680
+ .alias('usl')
675
681
  .description('requests a change of share limit on the OperatorGrid')
676
682
  .argument('<address>', 'dashboard address', stringToAddress)
677
- .argument('<shareLimit>', 'share limit', stringToBigInt)
683
+ .argument('<shareLimit>', 'share limit', etherToWei)
678
684
  .action(async (address, shareLimit) => {
679
- const contract = getDashboardContract(address);
685
+ const contract = await getDashboardContract(address);
680
686
  const vault = await callReadMethod(contract, 'stakingVault');
681
- const confirm = await confirmOperation(`Are you sure you want to request a change of share limit on the OperatorGrid for the vault ${vault} to ${shareLimit}?`);
687
+ const confirm = await confirmOperation(`Are you sure you want to request a change of share limit on the OperatorGrid for the vault ${vault} to ${formatEther(shareLimit)}?`);
682
688
  if (!confirm)
683
689
  return;
684
690
  await callWriteMethodWithReceipt({
@@ -692,7 +698,7 @@ dashboardWrite
692
698
  .description('Disburses an abnormally high fee as `DEFAULT_ADMIN_ROLE`. Before calling this function, the caller must ensure that the high fee is expected, and the settled growth (used as baseline for fee) is set correctly.')
693
699
  .argument('<address>', 'dashboard address', stringToAddress)
694
700
  .action(async (address) => {
695
- const contract = getDashboardContract(address);
701
+ const contract = await getDashboardContract(address);
696
702
  const confirm = await confirmOperation('Are you sure you want to disburse an abnormally high fee as `DEFAULT_ADMIN_ROLE`?');
697
703
  if (!confirm)
698
704
  return;
@@ -706,9 +712,9 @@ dashboardWrite
706
712
  .command('correct-settled-growth')
707
713
  .description('Manually corrects the settled growth value with dual confirmation.')
708
714
  .argument('<address>', 'dashboard address', stringToAddress)
709
- .argument('<newSettledGrowth>', 'new settled growth', etherToWei)
715
+ .argument('<newSettledGrowth>', 'new settled growth (in ETH)', etherToWei)
710
716
  .action(async (address, newSettledGrowth) => {
711
- const contract = getDashboardContract(address);
717
+ const contract = await getDashboardContract(address);
712
718
  const currentSettledGrowth = await callReadMethodSilent(contract, 'settledGrowth');
713
719
  const confirm = await confirmOperation(`Are you sure you want to correct the settled growth to ${newSettledGrowth}?
714
720
  Current settled growth: ${formatEther(currentSettledGrowth)}`);
@@ -720,4 +726,22 @@ dashboardWrite
720
726
  payload: [newSettledGrowth, currentSettledGrowth],
721
727
  });
722
728
  });
729
+ dashboardWrite
730
+ .command('recover-fee-leftover')
731
+ .alias('rfl')
732
+ .description('Recovers the previously collected fees to the feeRecipient address')
733
+ .argument('<address>', 'dashboard address', stringToAddress)
734
+ .action(async (address) => {
735
+ const contract = await getDashboardContract(address);
736
+ const feeLeftover = await callReadMethodSilent(contract, 'feeLeftover');
737
+ const confirm = await confirmOperation(`Are you sure you want to recover the fee leftover from the dashboard contract ${address}?
738
+ Fee leftover: ${formatEther(feeLeftover)}`);
739
+ if (!confirm)
740
+ return;
741
+ await callWriteMethodWithReceipt({
742
+ contract,
743
+ methodName: 'recoverFeeLeftover',
744
+ payload: [],
745
+ });
746
+ });
723
747
  //# sourceMappingURL=write.js.map