@lidofinance/lsv-cli 1.0.0-alpha.61 → 1.0.0-alpha.63

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 (494) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +1 -1
  3. package/dist/abi/AccessControlConfirmable.d.ts +4 -3
  4. package/dist/abi/AccessControlConfirmable.js +4 -2
  5. package/dist/abi/AccessControlConfirmable.js.map +1 -1
  6. package/dist/abi/Dashboard.d.ts +731 -437
  7. package/dist/abi/Dashboard.js +322 -302
  8. package/dist/abi/Dashboard.js.map +1 -1
  9. package/dist/abi/LazyOracle.d.ts +319 -27
  10. package/dist/abi/LazyOracle.js +406 -27
  11. package/dist/abi/LazyOracle.js.map +1 -1
  12. package/dist/abi/LidoLocator.d.ts +28 -0
  13. package/dist/abi/LidoLocator.js +36 -0
  14. package/dist/abi/LidoLocator.js.map +1 -1
  15. package/dist/abi/OperatorGrid.d.ts +879 -100
  16. package/dist/abi/OperatorGrid.js +224 -2
  17. package/dist/abi/OperatorGrid.js.map +1 -1
  18. package/dist/abi/PredepositGuarantee.d.ts +210 -169
  19. package/dist/abi/PredepositGuarantee.js +192 -198
  20. package/dist/abi/PredepositGuarantee.js.map +1 -1
  21. package/dist/abi/StEth.d.ts +1 -1
  22. package/dist/abi/StEth.js +1 -1
  23. package/dist/abi/StEth.js.map +1 -1
  24. package/dist/abi/StakingVault.d.ts +241 -41
  25. package/dist/abi/StakingVault.js +206 -43
  26. package/dist/abi/StakingVault.js.map +1 -1
  27. package/dist/abi/VaultFactory.d.ts +524 -72
  28. package/dist/abi/VaultFactory.js +42 -1
  29. package/dist/abi/VaultFactory.js.map +1 -1
  30. package/dist/abi/VaultHub.d.ts +439 -409
  31. package/dist/abi/VaultHub.js +363 -399
  32. package/dist/abi/VaultHub.js.map +1 -1
  33. package/dist/abi/VaultViewer.d.ts +204 -238
  34. package/dist/abi/VaultViewer.js +251 -299
  35. package/dist/abi/VaultViewer.js.map +1 -1
  36. package/dist/abi/defi-wrapper/Distributor.d.ts +486 -0
  37. package/dist/abi/defi-wrapper/Distributor.js +633 -0
  38. package/dist/abi/defi-wrapper/Distributor.js.map +1 -0
  39. package/dist/abi/defi-wrapper/Factory.d.ts +1184 -0
  40. package/dist/abi/defi-wrapper/Factory.js +932 -0
  41. package/dist/abi/defi-wrapper/Factory.js.map +1 -0
  42. package/dist/abi/defi-wrapper/StvPool.d.ts +1079 -0
  43. package/dist/abi/defi-wrapper/StvPool.js +1410 -0
  44. package/dist/abi/defi-wrapper/StvPool.js.map +1 -0
  45. package/dist/abi/defi-wrapper/StvStETHPool.d.ts +1772 -0
  46. package/dist/abi/defi-wrapper/StvStETHPool.js +2316 -0
  47. package/dist/abi/defi-wrapper/StvStETHPool.js.map +1 -0
  48. package/dist/abi/defi-wrapper/WithdrawalQueue.d.ts +1265 -0
  49. package/dist/abi/defi-wrapper/WithdrawalQueue.js +1647 -0
  50. package/dist/abi/defi-wrapper/WithdrawalQueue.js.map +1 -0
  51. package/dist/abi/defi-wrapper/index.d.ts +5 -0
  52. package/dist/abi/defi-wrapper/index.js +6 -0
  53. package/dist/abi/defi-wrapper/index.js.map +1 -0
  54. package/dist/abi/index.d.ts +0 -2
  55. package/dist/abi/index.js +0 -2
  56. package/dist/abi/index.js.map +1 -1
  57. package/dist/configs/constants.d.ts +44 -2
  58. package/dist/configs/constants.js +2 -2
  59. package/dist/configs/constants.js.map +1 -1
  60. package/dist/configs/deployed.d.ts +2 -2
  61. package/dist/configs/deployed.js +48 -6
  62. package/dist/configs/deployed.js.map +1 -1
  63. package/dist/configs/utils.d.ts +1 -0
  64. package/dist/configs/utils.js +4 -0
  65. package/dist/configs/utils.js.map +1 -1
  66. package/dist/contracts/dashboard-impl.d.ts +4 -0
  67. package/dist/contracts/dashboard-impl.js +17 -0
  68. package/dist/contracts/dashboard-impl.js.map +1 -0
  69. package/dist/contracts/dashboard.d.ts +2 -2
  70. package/dist/contracts/dashboard.js +3 -2
  71. package/dist/contracts/dashboard.js.map +1 -1
  72. package/dist/contracts/defi-wrapper/distributor.d.ts +4 -0
  73. package/dist/contracts/defi-wrapper/distributor.js +12 -0
  74. package/dist/contracts/defi-wrapper/distributor.js.map +1 -0
  75. package/dist/contracts/defi-wrapper/factory.d.ts +4 -0
  76. package/dist/contracts/defi-wrapper/factory.js +12 -0
  77. package/dist/contracts/defi-wrapper/factory.js.map +1 -0
  78. package/dist/contracts/defi-wrapper/index.d.ts +5 -0
  79. package/dist/contracts/defi-wrapper/index.js +6 -0
  80. package/dist/contracts/defi-wrapper/index.js.map +1 -0
  81. package/dist/contracts/defi-wrapper/stv-pool.d.ts +4 -0
  82. package/dist/contracts/defi-wrapper/stv-pool.js +12 -0
  83. package/dist/contracts/defi-wrapper/stv-pool.js.map +1 -0
  84. package/dist/contracts/defi-wrapper/stv-steth-pool.d.ts +4 -0
  85. package/dist/contracts/defi-wrapper/stv-steth-pool.js +12 -0
  86. package/dist/contracts/defi-wrapper/stv-steth-pool.js.map +1 -0
  87. package/dist/contracts/defi-wrapper/withdrawal-queue.d.ts +4 -0
  88. package/dist/contracts/defi-wrapper/withdrawal-queue.js +12 -0
  89. package/dist/contracts/defi-wrapper/withdrawal-queue.js.map +1 -0
  90. package/dist/contracts/index.d.ts +1 -1
  91. package/dist/contracts/index.js +1 -1
  92. package/dist/contracts/index.js.map +1 -1
  93. package/dist/contracts/lazy-oracle.js +3 -2
  94. package/dist/contracts/lazy-oracle.js.map +1 -1
  95. package/dist/contracts/locator.d.ts +3 -8239
  96. package/dist/contracts/locator.js +4 -3
  97. package/dist/contracts/locator.js.map +1 -1
  98. package/dist/contracts/operator-grid.d.ts +1 -1
  99. package/dist/contracts/operator-grid.js +3 -2
  100. package/dist/contracts/operator-grid.js.map +1 -1
  101. package/dist/contracts/pdg.js +3 -2
  102. package/dist/contracts/pdg.js.map +1 -1
  103. package/dist/contracts/steth.d.ts +128 -128
  104. package/dist/contracts/steth.js +3 -2
  105. package/dist/contracts/steth.js.map +1 -1
  106. package/dist/contracts/vault-factory.d.ts +3 -16404
  107. package/dist/contracts/vault-factory.js +4 -3
  108. package/dist/contracts/vault-factory.js.map +1 -1
  109. package/dist/contracts/vault-hub.js +3 -2
  110. package/dist/contracts/vault-hub.js.map +1 -1
  111. package/dist/contracts/vault-viewer.d.ts +3 -11197
  112. package/dist/contracts/vault-viewer.js +9 -7
  113. package/dist/contracts/vault-viewer.js.map +1 -1
  114. package/dist/contracts/vault.d.ts +2 -2
  115. package/dist/contracts/vault.js +3 -2
  116. package/dist/contracts/vault.js.map +1 -1
  117. package/dist/contracts/wsteth.d.ts +3 -24690
  118. package/dist/contracts/wsteth.js +4 -3
  119. package/dist/contracts/wsteth.js.map +1 -1
  120. package/dist/features/defi-wrapper/create-vault.d.ts +17 -0
  121. package/dist/features/defi-wrapper/create-vault.js +137 -0
  122. package/dist/features/defi-wrapper/create-vault.js.map +1 -0
  123. package/dist/features/defi-wrapper/defi-wrapper-factory.d.ts +112 -0
  124. package/dist/features/defi-wrapper/defi-wrapper-factory.js +228 -0
  125. package/dist/features/defi-wrapper/defi-wrapper-factory.js.map +1 -0
  126. package/dist/features/defi-wrapper/index.d.ts +3 -0
  127. package/dist/features/defi-wrapper/index.js +4 -0
  128. package/dist/features/defi-wrapper/index.js.map +1 -0
  129. package/dist/features/defi-wrapper/pool-info.d.ts +35 -0
  130. package/dist/features/defi-wrapper/pool-info.js +97 -0
  131. package/dist/features/defi-wrapper/pool-info.js.map +1 -0
  132. package/dist/features/deposits/check-bls-deposits.d.ts +2 -1
  133. package/dist/features/deposits/check-bls-deposits.js +11 -2
  134. package/dist/features/deposits/check-bls-deposits.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/dev-tools/impersonate.d.ts +14 -0
  142. package/dist/features/dev-tools/impersonate.js +64 -0
  143. package/dist/features/dev-tools/impersonate.js.map +1 -0
  144. package/dist/features/dev-tools/index.d.ts +1 -0
  145. package/dist/features/dev-tools/index.js +2 -0
  146. package/dist/features/dev-tools/index.js.map +1 -0
  147. package/dist/features/index.d.ts +3 -0
  148. package/dist/features/index.js +3 -0
  149. package/dist/features/index.js.map +1 -1
  150. package/dist/features/lazy-oracle.d.ts +1 -0
  151. package/dist/features/lazy-oracle.js +42 -0
  152. package/dist/features/lazy-oracle.js.map +1 -0
  153. package/dist/features/mint-burn/allowance.js +1 -1
  154. package/dist/features/mint-burn/allowance.js.map +1 -1
  155. package/dist/features/pdg.d.ts +7 -0
  156. package/dist/features/pdg.js +5 -5
  157. package/dist/features/pdg.js.map +1 -1
  158. package/dist/features/utils/get-boolean.d.ts +1 -0
  159. package/dist/features/utils/get-boolean.js +13 -0
  160. package/dist/features/utils/get-boolean.js.map +1 -0
  161. package/dist/features/utils/index.d.ts +2 -0
  162. package/dist/features/utils/index.js +2 -0
  163. package/dist/features/utils/index.js.map +1 -1
  164. package/dist/features/utils/quarantine.d.ts +2 -0
  165. package/dist/features/utils/quarantine.js +2 -0
  166. package/dist/features/utils/quarantine.js.map +1 -1
  167. package/dist/features/utils/report-fresh.js +17 -1
  168. package/dist/features/utils/report-fresh.js.map +1 -1
  169. package/dist/features/utils/settled-growth.d.ts +1 -0
  170. package/dist/features/utils/settled-growth.js +16 -0
  171. package/dist/features/utils/settled-growth.js.map +1 -0
  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-hub.js +0 -4
  176. package/dist/features/vault-hub.js.map +1 -1
  177. package/dist/features/vault-operations/create-vault.d.ts +4 -2
  178. package/dist/features/vault-operations/create-vault.js +13 -5
  179. package/dist/features/vault-operations/create-vault.js.map +1 -1
  180. package/dist/features/vault-operations/dashboard-by-vault.d.ts +2 -1
  181. package/dist/features/vault-operations/dashboard-by-vault.js +6 -4
  182. package/dist/features/vault-operations/dashboard-by-vault.js.map +1 -1
  183. package/dist/features/vault-operations/vault-health.js +2 -2
  184. package/dist/features/vault-operations/vault-health.js.map +1 -1
  185. package/dist/features/vault-operations/vault-info.js +32 -33
  186. package/dist/features/vault-operations/vault-info.js.map +1 -1
  187. package/dist/features/vault-operations/vault-overview.js +46 -39
  188. package/dist/features/vault-operations/vault-overview.js.map +1 -1
  189. package/dist/features/vault-operations/vault-roles.d.ts +2 -1
  190. package/dist/features/vault-operations/vault-roles.js +22 -23
  191. package/dist/features/vault-operations/vault-roles.js.map +1 -1
  192. package/dist/features/vault-operations/vaults-by-role.d.ts +5 -0
  193. package/dist/features/vault-operations/vaults-by-role.js +123 -36
  194. package/dist/features/vault-operations/vaults-by-role.js.map +1 -1
  195. package/dist/features/vault.js +8 -4
  196. package/dist/features/vault.js.map +1 -1
  197. package/dist/index.js +18 -6
  198. package/dist/index.js.map +1 -1
  199. package/dist/programs/account/read.js +1 -1
  200. package/dist/programs/account/read.js.map +1 -1
  201. package/dist/programs/account/write.js +14 -0
  202. package/dist/programs/account/write.js.map +1 -1
  203. package/dist/programs/contracts/dashboard/config.js +49 -40
  204. package/dist/programs/contracts/dashboard/config.js.map +1 -1
  205. package/dist/programs/contracts/dashboard/read.js +44 -9
  206. package/dist/programs/contracts/dashboard/read.js.map +1 -1
  207. package/dist/programs/contracts/dashboard/write.js +236 -127
  208. package/dist/programs/contracts/dashboard/write.js.map +1 -1
  209. package/dist/programs/contracts/hub/config.js +7 -27
  210. package/dist/programs/contracts/hub/config.js.map +1 -1
  211. package/dist/programs/contracts/hub/read.js +63 -2
  212. package/dist/programs/contracts/hub/read.js.map +1 -1
  213. package/dist/programs/contracts/hub/write.js +8 -70
  214. package/dist/programs/contracts/hub/write.js.map +1 -1
  215. package/dist/programs/contracts/lazy-oracle/config.js +38 -0
  216. package/dist/programs/contracts/lazy-oracle/config.js.map +1 -1
  217. package/dist/programs/contracts/lazy-oracle/read.js +7 -0
  218. package/dist/programs/contracts/lazy-oracle/read.js.map +1 -1
  219. package/dist/programs/contracts/operator-grid/config.js +21 -10
  220. package/dist/programs/contracts/operator-grid/config.js.map +1 -1
  221. package/dist/programs/contracts/operator-grid/read.js +21 -1
  222. package/dist/programs/contracts/operator-grid/read.js.map +1 -1
  223. package/dist/programs/contracts/operator-grid/write.js +40 -71
  224. package/dist/programs/contracts/operator-grid/write.js.map +1 -1
  225. package/dist/programs/contracts/pdg/config.js +9 -2
  226. package/dist/programs/contracts/pdg/config.js.map +1 -1
  227. package/dist/programs/contracts/pdg/read.js +13 -1
  228. package/dist/programs/contracts/pdg/read.js.map +1 -1
  229. package/dist/programs/contracts/pdg/write.js +55 -86
  230. package/dist/programs/contracts/pdg/write.js.map +1 -1
  231. package/dist/programs/contracts/vault/config.js +12 -0
  232. package/dist/programs/contracts/vault/config.js.map +1 -1
  233. package/dist/programs/contracts/vault/write.js +110 -35
  234. package/dist/programs/contracts/vault/write.js.map +1 -1
  235. package/dist/programs/contracts/vault-factory/config.js +14 -1
  236. package/dist/programs/contracts/vault-factory/config.js.map +1 -1
  237. package/dist/programs/contracts/vault-factory/write.js +25 -15
  238. package/dist/programs/contracts/vault-factory/write.js.map +1 -1
  239. package/dist/programs/contracts/vault-viewer/config.js +102 -59
  240. package/dist/programs/contracts/vault-viewer/config.js.map +1 -1
  241. package/dist/programs/contracts/vault-viewer/read.js +22 -76
  242. package/dist/programs/contracts/vault-viewer/read.js.map +1 -1
  243. package/dist/programs/defi-wrapper/contracts/distributor/config.d.ts +3 -0
  244. package/dist/programs/defi-wrapper/contracts/distributor/config.js +44 -0
  245. package/dist/programs/defi-wrapper/contracts/distributor/config.js.map +1 -0
  246. package/dist/programs/defi-wrapper/contracts/distributor/index.d.ts +3 -0
  247. package/dist/programs/defi-wrapper/contracts/distributor/index.js +4 -0
  248. package/dist/programs/defi-wrapper/contracts/distributor/index.js.map +1 -0
  249. package/dist/programs/defi-wrapper/contracts/distributor/main.d.ts +1 -0
  250. package/dist/programs/defi-wrapper/contracts/distributor/main.js +5 -0
  251. package/dist/programs/defi-wrapper/contracts/distributor/main.js.map +1 -0
  252. package/dist/programs/defi-wrapper/contracts/distributor/read.d.ts +1 -0
  253. package/dist/programs/defi-wrapper/contracts/distributor/read.js +40 -0
  254. package/dist/programs/defi-wrapper/contracts/distributor/read.js.map +1 -0
  255. package/dist/programs/defi-wrapper/contracts/distributor/write.d.ts +1 -0
  256. package/dist/programs/defi-wrapper/contracts/distributor/write.js +70 -0
  257. package/dist/programs/defi-wrapper/contracts/distributor/write.js.map +1 -0
  258. package/dist/programs/defi-wrapper/contracts/factory/config.d.ts +3 -0
  259. package/dist/programs/defi-wrapper/contracts/factory/config.js +2 -0
  260. package/dist/programs/defi-wrapper/contracts/factory/config.js.map +1 -0
  261. package/dist/programs/defi-wrapper/contracts/factory/index.d.ts +3 -0
  262. package/dist/programs/defi-wrapper/contracts/factory/index.js +4 -0
  263. package/dist/programs/defi-wrapper/contracts/factory/index.js.map +1 -0
  264. package/dist/programs/defi-wrapper/contracts/factory/main.d.ts +1 -0
  265. package/dist/programs/defi-wrapper/contracts/factory/main.js +6 -0
  266. package/dist/programs/defi-wrapper/contracts/factory/main.js.map +1 -0
  267. package/dist/programs/defi-wrapper/contracts/factory/read.d.ts +1 -0
  268. package/dist/programs/defi-wrapper/contracts/factory/read.js +50 -0
  269. package/dist/programs/defi-wrapper/contracts/factory/read.js.map +1 -0
  270. package/dist/programs/defi-wrapper/contracts/factory/write.d.ts +1 -0
  271. package/dist/programs/defi-wrapper/contracts/factory/write.js +144 -0
  272. package/dist/programs/defi-wrapper/contracts/factory/write.js.map +1 -0
  273. package/dist/programs/defi-wrapper/contracts/index.d.ts +6 -0
  274. package/dist/programs/defi-wrapper/contracts/index.js +7 -0
  275. package/dist/programs/defi-wrapper/contracts/index.js.map +1 -0
  276. package/dist/programs/defi-wrapper/contracts/main.d.ts +1 -0
  277. package/dist/programs/defi-wrapper/contracts/main.js +6 -0
  278. package/dist/programs/defi-wrapper/contracts/main.js.map +1 -0
  279. package/dist/programs/defi-wrapper/contracts/stv-pool/config.d.ts +3 -0
  280. package/dist/programs/defi-wrapper/contracts/stv-pool/config.js +73 -0
  281. package/dist/programs/defi-wrapper/contracts/stv-pool/config.js.map +1 -0
  282. package/dist/programs/defi-wrapper/contracts/stv-pool/index.d.ts +3 -0
  283. package/dist/programs/defi-wrapper/contracts/stv-pool/index.js +4 -0
  284. package/dist/programs/defi-wrapper/contracts/stv-pool/index.js.map +1 -0
  285. package/dist/programs/defi-wrapper/contracts/stv-pool/main.d.ts +1 -0
  286. package/dist/programs/defi-wrapper/contracts/stv-pool/main.js +6 -0
  287. package/dist/programs/defi-wrapper/contracts/stv-pool/main.js.map +1 -0
  288. package/dist/programs/defi-wrapper/contracts/stv-pool/read.d.ts +1 -0
  289. package/dist/programs/defi-wrapper/contracts/stv-pool/read.js +70 -0
  290. package/dist/programs/defi-wrapper/contracts/stv-pool/read.js.map +1 -0
  291. package/dist/programs/defi-wrapper/contracts/stv-pool/write.d.ts +1 -0
  292. package/dist/programs/defi-wrapper/contracts/stv-pool/write.js +138 -0
  293. package/dist/programs/defi-wrapper/contracts/stv-pool/write.js.map +1 -0
  294. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.d.ts +3 -0
  295. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js +120 -0
  296. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js.map +1 -0
  297. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.d.ts +3 -0
  298. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.js +4 -0
  299. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.js.map +1 -0
  300. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.d.ts +1 -0
  301. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.js +6 -0
  302. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.js.map +1 -0
  303. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.d.ts +1 -0
  304. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js +70 -0
  305. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js.map +1 -0
  306. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.d.ts +1 -0
  307. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js +173 -0
  308. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js.map +1 -0
  309. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.d.ts +3 -0
  310. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js +66 -0
  311. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js.map +1 -0
  312. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.d.ts +3 -0
  313. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.js +4 -0
  314. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.js.map +1 -0
  315. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.d.ts +1 -0
  316. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.js +6 -0
  317. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.js.map +1 -0
  318. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.d.ts +1 -0
  319. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js +65 -0
  320. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js.map +1 -0
  321. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.d.ts +1 -0
  322. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js +171 -0
  323. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js.map +1 -0
  324. package/dist/programs/defi-wrapper/index.d.ts +3 -0
  325. package/dist/programs/defi-wrapper/index.js +4 -0
  326. package/dist/programs/defi-wrapper/index.js.map +1 -0
  327. package/dist/programs/defi-wrapper/main.d.ts +1 -0
  328. package/dist/programs/defi-wrapper/main.js +6 -0
  329. package/dist/programs/defi-wrapper/main.js.map +1 -0
  330. package/dist/programs/defi-wrapper/use-cases/health/index.d.ts +3 -0
  331. package/dist/programs/defi-wrapper/use-cases/health/index.js +4 -0
  332. package/dist/programs/defi-wrapper/use-cases/health/index.js.map +1 -0
  333. package/dist/programs/defi-wrapper/use-cases/health/main.d.ts +1 -0
  334. package/dist/programs/defi-wrapper/use-cases/health/main.js +6 -0
  335. package/dist/programs/defi-wrapper/use-cases/health/main.js.map +1 -0
  336. package/dist/programs/defi-wrapper/use-cases/health/read.d.ts +1 -0
  337. package/dist/programs/defi-wrapper/use-cases/health/read.js +338 -0
  338. package/dist/programs/defi-wrapper/use-cases/health/read.js.map +1 -0
  339. package/dist/programs/defi-wrapper/use-cases/health/utils.d.ts +56 -0
  340. package/dist/programs/defi-wrapper/use-cases/health/utils.js +389 -0
  341. package/dist/programs/defi-wrapper/use-cases/health/utils.js.map +1 -0
  342. package/dist/programs/defi-wrapper/use-cases/health/write.d.ts +1 -0
  343. package/dist/programs/defi-wrapper/use-cases/health/write.js +254 -0
  344. package/dist/programs/defi-wrapper/use-cases/health/write.js.map +1 -0
  345. package/dist/programs/defi-wrapper/use-cases/index.d.ts +3 -0
  346. package/dist/programs/defi-wrapper/use-cases/index.js +4 -0
  347. package/dist/programs/defi-wrapper/use-cases/index.js.map +1 -0
  348. package/dist/programs/defi-wrapper/use-cases/main.d.ts +1 -0
  349. package/dist/programs/defi-wrapper/use-cases/main.js +6 -0
  350. package/dist/programs/defi-wrapper/use-cases/main.js.map +1 -0
  351. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.d.ts +1 -0
  352. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.js +143 -0
  353. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.js.map +1 -0
  354. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.d.ts +3 -0
  355. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.js +5 -0
  356. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.js.map +1 -0
  357. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.d.ts +1 -0
  358. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.js +6 -0
  359. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.js.map +1 -0
  360. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.d.ts +1 -0
  361. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.js +130 -0
  362. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.js.map +1 -0
  363. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.d.ts +1 -0
  364. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.js +13 -0
  365. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.js.map +1 -0
  366. package/dist/programs/dev-tools/anvil/index.d.ts +2 -0
  367. package/dist/programs/dev-tools/anvil/index.js +3 -0
  368. package/dist/programs/dev-tools/anvil/index.js.map +1 -0
  369. package/dist/programs/dev-tools/anvil/main.d.ts +1 -0
  370. package/dist/programs/dev-tools/anvil/main.js +5 -0
  371. package/dist/programs/dev-tools/anvil/main.js.map +1 -0
  372. package/dist/programs/dev-tools/anvil/write.d.ts +1 -0
  373. package/dist/programs/dev-tools/anvil/write.js +122 -0
  374. package/dist/programs/dev-tools/anvil/write.js.map +1 -0
  375. package/dist/programs/dev-tools/defi-wrapper/index.d.ts +2 -0
  376. package/dist/programs/dev-tools/defi-wrapper/index.js +3 -0
  377. package/dist/programs/dev-tools/defi-wrapper/index.js.map +1 -0
  378. package/dist/programs/dev-tools/defi-wrapper/main.d.ts +1 -0
  379. package/dist/programs/dev-tools/defi-wrapper/main.js +6 -0
  380. package/dist/programs/dev-tools/defi-wrapper/main.js.map +1 -0
  381. package/dist/programs/dev-tools/defi-wrapper/write.d.ts +1 -0
  382. package/dist/programs/dev-tools/defi-wrapper/write.js +77 -0
  383. package/dist/programs/dev-tools/defi-wrapper/write.js.map +1 -0
  384. package/dist/programs/dev-tools/index.d.ts +3 -0
  385. package/dist/programs/dev-tools/index.js +4 -0
  386. package/dist/programs/dev-tools/index.js.map +1 -0
  387. package/dist/programs/dev-tools/main.d.ts +1 -0
  388. package/dist/programs/dev-tools/main.js +6 -0
  389. package/dist/programs/dev-tools/main.js.map +1 -0
  390. package/dist/programs/index.d.ts +2 -0
  391. package/dist/programs/index.js +2 -0
  392. package/dist/programs/index.js.map +1 -1
  393. package/dist/programs/pdg-helpers.js +5 -5
  394. package/dist/programs/pdg-helpers.js.map +1 -1
  395. package/dist/programs/use-cases/deposits/read.js +19 -2
  396. package/dist/programs/use-cases/deposits/read.js.map +1 -1
  397. package/dist/programs/use-cases/deposits/write.js +130 -45
  398. package/dist/programs/use-cases/deposits/write.js.map +1 -1
  399. package/dist/programs/use-cases/metrics/read.js +36 -19
  400. package/dist/programs/use-cases/metrics/read.js.map +1 -1
  401. package/dist/programs/use-cases/report/read.js +14 -7
  402. package/dist/programs/use-cases/report/read.js.map +1 -1
  403. package/dist/programs/use-cases/report/write.js +7 -2
  404. package/dist/programs/use-cases/report/write.js.map +1 -1
  405. package/dist/programs/use-cases/vault-operations/create-vault.js +18 -8
  406. package/dist/programs/use-cases/vault-operations/create-vault.js.map +1 -1
  407. package/dist/programs/use-cases/vault-operations/write.js +103 -8
  408. package/dist/programs/use-cases/vault-operations/write.js.map +1 -1
  409. package/dist/providers/wallet.d.ts +6984 -169
  410. package/dist/providers/wallet.js +15 -5
  411. package/dist/providers/wallet.js.map +1 -1
  412. package/dist/tests/utils/calculate-overview.test.js +1 -1
  413. package/dist/tests/utils/calculate-overview.test.js.map +1 -1
  414. package/dist/tests/utils/health.test.js +2 -2
  415. package/dist/tests/utils/health.test.js.map +1 -1
  416. package/dist/types/common.d.ts +4 -0
  417. package/dist/utils/arguments.d.ts +8 -1
  418. package/dist/utils/arguments.js +61 -1
  419. package/dist/utils/arguments.js.map +1 -1
  420. package/dist/utils/bls.d.ts +2 -2
  421. package/dist/utils/bls.js +8 -7
  422. package/dist/utils/bls.js.map +1 -1
  423. package/dist/utils/cache.d.ts +26 -0
  424. package/dist/utils/cache.js +88 -3
  425. package/dist/utils/cache.js.map +1 -1
  426. package/dist/utils/calculate-overview-v2.d.ts +4 -2
  427. package/dist/utils/calculate-overview-v2.js +5 -8
  428. package/dist/utils/calculate-overview-v2.js.map +1 -1
  429. package/dist/utils/calculate-overview.d.ts +1 -1
  430. package/dist/utils/calculate-overview.js +2 -2
  431. package/dist/utils/calculate-overview.js.map +1 -1
  432. package/dist/utils/charts/blessed/charts-apr.js +3 -2
  433. package/dist/utils/charts/blessed/charts-apr.js.map +1 -1
  434. package/dist/utils/charts/blessed/charts-rewards.js +3 -2
  435. package/dist/utils/charts/blessed/charts-rewards.js.map +1 -1
  436. package/dist/utils/charts/overview.d.ts +1 -1
  437. package/dist/utils/charts/overview.js +1 -1
  438. package/dist/utils/charts/overview.js.map +1 -1
  439. package/dist/utils/charts/simple/simple-charts.js +3 -2
  440. package/dist/utils/charts/simple/simple-charts.js.map +1 -1
  441. package/dist/utils/commands/confirmations.d.ts +8 -4
  442. package/dist/utils/commands/confirmations.js +44 -34
  443. package/dist/utils/commands/confirmations.js.map +1 -1
  444. package/dist/utils/commands/report.js +2 -1
  445. package/dist/utils/commands/report.js.map +1 -1
  446. package/dist/utils/fetchCL.d.ts +1 -5
  447. package/dist/utils/fetchCL.js +5 -7
  448. package/dist/utils/fetchCL.js.map +1 -1
  449. package/dist/utils/health/calculate-health.d.ts +1 -1
  450. package/dist/utils/health/calculate-health.js +2 -2
  451. package/dist/utils/health/calculate-health.js.map +1 -1
  452. package/dist/utils/health/health-utils.d.ts +131 -131
  453. package/dist/utils/health/health-utils.js +12 -11
  454. package/dist/utils/health/health-utils.js.map +1 -1
  455. package/dist/utils/prompts/confirmations.js +1 -1
  456. package/dist/utils/prompts/confirmations.js.map +1 -1
  457. package/dist/utils/proof/constants.d.ts +6 -0
  458. package/dist/utils/proof/constants.js +7 -0
  459. package/dist/utils/proof/constants.js.map +1 -0
  460. package/dist/utils/proof/first-validator-gindex.js +0 -4
  461. package/dist/utils/proof/first-validator-gindex.js.map +1 -1
  462. package/dist/utils/proof/proofs.d.ts +7 -8
  463. package/dist/utils/proof/proofs.js +36 -28
  464. package/dist/utils/proof/proofs.js.map +1 -1
  465. package/dist/utils/read-programs-by-abi.d.ts +1 -1
  466. package/dist/utils/read-programs-by-abi.js +4 -18
  467. package/dist/utils/read-programs-by-abi.js.map +1 -1
  468. package/dist/utils/report/report.js +2 -1
  469. package/dist/utils/report/report.js.map +1 -1
  470. package/dist/utils/report/statistic-data.js +3 -3
  471. package/dist/utils/report/statistic-data.js.map +1 -1
  472. package/dist/utils/report/types.d.ts +10 -2
  473. package/dist/utils/statistic/report-statistic.js +13 -14
  474. package/dist/utils/statistic/report-statistic.js.map +1 -1
  475. package/dist/utils/transactions/tx-private-key.d.ts +2 -2
  476. package/dist/utils/transactions/tx-private-key.js +6 -6
  477. package/dist/utils/transactions/tx-private-key.js.map +1 -1
  478. package/dist/utils/transactions/tx-wc.d.ts +29 -1
  479. package/dist/utils/transactions/tx-wc.js +58 -28
  480. package/dist/utils/transactions/tx-wc.js.map +1 -1
  481. package/dist/utils/wallet-connect.d.ts +4 -7664
  482. package/dist/utils/wallet-connect.js +17 -5
  483. package/dist/utils/wallet-connect.js.map +1 -1
  484. package/dist/version/index.js +1 -1
  485. package/package.json +16 -7
  486. package/dist/abi/TokenManager.d.ts +0 -577
  487. package/dist/abi/TokenManager.js +0 -756
  488. package/dist/abi/TokenManager.js.map +0 -1
  489. package/dist/abi/Voting.d.ts +0 -676
  490. package/dist/abi/Voting.js +0 -884
  491. package/dist/abi/Voting.js.map +0 -1
  492. package/dist/contracts/token-manager.d.ts +0 -3
  493. package/dist/contracts/token-manager.js +0 -13
  494. package/dist/contracts/token-manager.js.map +0 -1
@@ -1,60 +1,72 @@
1
1
  import { formatEther } from 'viem';
2
- import { getOperatorGridContract, getStethContract, getVaultHubContract, } from '../../contracts/index.js';
2
+ import { getLazyOracleContract, getOperatorGridContract, getStethContract, getVaultHubContract, } from '../../contracts/index.js';
3
3
  import { getPublicClient } from '../../providers/index.js';
4
- import { fetchAndCalculateVaultHealth, formatBP, formatRatio, showSpinner, logInfo, logTable, logResult, logLiabilityBar, logVaultHealthBar, printError, calculateOverviewV2, callReadMethodSilent, } from '../../utils/index.js';
4
+ import { fetchAndCalculateVaultHealth, formatBP, formatRatio, showSpinner, logInfo, logTable, logResult, logLiabilityBar, logVaultHealthBar, printError, calculateOverviewV2, getVaultReport, callReadMethodSilent, } from '../../utils/index.js';
5
5
  import { reportFreshWarning } from '../index.js';
6
6
  export const getVaultOverviewByDashboard = async (contract) => {
7
7
  const vault = await callReadMethodSilent(contract, 'stakingVault');
8
8
  await reportFreshWarning(vault);
9
9
  const hideSpinner = showSpinner();
10
- const publicClient = getPublicClient();
10
+ const publicClient = await getPublicClient();
11
+ let report = null;
12
+ try {
13
+ const lazyOracleContract = await getLazyOracleContract();
14
+ const [_timestamp, _refSlot, _treeRoot, cid] = await callReadMethodSilent(lazyOracleContract, 'latestReportData');
15
+ report = await getVaultReport({ vault, cid });
16
+ }
17
+ catch (error) {
18
+ logInfo('No report found');
19
+ }
11
20
  try {
12
21
  const health = await fetchAndCalculateVaultHealth(contract);
13
22
  const operatorGridContract = await getOperatorGridContract();
14
- const [nodeOperatorFeeRate, reserveRatioBP, totalMintingCapacityShares, withdrawableValue, nodeOperatorDisbursableFee, totalValue, locked, shareLimit, remainingMintingCapacityShares,] = await Promise.all([
15
- contract.read.nodeOperatorFeeRate(),
16
- contract.read.reserveRatioBP(),
23
+ const [vaultConnection, totalMintingCapacityShares, withdrawableValue, totalValue, locked, remainingMintingCapacityShares, minimalReserve, nodeOperatorFeeRate, nodeOperatorAccruedFee, settledGrowth,] = await Promise.all([
24
+ contract.read.vaultConnection(),
17
25
  contract.read.totalMintingCapacityShares(),
18
26
  contract.read.withdrawableValue(),
19
- contract.read.nodeOperatorDisbursableFee(),
20
27
  contract.read.totalValue(),
21
28
  contract.read.locked(),
22
- contract.read.shareLimit(),
23
29
  contract.read.remainingMintingCapacityShares([0n]),
30
+ contract.read.minimalReserve(),
31
+ contract.read.feeRate(),
32
+ contract.read.accruedFee(),
33
+ contract.read.settledGrowth(),
24
34
  ]);
35
+ const { reserveRatioBP, shareLimit } = vaultConnection;
25
36
  const stethContract = await getStethContract();
26
37
  const vaultHubContract = await getVaultHubContract();
27
38
  const balance = await publicClient.getBalance({
28
39
  address: vault,
29
40
  });
30
- const vaultObligation = await callReadMethodSilent(vaultHubContract, 'vaultObligations', [vault]);
31
- const tierInfo = await callReadMethodSilent(operatorGridContract, 'vaultInfo', [vault]);
41
+ const vaultObligation = await callReadMethodSilent(vaultHubContract, 'obligations', [vault]);
42
+ const tierInfo = await callReadMethodSilent(operatorGridContract, 'vaultTierInfo', [vault]);
32
43
  const isNoHaveGroup = tierInfo[0] === '0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF';
33
44
  const nodeOperatorGroup = await callReadMethodSilent(operatorGridContract, 'group', [tierInfo[0]]);
34
- const [totalMintingCapacityStethWei, shareLimitStethWei, tierShareLimitStethWei, groupShareLimitStethWei, remainingMintingCapacityStethWei,] = await Promise.all([
35
- stethContract.read.getPooledEthBySharesRoundUp([
36
- totalMintingCapacityShares,
37
- ]),
38
- stethContract.read.getPooledEthBySharesRoundUp([shareLimit]),
39
- stethContract.read.getPooledEthBySharesRoundUp([tierInfo[2]]),
40
- stethContract.read.getPooledEthBySharesRoundUp([
41
- nodeOperatorGroup.shareLimit,
42
- ]),
43
- stethContract.read.getPooledEthBySharesRoundUp([
44
- remainingMintingCapacityShares,
45
- ]),
45
+ const [totalMintingCapacityStethWei, shareLimitStethWei, tierShareLimitStethWei, groupShareLimitStethWei, remainingMintingCapacityStethWei, lastReportLiabilityInStethWei,] = await Promise.all([
46
+ stethContract.read.getPooledEthByShares([totalMintingCapacityShares]),
47
+ stethContract.read.getPooledEthByShares([shareLimit]),
48
+ stethContract.read.getPooledEthByShares([tierInfo[2]]),
49
+ stethContract.read.getPooledEthByShares([nodeOperatorGroup.shareLimit]),
50
+ stethContract.read.getPooledEthByShares([remainingMintingCapacityShares]),
51
+ report
52
+ ? stethContract.read.getPooledEthBySharesRoundUp([
53
+ BigInt(report.data.liabilityShares),
54
+ ])
55
+ : 0n,
46
56
  ]);
47
57
  const overview = calculateOverviewV2({
48
58
  totalValue,
49
59
  reserveRatioBP,
50
60
  liabilitySharesInStethWei: health.liabilitySharesInStethWei,
51
- forceRebalanceThresholdBP: health.forceRebalanceThresholdBP,
61
+ forcedRebalanceThresholdBP: health.forcedRebalanceThresholdBP,
52
62
  withdrawableEther: withdrawableValue,
53
63
  balance,
54
64
  locked,
55
- nodeOperatorDisbursableFee,
65
+ nodeOperatorAccruedFee,
56
66
  totalMintingCapacityStethWei,
57
- unsettledLidoFees: vaultObligation.unsettledLidoFees,
67
+ unsettledLidoFees: vaultObligation[1],
68
+ minimalReserve,
69
+ lastReportLiabilityInStethWei,
58
70
  });
59
71
  hideSpinner();
60
72
  logResult({});
@@ -65,7 +77,7 @@ export const getVaultOverviewByDashboard = async (contract) => {
65
77
  ['Reserve Ratio, %', formatBP(reserveRatioBP)],
66
78
  [
67
79
  'Force Rebalance Threshold',
68
- formatBP(health.forceRebalanceThresholdBP),
80
+ formatBP(health.forcedRebalanceThresholdBP),
69
81
  ],
70
82
  ['stVault Share Limit, stETH', formatEther(shareLimitStethWei)],
71
83
  ['stVault Share Limit, Shares', formatEther(shareLimit)],
@@ -83,11 +95,13 @@ export const getVaultOverviewByDashboard = async (contract) => {
83
95
  ['Total Locked, ETH', formatEther(overview.totalLocked)],
84
96
  ['Collateral, ETH', formatEther(overview.collateral)],
85
97
  ['Recently Repaid, ETH', formatEther(overview.recentlyRepaid)],
98
+ ['Node Operator Accrued Fee, ETH', formatEther(nodeOperatorAccruedFee)],
99
+ ['Reserved, ETH', formatEther(overview.reserved)],
100
+ ['Settled Growth, ETH', formatEther(settledGrowth)],
86
101
  [
87
- 'Node Operator Disbursable Fee, ETH',
88
- formatEther(nodeOperatorDisbursableFee),
102
+ 'Total Minting Capacity, Shares',
103
+ formatEther(totalMintingCapacityShares),
89
104
  ],
90
- ['Reserved, ETH', formatEther(overview.reserved)],
91
105
  [
92
106
  'Total Minting Capacity, stETH',
93
107
  formatEther(overview.totalMintingCapacityStethWei),
@@ -100,15 +114,8 @@ export const getVaultOverviewByDashboard = async (contract) => {
100
114
  'Remaining Minting Capacity, Shares',
101
115
  formatEther(remainingMintingCapacityShares),
102
116
  ],
103
- [
104
- 'Unsettled Lido Fees, ETH',
105
- formatEther(vaultObligation.unsettledLidoFees),
106
- ],
107
- [
108
- 'Settled Lido Fees, ETH',
109
- formatEther(vaultObligation.settledLidoFees),
110
- ],
111
- ['Redemptions, ETH', formatEther(vaultObligation.redemptions)],
117
+ ['Unsettled Lido Fees, ETH', formatEther(vaultObligation[1])],
118
+ ['Shares to Burn, Shares', formatEther(vaultObligation[0])],
112
119
  ['Tier ID', tierInfo[1]],
113
120
  ['Tier Share Limit, stETH', formatEther(tierShareLimitStethWei)],
114
121
  ['Tier Share Limit, Shares', formatEther(tierInfo[2])],
@@ -126,7 +133,7 @@ export const getVaultOverviewByDashboard = async (contract) => {
126
133
  totalValue: totalValue,
127
134
  stETHLiability: health.liabilitySharesInStethWei,
128
135
  reserveRatioBP: reserveRatioBP,
129
- forceRebalanceThresholdBP: health.forceRebalanceThresholdBP,
136
+ forcedRebalanceThresholdBP: health.forcedRebalanceThresholdBP,
130
137
  stETHTotalMintingCapacity: totalMintingCapacityStethWei,
131
138
  });
132
139
  console.info('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"vault-overview.js","sourceRoot":"","sources":["../../../features/vault-operations/vault-overview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vault-overview.js","sourceRoot":"","sources":["../../../features/vault-operations/vault-overview.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Address } from 'viem';
2
2
  import { DashboardContract } from '../../contracts/index.js';
3
- export type RoleName = 'DEFAULT_ADMIN_ROLE' | 'CHANGE_TIER_ROLE' | 'BURN_ROLE' | 'FUND_ROLE' | 'MINT_ROLE' | 'WITHDRAW_ROLE' | 'NODE_OPERATOR_MANAGER_ROLE' | 'NODE_OPERATOR_REWARDS_ADJUST_ROLE' | 'PAUSE_BEACON_CHAIN_DEPOSITS_ROLE' | 'RESUME_BEACON_CHAIN_DEPOSITS_ROLE' | 'PDG_COMPENSATE_PREDEPOSIT_ROLE' | 'PDG_PROVE_VALIDATOR_ROLE' | 'REBALANCE_ROLE' | 'RECOVER_ASSETS_ROLE' | 'REQUEST_VALIDATOR_EXIT_ROLE' | 'TRIGGER_VALIDATOR_WITHDRAWAL_ROLE' | 'UNGUARANTEED_BEACON_CHAIN_DEPOSIT_ROLE' | 'VOLUNTARY_DISCONNECT_ROLE';
3
+ export type RoleName = 'DEFAULT_ADMIN_ROLE' | 'BURN_ROLE' | 'FUND_ROLE' | 'MINT_ROLE' | 'WITHDRAW_ROLE' | 'NODE_OPERATOR_MANAGER_ROLE' | 'PAUSE_BEACON_CHAIN_DEPOSITS_ROLE' | 'RESUME_BEACON_CHAIN_DEPOSITS_ROLE' | 'REBALANCE_ROLE' | 'REQUEST_VALIDATOR_EXIT_ROLE' | 'TRIGGER_VALIDATOR_WITHDRAWAL_ROLE' | 'VOLUNTARY_DISCONNECT_ROLE' | 'VAULT_CONFIGURATION_ROLE' | 'COLLECT_VAULT_ERC20_ROLE' | 'NODE_OPERATOR_FEE_EXEMPT_ROLE' | 'NODE_OPERATOR_PROVE_UNKNOWN_VALIDATOR_ROLE' | 'NODE_OPERATOR_UNGUARANTEED_DEPOSIT_ROLE';
4
+ export declare const DASHBOARD_ROLES_KEYS: RoleName[];
4
5
  export declare const getVaultRolesByDashboard: (contract: DashboardContract) => Promise<void>;
5
6
  export declare const checkVaultRole: (contract: DashboardContract, roleName: RoleName, address: Address) => Promise<true>;
@@ -1,30 +1,29 @@
1
1
  import { printError, showSpinner, logResult, logInfo, callReadMethodSilent, } from '../../utils/index.js';
2
+ export const DASHBOARD_ROLES_KEYS = [
3
+ 'DEFAULT_ADMIN_ROLE',
4
+ 'BURN_ROLE',
5
+ 'FUND_ROLE',
6
+ 'MINT_ROLE',
7
+ 'WITHDRAW_ROLE',
8
+ 'NODE_OPERATOR_MANAGER_ROLE',
9
+ 'PAUSE_BEACON_CHAIN_DEPOSITS_ROLE',
10
+ 'RESUME_BEACON_CHAIN_DEPOSITS_ROLE',
11
+ 'REBALANCE_ROLE',
12
+ 'REQUEST_VALIDATOR_EXIT_ROLE',
13
+ 'TRIGGER_VALIDATOR_WITHDRAWAL_ROLE',
14
+ 'VOLUNTARY_DISCONNECT_ROLE',
15
+ 'VAULT_CONFIGURATION_ROLE',
16
+ 'COLLECT_VAULT_ERC20_ROLE',
17
+ 'NODE_OPERATOR_FEE_EXEMPT_ROLE',
18
+ 'NODE_OPERATOR_PROVE_UNKNOWN_VALIDATOR_ROLE',
19
+ 'NODE_OPERATOR_UNGUARANTEED_DEPOSIT_ROLE',
20
+ ];
2
21
  export const getVaultRolesByDashboard = async (contract) => {
3
22
  const hideSpinner = showSpinner();
4
23
  try {
5
- const roleKeys = [
6
- 'DEFAULT_ADMIN_ROLE',
7
- 'CHANGE_TIER_ROLE',
8
- 'BURN_ROLE',
9
- 'FUND_ROLE',
10
- 'MINT_ROLE',
11
- 'WITHDRAW_ROLE',
12
- 'NODE_OPERATOR_MANAGER_ROLE',
13
- 'NODE_OPERATOR_REWARDS_ADJUST_ROLE',
14
- 'PAUSE_BEACON_CHAIN_DEPOSITS_ROLE',
15
- 'RESUME_BEACON_CHAIN_DEPOSITS_ROLE',
16
- 'PDG_COMPENSATE_PREDEPOSIT_ROLE',
17
- 'PDG_PROVE_VALIDATOR_ROLE',
18
- 'REBALANCE_ROLE',
19
- 'RECOVER_ASSETS_ROLE',
20
- 'REQUEST_VALIDATOR_EXIT_ROLE',
21
- 'TRIGGER_VALIDATOR_WITHDRAWAL_ROLE',
22
- 'UNGUARANTEED_BEACON_CHAIN_DEPOSIT_ROLE',
23
- 'VOLUNTARY_DISCONNECT_ROLE',
24
- ];
25
- const roleValues = await Promise.all(roleKeys.map((key) => contract.read[key]()));
26
- const roles = Object.fromEntries(roleKeys.map((key, index) => [key, roleValues[index]]));
27
- const result = await Promise.all(roleKeys.map(async (key) => {
24
+ const roleValues = await Promise.all(DASHBOARD_ROLES_KEYS.map((key) => contract.read[key]()));
25
+ const roles = Object.fromEntries(DASHBOARD_ROLES_KEYS.map((key, index) => [key, roleValues[index]]));
26
+ const result = await Promise.all(DASHBOARD_ROLES_KEYS.map(async (key) => {
28
27
  const accounts = await contract.read.getRoleMembers([roles[key]]);
29
28
  return {
30
29
  Role: key,
@@ -1 +1 @@
1
- {"version":3,"file":"vault-roles.js","sourceRoot":"","sources":["../../../features/vault-operations/vault-roles.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,UAAU,EACV,WAAW,EACX,SAAS,EACT,OAAO,EACP,oBAAoB,GACrB,MAAM,OAAO,CAAC;AAsBf,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAE,QAA2B,EAAE,EAAE;IAC5E,MAAM,WAAW,GAAG,WAAW,EAAE,CAAC;IAElC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAe;YAC3B,oBAAoB;YACpB,kBAAkB;YAClB,WAAW;YACX,WAAW;YACX,WAAW;YACX,eAAe;YACf,4BAA4B;YAC5B,mCAAmC;YACnC,kCAAkC;YAClC,mCAAmC;YACnC,gCAAgC;YAChC,0BAA0B;YAC1B,gBAAgB;YAChB,qBAAqB;YACrB,6BAA6B;YAC7B,mCAAmC;YACnC,wCAAwC;YACxC,2BAA2B;SAC5B,CAAC;QAEF,MAAM,UAAU,GAAU,MAAM,OAAO,CAAC,GAAG,CACzC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAE,QAAQ,CAAC,IAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CACrD,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CACb,CAAC;QAE5C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YACzB,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAClE,OAAO;gBACL,IAAI,EAAE,GAAG;gBACT,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC;gBAClB,OAAO,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM;aAC5D,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QACF,WAAW,EAAE,CAAC;QACd,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC3B,SAAS,CAAC;YACR,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YACxE,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;aACpC;SACF,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,WAAW,EAAE,CAAC;QACd,UAAU,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,QAA2B,EAC3B,QAAkB,EAClB,OAAgB,EAChB,EAAE;IACF,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IACrE,IACE,YAAY,CAAC,IAAI,CACf,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAC3D;QAED,OAAO,IAAI,CAAC;IAEd,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAErE,MAAM,OAAO,GAAG,WAAW;SACxB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;SACrC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAEnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,sBAAsB,QAAQ,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
1
+ {"version":3,"file":"vault-roles.js","sourceRoot":"","sources":["../../../features/vault-operations/vault-roles.ts"],"names":[],"mappings":"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"}
@@ -1 +1,6 @@
1
+ import { Address, Hex } from 'viem';
2
+ export declare const getAllVaults: () => Promise<`0x${string}`[]>;
3
+ export declare const getVaultsByAddress: (address: Address) => Promise<Record<Address, string[]>>;
4
+ export declare const getVaultsByRoleMember: (role: Hex, member: Address) => Promise<`0x${string}`[]>;
5
+ export declare const getVaultsByOwner: (address: Address) => Promise<`0x${string}`[]>;
1
6
  export declare const chooseVault: () => Promise<any>;
@@ -1,48 +1,135 @@
1
- import { getStakingVaultContract, getVaultViewerContract } from '../../contracts/index.js';
2
- import { callReadMethodSilent, selectPrompt } from '../../utils/index.js';
1
+ import { getVaultViewerContract, getDashboardImplContract, getPredepositGuaranteeContract, } from '../../contracts/index.js';
2
+ import { callReadMethodSilent, printError, selectPrompt, showSpinner, } from '../../utils/index.js';
3
3
  import { getAccount } from '../../providers/index.js';
4
- const getVaultsByOwner = async (account) => {
5
- const contract = getVaultViewerContract();
6
- const vaults = await callReadMethodSilent(contract, 'vaultsByOwner', [
7
- account.address,
8
- ]);
9
- return vaults;
4
+ import { DASHBOARD_ROLES_KEYS } from './vault-roles.js';
5
+ const LIMIT = 100n;
6
+ export const getAllVaults = async () => {
7
+ const hideSpinner = showSpinner({
8
+ message: 'Getting vaults...',
9
+ });
10
+ try {
11
+ const contract = await getVaultViewerContract();
12
+ const totalVaults = await callReadMethodSilent(contract, 'vaultsCount');
13
+ const vaultsByOwner = [];
14
+ for (let i = 0n; i < totalVaults; i += LIMIT) {
15
+ const vaults = await callReadMethodSilent(contract, 'vaultAddressesBatch', [i, LIMIT]);
16
+ vaultsByOwner.push(...vaults);
17
+ }
18
+ return vaultsByOwner;
19
+ }
20
+ catch (err) {
21
+ hideSpinner();
22
+ printError(err, 'Error when getting vaults');
23
+ throw err;
24
+ }
25
+ finally {
26
+ hideSpinner();
27
+ }
10
28
  };
11
- const getVaultsByNO = async (account) => {
12
- const contract = getVaultViewerContract();
13
- const vaults = await callReadMethodSilent(contract, 'vaultsConnected');
14
- const nodeOperators = await Promise.all(vaults.map(async (vault) => {
15
- const vaultContract = getStakingVaultContract(vault);
16
- const nodeOperator = await callReadMethodSilent(vaultContract, 'nodeOperator');
17
- return { vault, nodeOperator };
29
+ export const getVaultsByAddress = async (address) => {
30
+ const [contract, dashboardImpl, vaults, pdg] = await Promise.all([
31
+ getVaultViewerContract(),
32
+ getDashboardImplContract(),
33
+ getAllVaults(),
34
+ getPredepositGuaranteeContract(),
35
+ ]);
36
+ const vaultsWithMembers = [];
37
+ const addressLower = address.toLowerCase();
38
+ const vaultsByRole = {};
39
+ // Get roles from dashboard impl
40
+ const hideSpinner = showSpinner({
41
+ message: 'Getting roles...',
42
+ });
43
+ const rolesValues = await Promise.all(DASHBOARD_ROLES_KEYS.map((key) => dashboardImpl.read[key]()));
44
+ hideSpinner();
45
+ // Get roles and members from vaults (dashboard)
46
+ for (let i = 0; i < vaults.length; i += Number(LIMIT)) {
47
+ const batch = await callReadMethodSilent(contract, 'roleMembersBatch', [
48
+ vaults.slice(i, i + Number(LIMIT)),
49
+ rolesValues,
50
+ ]);
51
+ vaultsWithMembers.push(...batch);
52
+ }
53
+ // Get depositors from pdg for node operators in vaults
54
+ const nodeOperatorsAndVault = vaultsWithMembers.map(({ nodeOperator, vault }) => ({ nodeOperator, vault }));
55
+ const depositorsWithVault = await Promise.all(nodeOperatorsAndVault.map(async ({ nodeOperator, vault }) => {
56
+ const depositor = await callReadMethodSilent(pdg, 'nodeOperatorDepositor', [nodeOperator]);
57
+ return { depositor, vault };
18
58
  }));
19
- const vaultsByNO = nodeOperators.filter(({ nodeOperator }) => nodeOperator === account.address);
20
- return vaultsByNO.map(({ vault }) => vault);
59
+ for (const { depositor, vault } of depositorsWithVault) {
60
+ if (depositor.toLowerCase() === addressLower) {
61
+ vaultsByRole[vault] = ['Depositor'];
62
+ }
63
+ }
64
+ // Map roles and members from vaults (dashboard)
65
+ for (const { vault, owner, nodeOperator, members } of vaultsWithMembers) {
66
+ const roles = [];
67
+ if (owner.toLowerCase() === addressLower) {
68
+ roles.push('Owner');
69
+ }
70
+ if (nodeOperator.toLowerCase() === addressLower) {
71
+ roles.push('Node Operator');
72
+ }
73
+ const membersLength = Math.min(members.length, DASHBOARD_ROLES_KEYS.length);
74
+ for (let i = 0; i < membersLength; i++) {
75
+ const roleMembers = members[i];
76
+ const roleName = DASHBOARD_ROLES_KEYS[i];
77
+ const isHasRole = roleMembers &&
78
+ roleMembers.some((member) => member.toLowerCase() === addressLower);
79
+ if (isHasRole && roleName)
80
+ roles.push(roleName);
81
+ }
82
+ if (roles.length > 0)
83
+ vaultsByRole[vault] = vaultsByRole[vault]
84
+ ? [...vaultsByRole[vault], ...roles]
85
+ : roles;
86
+ }
87
+ return vaultsByRole;
88
+ };
89
+ export const getVaultsByRoleMember = async (role, member) => {
90
+ const contract = await getVaultViewerContract();
91
+ const vaults = await getAllVaults();
92
+ const vaultsByRole = [];
93
+ for (let i = 0; i < vaults.length; i += Number(LIMIT)) {
94
+ const vaults = await callReadMethodSilent(contract, 'vaultsByRoleBatch', [
95
+ role,
96
+ member,
97
+ BigInt(i),
98
+ BigInt(LIMIT),
99
+ ]);
100
+ vaultsByRole.push(...vaults);
101
+ }
102
+ return vaultsByRole;
103
+ };
104
+ export const getVaultsByOwner = async (address) => {
105
+ const contract = await getVaultViewerContract();
106
+ const totalVaults = await callReadMethodSilent(contract, 'vaultsCount');
107
+ const vaultsByOwner = [];
108
+ for (let i = 0n; i < totalVaults; i += LIMIT) {
109
+ const vaults = await callReadMethodSilent(contract, 'vaultsByOwnerBatch', [
110
+ address,
111
+ i,
112
+ LIMIT,
113
+ ]);
114
+ vaultsByOwner.push(...vaults);
115
+ }
116
+ return vaultsByOwner;
21
117
  };
22
118
  export const chooseVault = async () => {
23
119
  const account = await getAccount();
24
- const [vaultsByOwner, vaultsByNO] = await Promise.all([
25
- getVaultsByOwner(account),
26
- getVaultsByNO(account),
27
- ]);
28
- if (vaultsByOwner.length === 0 && vaultsByNO.length === 0) {
29
- throw new Error(`No vaults found for account ${account.address}. Please check your account address and try again.`);
30
- }
31
- const uniqueVaults = [...new Set([...vaultsByOwner, ...vaultsByNO])];
32
- const vaultsWithRole = uniqueVaults.map((vault) => {
33
- let title = '';
34
- if (vaultsByNO.includes(vault)) {
35
- title = `Node Operator`;
36
- }
37
- if (vaultsByOwner.includes(vault)) {
38
- const separator = title.length > 0 ? ', ' : '';
39
- title = `${title}${separator}Owner`;
40
- }
41
- return { title: `${vault} (${title})`, value: vault };
120
+ const vaultsByAddress = await getVaultsByAddress(account.address);
121
+ if (Object.keys(vaultsByAddress).length === 0) {
122
+ printError(new Error(`No vaults found for account ${account.address}`), 'No vaults found for account. Please check your account address and try again.');
123
+ }
124
+ const vaultsWithRole = Object.entries(vaultsByAddress).map(([vault, roles]) => {
125
+ return {
126
+ title: `${vault} (${roles.join(', ')})`,
127
+ value: vault,
128
+ };
42
129
  });
43
130
  const vault = await selectPrompt('Choose a vault', 'address', vaultsWithRole);
44
131
  if (!vault.address)
45
- throw new Error('No vault selected');
132
+ printError(new Error('No vault selected'), 'No vault selected. Please select a vault or use the --vault flag');
46
133
  return vault.address;
47
134
  };
48
135
  //# sourceMappingURL=vaults-by-role.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vaults-by-role.js","sourceRoot":"","sources":["../../../features/vault-operations/vaults-by-role.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vaults-by-role.js","sourceRoot":"","sources":["../../../features/vault-operations/vaults-by-role.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,10 @@ import { printError, showSpinner, logResult, isContractAddress } from '../utils/
3
3
  import { getStakingVaultContract } from '../contracts/index.js';
4
4
  import { getPublicClient } from '../providers/index.js';
5
5
  export const getVaultBaseInfo = async (address) => {
6
- const contract = getStakingVaultContract(address);
7
- const publicClient = getPublicClient();
6
+ const [contract, publicClient] = await Promise.all([
7
+ getStakingVaultContract(address),
8
+ getPublicClient(),
9
+ ]);
8
10
  const hideSpinner = showSpinner();
9
11
  try {
10
12
  const DEPOSIT_CONTRACT = await contract.read.DEPOSIT_CONTRACT();
@@ -17,8 +19,9 @@ export const getVaultBaseInfo = async (address) => {
17
19
  const balance = await publicClient.getBalance({ address });
18
20
  const nodeOperator = await contract.read.nodeOperator();
19
21
  const withdrawalCredentials = await contract.read.withdrawalCredentials();
20
- const isOssified = await contract.read.isOssified();
21
22
  const isOwnerContract = await isContractAddress(owner);
23
+ const availableBalance = await contract.read.availableBalance();
24
+ const stagedBalance = await contract.read.stagedBalance();
22
25
  const CONTRACT_ADDRESS = address;
23
26
  hideSpinner();
24
27
  const payload = {
@@ -32,8 +35,9 @@ export const getVaultBaseInfo = async (address) => {
32
35
  initializedVersion,
33
36
  version,
34
37
  balance: `${formatEther(balance)} ETH`,
38
+ availableBalance: `${formatEther(availableBalance)} ETH`,
39
+ stagedBalance: `${formatEther(stagedBalance)} ETH`,
35
40
  isOwnerContract,
36
- isOssified,
37
41
  withdrawalCredentials,
38
42
  };
39
43
  logResult({
@@ -1 +1 @@
1
- {"version":3,"file":"vault.js","sourceRoot":"","sources":["../../features/vault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAAgB,EAAE,EAAE;IACzD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IAEvC,MAAM,WAAW,GAAG,WAAW,EAAE,CAAC;IAElC,IAAI,CAAC;QACH,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChE,MAAM,yBAAyB,GAC7B,MAAM,QAAQ,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAClD,MAAM,kBAAkB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACvE,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1C,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QACxD,MAAM,qBAAqB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC1E,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACpD,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAEvD,MAAM,gBAAgB,GAAG,OAAO,CAAC;QAEjC,WAAW,EAAE,CAAC;QAEd,MAAM,OAAO,GAAG;YACd,gBAAgB;YAChB,gBAAgB;YAChB,KAAK;YACL,YAAY;YACZ,SAAS;YACT,YAAY;YACZ,yBAAyB;YACzB,kBAAkB;YAClB,OAAO;YACP,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM;YACtC,eAAe;YACf,UAAU;YACV,qBAAqB;SACtB,CAAC;QAEF,SAAS,CAAC;YACR,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SAClE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,WAAW,EAAE,CAAC;QACd,UAAU,CAAC,GAAG,EAAE,8BAA8B,CAAC,CAAC;IAClD,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"vault.js","sourceRoot":"","sources":["../../features/vault.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAAgB,EAAE,EAAE;IACzD,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjD,uBAAuB,CAAC,OAAO,CAAC;QAChC,eAAe,EAAE;KAClB,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,WAAW,EAAE,CAAC;IAElC,IAAI,CAAC;QACH,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChE,MAAM,yBAAyB,GAC7B,MAAM,QAAQ,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAClD,MAAM,kBAAkB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACvE,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1C,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QACxD,MAAM,qBAAqB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC1E,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChE,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QAE1D,MAAM,gBAAgB,GAAG,OAAO,CAAC;QAEjC,WAAW,EAAE,CAAC;QAEd,MAAM,OAAO,GAAG;YACd,gBAAgB;YAChB,gBAAgB;YAChB,KAAK;YACL,YAAY;YACZ,SAAS;YACT,YAAY;YACZ,yBAAyB;YACzB,kBAAkB;YAClB,OAAO;YACP,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM;YACtC,gBAAgB,EAAE,GAAG,WAAW,CAAC,gBAAgB,CAAC,MAAM;YACxD,aAAa,EAAE,GAAG,WAAW,CAAC,aAAa,CAAC,MAAM;YAClD,eAAe;YACf,qBAAqB;SACtB,CAAC;QAEF,SAAS,CAAC;YACR,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SAClE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,WAAW,EAAE,CAAC;QACd,UAAU,CAAC,GAAG,EAAE,8BAA8B,CAAC,CAAC;IAClD,CAAC;AACH,CAAC,CAAC"}
package/dist/index.js CHANGED
@@ -1,20 +1,32 @@
1
1
  #! /usr/bin/env node
2
+ import { getChain } from './configs/index.js';
2
3
  import { program } from './command/index.js';
3
- import { logError } from './utils/logging/console.js';
4
+ import { logError, logInfo } from './utils/logging/console.js';
5
+ import { withInterruptHandling } from './utils/interrupt-handler.js';
4
6
  import './programs/index.js';
5
7
  export * from './utils/index.js';
6
8
  const showTestnetWarning = () => {
7
- console.info('\n🎉 Testnet-2 is officially launched!');
8
- console.info('🌐 Web UI is updated and available at: https://vaults-hoodi-lidov3.testnet.fi/vaults');
9
+ console.info('\n⚠️ 🎉🎉 HOODI V3 is officially launched! 🎉🎉⚠️');
10
+ console.info('🌐 Web UI is available at: https://stvaults-hoodi.testnet.fi/vaults');
11
+ console.info('📄 Contracts info: https://docs.lido.fi/deployed-contracts/hoodi');
12
+ console.info('📖 stVaults Doc Center: https://docs.lido.fi/run-on-lido/stvaults');
13
+ console.info('\n');
9
14
  console.info('🔄 Testnet-1 is available on the testnet-1 branch.');
10
- console.info('📄 Contracts info: https://docs.lido.fi/deployed-contracts/hoodi-lidov3/\n');
15
+ console.info('🔄 Testnet-2 is available on the testnet-2 branch.');
11
16
  };
12
17
  program.addHelpText('afterAll', () => {
13
18
  showTestnetWarning();
14
19
  return '';
15
20
  });
16
- program
17
- .parseAsync(process.argv)
21
+ // Add interrupt handling to the CLI
22
+ const runCLI = withInterruptHandling(async () => {
23
+ const chain = await getChain();
24
+ logInfo(`${'-'.repeat(100)}`);
25
+ logInfo(`Using chain: Name: ${chain.name}, Chain ID: ${chain.id}`);
26
+ logInfo(`${'-'.repeat(100)}`);
27
+ await program.parseAsync(process.argv);
28
+ });
29
+ runCLI()
18
30
  .catch((error) => {
19
31
  logError('CLI Error:', error.message);
20
32
  process.exit(1);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,qBAAqB,CAAC;AAE7B,cAAc,kBAAkB,CAAC;AAEjC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IAC9B,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACvD,OAAO,CAAC,IAAI,CACV,sFAAsF,CACvF,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACnE,OAAO,CAAC,IAAI,CACV,4EAA4E,CAC7E,CAAC;AACJ,CAAC,CAAC;AAEF,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,GAAG,EAAE;IACnC,kBAAkB,EAAE,CAAC;IACrB,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC,CAAC;AAEH,OAAO;KACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;KACxB,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACf,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;KACD,OAAO,CAAC,GAAG,EAAE;IACZ,kBAAkB,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,qBAAqB,CAAC;AAE7B,cAAc,kBAAkB,CAAC;AAEjC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IAC9B,OAAO,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IACpE,OAAO,CAAC,IAAI,CACV,qEAAqE,CACtE,CAAC;IACF,OAAO,CAAC,IAAI,CACV,kEAAkE,CACnE,CAAC;IACF,OAAO,CAAC,IAAI,CACV,mEAAmE,CACpE,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACnE,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,GAAG,EAAE;IACnC,kBAAkB,EAAE,CAAC;IACrB,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC,CAAC;AAEH,oCAAoC;AACpC,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,IAAI,EAAE;IAC9C,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC/B,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,OAAO,CAAC,sBAAsB,KAAK,CAAC,IAAI,eAAe,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,MAAM,EAAE;KACL,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACf,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;KACD,OAAO,CAAC,GAAG,EAAE;IACZ,kBAAkB,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC"}
@@ -18,7 +18,7 @@ accountRead
18
18
  .description('general account info.')
19
19
  .argument('[address]', 'wallet address to check (optional)', stringToAddress)
20
20
  .action(async (providedAddress) => {
21
- const publicClient = getPublicClient();
21
+ const publicClient = await getPublicClient();
22
22
  let address;
23
23
  if (providedAddress) {
24
24
  // Use provided address
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../programs/account/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../programs/account/read.ts"],"names":[],"mappings":"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"}