@lidofinance/lsv-cli 1.1.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 (421) hide show
  1. package/dist/abi/Dashboard.d.ts +23 -3
  2. package/dist/abi/Dashboard.js +8 -3
  3. package/dist/abi/Dashboard.js.map +1 -1
  4. package/dist/abi/LazyOracle.d.ts +364 -0
  5. package/dist/abi/LazyOracle.js +2 -0
  6. package/dist/abi/LazyOracle.js.map +1 -1
  7. package/dist/abi/OperatorGrid.d.ts +24 -0
  8. package/dist/abi/OperatorGrid.js +16 -0
  9. package/dist/abi/OperatorGrid.js.map +1 -1
  10. package/dist/abi/ValidatorConsolidationRequests.d.ts +121 -0
  11. package/dist/abi/ValidatorConsolidationRequests.js +159 -0
  12. package/dist/abi/ValidatorConsolidationRequests.js.map +1 -0
  13. package/dist/abi/VaultFactory.d.ts +16 -0
  14. package/dist/abi/VaultViewer.d.ts +0 -14
  15. package/dist/abi/VaultViewer.js +0 -19
  16. package/dist/abi/VaultViewer.js.map +1 -1
  17. package/dist/abi/defi-wrapper/Distributor.d.ts +40 -2
  18. package/dist/abi/defi-wrapper/Distributor.js +52 -2
  19. package/dist/abi/defi-wrapper/Distributor.js.map +1 -1
  20. package/dist/abi/defi-wrapper/Factory.d.ts +973 -550
  21. package/dist/abi/defi-wrapper/Factory.js +720 -763
  22. package/dist/abi/defi-wrapper/Factory.js.map +1 -1
  23. package/dist/abi/defi-wrapper/StvPool.d.ts +121 -325
  24. package/dist/abi/defi-wrapper/StvPool.js +143 -413
  25. package/dist/abi/defi-wrapper/StvPool.js.map +1 -1
  26. package/dist/abi/defi-wrapper/StvStETHPool.d.ts +398 -381
  27. package/dist/abi/defi-wrapper/StvStETHPool.js +448 -433
  28. package/dist/abi/defi-wrapper/StvStETHPool.js.map +1 -1
  29. package/dist/abi/defi-wrapper/WithdrawalQueue.d.ts +309 -175
  30. package/dist/abi/defi-wrapper/WithdrawalQueue.js +381 -206
  31. package/dist/abi/defi-wrapper/WithdrawalQueue.js.map +1 -1
  32. package/dist/abi/defi-wrapper/index.d.ts +0 -1
  33. package/dist/abi/defi-wrapper/index.js +0 -1
  34. package/dist/abi/defi-wrapper/index.js.map +1 -1
  35. package/dist/abi/index.d.ts +1 -0
  36. package/dist/abi/index.js +1 -0
  37. package/dist/abi/index.js.map +1 -1
  38. package/dist/configs/constants.d.ts +44 -2
  39. package/dist/configs/constants.js +2 -2
  40. package/dist/configs/constants.js.map +1 -1
  41. package/dist/configs/deployed.d.ts +2 -2
  42. package/dist/configs/deployed.js +48 -6
  43. package/dist/configs/deployed.js.map +1 -1
  44. package/dist/configs/utils.d.ts +1 -0
  45. package/dist/configs/utils.js +8 -0
  46. package/dist/configs/utils.js.map +1 -1
  47. package/dist/contracts/dashboard-impl.d.ts +2 -2
  48. package/dist/contracts/dashboard-impl.js +3 -2
  49. package/dist/contracts/dashboard-impl.js.map +1 -1
  50. package/dist/contracts/dashboard.d.ts +2 -2
  51. package/dist/contracts/dashboard.js +3 -2
  52. package/dist/contracts/dashboard.js.map +1 -1
  53. package/dist/contracts/defi-wrapper/distributor.d.ts +1 -1
  54. package/dist/contracts/defi-wrapper/distributor.js +3 -2
  55. package/dist/contracts/defi-wrapper/distributor.js.map +1 -1
  56. package/dist/contracts/defi-wrapper/factory.d.ts +1 -1
  57. package/dist/contracts/defi-wrapper/factory.js +3 -2
  58. package/dist/contracts/defi-wrapper/factory.js.map +1 -1
  59. package/dist/contracts/defi-wrapper/index.d.ts +0 -1
  60. package/dist/contracts/defi-wrapper/index.js +0 -1
  61. package/dist/contracts/defi-wrapper/index.js.map +1 -1
  62. package/dist/contracts/defi-wrapper/stv-pool.d.ts +2 -2
  63. package/dist/contracts/defi-wrapper/stv-pool.js +3 -2
  64. package/dist/contracts/defi-wrapper/stv-pool.js.map +1 -1
  65. package/dist/contracts/defi-wrapper/stv-steth-pool.d.ts +1 -1
  66. package/dist/contracts/defi-wrapper/stv-steth-pool.js +3 -2
  67. package/dist/contracts/defi-wrapper/stv-steth-pool.js.map +1 -1
  68. package/dist/contracts/defi-wrapper/withdrawal-queue.d.ts +1 -1
  69. package/dist/contracts/defi-wrapper/withdrawal-queue.js +3 -2
  70. package/dist/contracts/defi-wrapper/withdrawal-queue.js.map +1 -1
  71. package/dist/contracts/index.d.ts +1 -0
  72. package/dist/contracts/index.js +1 -0
  73. package/dist/contracts/index.js.map +1 -1
  74. package/dist/contracts/lazy-oracle.js +3 -2
  75. package/dist/contracts/lazy-oracle.js.map +1 -1
  76. package/dist/contracts/locator.d.ts +3 -9655
  77. package/dist/contracts/locator.js +4 -3
  78. package/dist/contracts/locator.js.map +1 -1
  79. package/dist/contracts/operator-grid.d.ts +1 -1
  80. package/dist/contracts/operator-grid.js +3 -2
  81. package/dist/contracts/operator-grid.js.map +1 -1
  82. package/dist/contracts/pdg.js +3 -2
  83. package/dist/contracts/pdg.js.map +1 -1
  84. package/dist/contracts/steth.d.ts +54 -54
  85. package/dist/contracts/steth.js +3 -2
  86. package/dist/contracts/steth.js.map +1 -1
  87. package/dist/contracts/validator-consolidation-requests.d.ts +5 -0
  88. package/dist/contracts/validator-consolidation-requests.js +13 -0
  89. package/dist/contracts/validator-consolidation-requests.js.map +1 -0
  90. package/dist/contracts/vault-factory.d.ts +3 -28346
  91. package/dist/contracts/vault-factory.js +4 -3
  92. package/dist/contracts/vault-factory.js.map +1 -1
  93. package/dist/contracts/vault-hub.js +3 -2
  94. package/dist/contracts/vault-hub.js.map +1 -1
  95. package/dist/contracts/vault-viewer.d.ts +3 -9661
  96. package/dist/contracts/vault-viewer.js +9 -7
  97. package/dist/contracts/vault-viewer.js.map +1 -1
  98. package/dist/contracts/vault.d.ts +2 -2
  99. package/dist/contracts/vault.js +3 -2
  100. package/dist/contracts/vault.js.map +1 -1
  101. package/dist/contracts/wsteth.d.ts +3 -24690
  102. package/dist/contracts/wsteth.js +4 -3
  103. package/dist/contracts/wsteth.js.map +1 -1
  104. package/dist/features/consolidation.d.ts +18 -0
  105. package/dist/features/consolidation.js +199 -0
  106. package/dist/features/consolidation.js.map +1 -0
  107. package/dist/features/defi-wrapper/create-vault.d.ts +17 -0
  108. package/dist/features/defi-wrapper/create-vault.js +137 -0
  109. package/dist/features/defi-wrapper/create-vault.js.map +1 -0
  110. package/dist/features/defi-wrapper/defi-wrapper-factory.d.ts +112 -0
  111. package/dist/features/defi-wrapper/defi-wrapper-factory.js +228 -0
  112. package/dist/features/defi-wrapper/defi-wrapper-factory.js.map +1 -0
  113. package/dist/features/defi-wrapper/index.d.ts +3 -0
  114. package/dist/features/defi-wrapper/index.js +4 -0
  115. package/dist/features/defi-wrapper/index.js.map +1 -0
  116. package/dist/features/defi-wrapper/pool-info.d.ts +35 -0
  117. package/dist/features/defi-wrapper/pool-info.js +97 -0
  118. package/dist/features/defi-wrapper/pool-info.js.map +1 -0
  119. package/dist/features/deposits/check-bls-deposits.js +2 -2
  120. package/dist/features/deposits/check-bls-deposits.js.map +1 -1
  121. package/dist/features/deposits/index.d.ts +1 -0
  122. package/dist/features/deposits/index.js +1 -0
  123. package/dist/features/deposits/index.js.map +1 -1
  124. package/dist/features/deposits/make-pdg-proof.js +1 -1
  125. package/dist/features/deposits/make-pdg-proof.js.map +1 -1
  126. package/dist/features/deposits/no-pdg.d.ts +1 -1
  127. package/dist/features/deposits/no-pdg.js +6 -3
  128. package/dist/features/deposits/no-pdg.js.map +1 -1
  129. package/dist/features/deposits/pdg.d.ts +2 -0
  130. package/dist/features/deposits/pdg.js +18 -0
  131. package/dist/features/deposits/pdg.js.map +1 -0
  132. package/dist/features/dev-tools/impersonate.d.ts +14 -0
  133. package/dist/features/dev-tools/impersonate.js +64 -0
  134. package/dist/features/dev-tools/impersonate.js.map +1 -0
  135. package/dist/features/dev-tools/index.d.ts +1 -0
  136. package/dist/features/dev-tools/index.js +2 -0
  137. package/dist/features/dev-tools/index.js.map +1 -0
  138. package/dist/features/index.d.ts +4 -1
  139. package/dist/features/index.js +4 -1
  140. package/dist/features/index.js.map +1 -1
  141. package/dist/features/metrics.d.ts +4 -0
  142. package/dist/features/metrics.js +48 -0
  143. package/dist/features/metrics.js.map +1 -0
  144. package/dist/features/pdg.js +4 -0
  145. package/dist/features/pdg.js.map +1 -1
  146. package/dist/features/utils/get-boolean.d.ts +1 -0
  147. package/dist/features/utils/get-boolean.js +13 -0
  148. package/dist/features/utils/get-boolean.js.map +1 -0
  149. package/dist/features/utils/index.d.ts +1 -0
  150. package/dist/features/utils/index.js +1 -0
  151. package/dist/features/utils/index.js.map +1 -1
  152. package/dist/features/utils/quarantine.js +2 -0
  153. package/dist/features/utils/quarantine.js.map +1 -1
  154. package/dist/features/utils/report-fresh.js +2 -3
  155. package/dist/features/utils/report-fresh.js.map +1 -1
  156. package/dist/features/vault-factory.js +2 -2
  157. package/dist/features/vault-factory.js.map +1 -1
  158. package/dist/features/vault-operations/create-vault.d.ts +4 -2
  159. package/dist/features/vault-operations/create-vault.js +11 -3
  160. package/dist/features/vault-operations/create-vault.js.map +1 -1
  161. package/dist/features/vault-operations/dashboard-by-vault.js +4 -4
  162. package/dist/features/vault-operations/dashboard-by-vault.js.map +1 -1
  163. package/dist/features/vault-operations/vault-info.js +1 -1
  164. package/dist/features/vault-operations/vault-info.js.map +1 -1
  165. package/dist/features/vault-operations/vault-overview.js +1 -1
  166. package/dist/features/vault-operations/vault-overview.js.map +1 -1
  167. package/dist/features/vault-operations/vault-roles.js +3 -0
  168. package/dist/features/vault-operations/vault-roles.js.map +1 -1
  169. package/dist/features/vault-operations/vaults-by-role.js +29 -10
  170. package/dist/features/vault-operations/vaults-by-role.js.map +1 -1
  171. package/dist/features/vault.js +4 -2
  172. package/dist/features/vault.js.map +1 -1
  173. package/dist/index.js +7 -2
  174. package/dist/index.js.map +1 -1
  175. package/dist/programs/account/read.js +1 -1
  176. package/dist/programs/account/read.js.map +1 -1
  177. package/dist/programs/account/write.js +14 -0
  178. package/dist/programs/account/write.js.map +1 -1
  179. package/dist/programs/contracts/dashboard/read.js +7 -7
  180. package/dist/programs/contracts/dashboard/read.js.map +1 -1
  181. package/dist/programs/contracts/dashboard/write.js +42 -42
  182. package/dist/programs/contracts/dashboard/write.js.map +1 -1
  183. package/dist/programs/contracts/hub/config.js +0 -10
  184. package/dist/programs/contracts/hub/config.js.map +1 -1
  185. package/dist/programs/contracts/hub/read.js +63 -2
  186. package/dist/programs/contracts/hub/read.js.map +1 -1
  187. package/dist/programs/contracts/hub/write.js +1 -1
  188. package/dist/programs/contracts/hub/write.js.map +1 -1
  189. package/dist/programs/contracts/pdg/read.js +2 -1
  190. package/dist/programs/contracts/pdg/read.js.map +1 -1
  191. package/dist/programs/contracts/pdg/write.js +37 -3
  192. package/dist/programs/contracts/pdg/write.js.map +1 -1
  193. package/dist/programs/contracts/vault/write.js +16 -16
  194. package/dist/programs/contracts/vault/write.js.map +1 -1
  195. package/dist/programs/contracts/vault-factory/write.js +2 -2
  196. package/dist/programs/contracts/vault-factory/write.js.map +1 -1
  197. package/dist/programs/defi-wrapper/contracts/distributor/read.js +1 -1
  198. package/dist/programs/defi-wrapper/contracts/distributor/read.js.map +1 -1
  199. package/dist/programs/defi-wrapper/contracts/distributor/write.js +3 -3
  200. package/dist/programs/defi-wrapper/contracts/distributor/write.js.map +1 -1
  201. package/dist/programs/defi-wrapper/contracts/factory/read.js +2 -8
  202. package/dist/programs/defi-wrapper/contracts/factory/read.js.map +1 -1
  203. package/dist/programs/defi-wrapper/contracts/factory/write.js +90 -273
  204. package/dist/programs/defi-wrapper/contracts/factory/write.js.map +1 -1
  205. package/dist/programs/defi-wrapper/contracts/index.d.ts +0 -1
  206. package/dist/programs/defi-wrapper/contracts/index.js +0 -1
  207. package/dist/programs/defi-wrapper/contracts/index.js.map +1 -1
  208. package/dist/programs/defi-wrapper/contracts/stv-pool/config.js +22 -32
  209. package/dist/programs/defi-wrapper/contracts/stv-pool/config.js.map +1 -1
  210. package/dist/programs/defi-wrapper/contracts/stv-pool/read.js +17 -24
  211. package/dist/programs/defi-wrapper/contracts/stv-pool/read.js.map +1 -1
  212. package/dist/programs/defi-wrapper/contracts/stv-pool/write.js +25 -174
  213. package/dist/programs/defi-wrapper/contracts/stv-pool/write.js.map +1 -1
  214. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js +0 -90
  215. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js.map +1 -1
  216. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js +16 -23
  217. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js.map +1 -1
  218. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js +34 -231
  219. package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js.map +1 -1
  220. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js +1 -91
  221. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js.map +1 -1
  222. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js +8 -27
  223. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js.map +1 -1
  224. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js +55 -24
  225. package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js.map +1 -1
  226. package/dist/programs/defi-wrapper/index.d.ts +1 -0
  227. package/dist/programs/defi-wrapper/index.js +1 -0
  228. package/dist/programs/defi-wrapper/index.js.map +1 -1
  229. package/dist/programs/defi-wrapper/use-cases/health/index.js.map +1 -0
  230. package/dist/programs/defi-wrapper/use-cases/health/main.d.ts +1 -0
  231. package/dist/programs/defi-wrapper/use-cases/health/main.js +6 -0
  232. package/dist/programs/defi-wrapper/use-cases/health/main.js.map +1 -0
  233. package/dist/programs/defi-wrapper/use-cases/health/read.js +338 -0
  234. package/dist/programs/defi-wrapper/use-cases/health/read.js.map +1 -0
  235. package/dist/programs/defi-wrapper/use-cases/health/utils.d.ts +56 -0
  236. package/dist/programs/defi-wrapper/use-cases/health/utils.js +389 -0
  237. package/dist/programs/defi-wrapper/use-cases/health/utils.js.map +1 -0
  238. package/dist/programs/defi-wrapper/use-cases/health/write.js +254 -0
  239. package/dist/programs/defi-wrapper/use-cases/health/write.js.map +1 -0
  240. package/dist/programs/defi-wrapper/use-cases/index.d.ts +3 -0
  241. package/dist/programs/defi-wrapper/use-cases/index.js +4 -0
  242. package/dist/programs/defi-wrapper/use-cases/index.js.map +1 -0
  243. package/dist/programs/defi-wrapper/use-cases/main.d.ts +1 -0
  244. package/dist/programs/defi-wrapper/use-cases/main.js +6 -0
  245. package/dist/programs/defi-wrapper/use-cases/main.js.map +1 -0
  246. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.d.ts +1 -0
  247. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.js +143 -0
  248. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.js.map +1 -0
  249. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.d.ts +3 -0
  250. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.js +5 -0
  251. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.js.map +1 -0
  252. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.d.ts +1 -0
  253. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.js +6 -0
  254. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.js.map +1 -0
  255. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.d.ts +1 -0
  256. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.js +130 -0
  257. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.js.map +1 -0
  258. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.d.ts +1 -0
  259. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.js +13 -0
  260. package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.js.map +1 -0
  261. package/dist/programs/dev-tools/anvil/index.d.ts +2 -0
  262. package/dist/programs/dev-tools/anvil/index.js +3 -0
  263. package/dist/programs/dev-tools/anvil/index.js.map +1 -0
  264. package/dist/programs/dev-tools/anvil/main.d.ts +1 -0
  265. package/dist/programs/dev-tools/anvil/main.js +5 -0
  266. package/dist/programs/dev-tools/anvil/main.js.map +1 -0
  267. package/dist/programs/dev-tools/anvil/write.d.ts +1 -0
  268. package/dist/programs/dev-tools/anvil/write.js +122 -0
  269. package/dist/programs/dev-tools/anvil/write.js.map +1 -0
  270. package/dist/programs/dev-tools/defi-wrapper/index.d.ts +2 -0
  271. package/dist/programs/dev-tools/defi-wrapper/index.js +3 -0
  272. package/dist/programs/dev-tools/defi-wrapper/index.js.map +1 -0
  273. package/dist/programs/dev-tools/defi-wrapper/main.d.ts +1 -0
  274. package/dist/programs/dev-tools/defi-wrapper/main.js +6 -0
  275. package/dist/programs/dev-tools/defi-wrapper/main.js.map +1 -0
  276. package/dist/programs/dev-tools/defi-wrapper/write.d.ts +1 -0
  277. package/dist/programs/dev-tools/defi-wrapper/write.js +77 -0
  278. package/dist/programs/dev-tools/defi-wrapper/write.js.map +1 -0
  279. package/dist/programs/dev-tools/index.d.ts +3 -0
  280. package/dist/programs/dev-tools/index.js +4 -0
  281. package/dist/programs/dev-tools/index.js.map +1 -0
  282. package/dist/programs/dev-tools/main.d.ts +1 -0
  283. package/dist/programs/dev-tools/main.js +6 -0
  284. package/dist/programs/dev-tools/main.js.map +1 -0
  285. package/dist/programs/index.d.ts +1 -0
  286. package/dist/programs/index.js +1 -0
  287. package/dist/programs/index.js.map +1 -1
  288. package/dist/programs/pdg-helpers.js +19 -15
  289. package/dist/programs/pdg-helpers.js.map +1 -1
  290. package/dist/programs/use-cases/consolidation/index.d.ts +2 -0
  291. package/dist/programs/use-cases/consolidation/index.js +3 -0
  292. package/dist/programs/use-cases/consolidation/index.js.map +1 -0
  293. package/dist/programs/use-cases/consolidation/main.d.ts +1 -0
  294. package/dist/programs/use-cases/consolidation/main.js +5 -0
  295. package/dist/programs/use-cases/consolidation/main.js.map +1 -0
  296. package/dist/programs/use-cases/consolidation/write.d.ts +1 -0
  297. package/dist/programs/use-cases/consolidation/write.js +78 -0
  298. package/dist/programs/use-cases/consolidation/write.js.map +1 -0
  299. package/dist/programs/use-cases/deposits/read.js +4 -0
  300. package/dist/programs/use-cases/deposits/read.js.map +1 -1
  301. package/dist/programs/use-cases/deposits/write.js +41 -11
  302. package/dist/programs/use-cases/deposits/write.js.map +1 -1
  303. package/dist/programs/use-cases/index.d.ts +1 -0
  304. package/dist/programs/use-cases/index.js +1 -0
  305. package/dist/programs/use-cases/index.js.map +1 -1
  306. package/dist/programs/use-cases/metrics/read.js +9 -20
  307. package/dist/programs/use-cases/metrics/read.js.map +1 -1
  308. package/dist/programs/use-cases/vault-operations/create-vault.js +2 -2
  309. package/dist/programs/use-cases/vault-operations/create-vault.js.map +1 -1
  310. package/dist/providers/wallet.d.ts +14539 -63
  311. package/dist/providers/wallet.js +14 -4
  312. package/dist/providers/wallet.js.map +1 -1
  313. package/dist/tests/utils/bigInt.test.d.ts +1 -0
  314. package/dist/tests/utils/bigInt.test.js +61 -0
  315. package/dist/tests/utils/bigInt.test.js.map +1 -0
  316. package/dist/types/config.d.ts +1 -0
  317. package/dist/utils/arguments.d.ts +4 -0
  318. package/dist/utils/arguments.js +40 -1
  319. package/dist/utils/arguments.js.map +1 -1
  320. package/dist/utils/bigInt.d.ts +2 -0
  321. package/dist/utils/bigInt.js +3 -0
  322. package/dist/utils/bigInt.js.map +1 -0
  323. package/dist/utils/bls.d.ts +2 -2
  324. package/dist/utils/bls.js +8 -7
  325. package/dist/utils/bls.js.map +1 -1
  326. package/dist/utils/cache.d.ts +30 -0
  327. package/dist/utils/cache.js +140 -3
  328. package/dist/utils/cache.js.map +1 -1
  329. package/dist/utils/calculate-overview-v2.js +1 -2
  330. package/dist/utils/calculate-overview-v2.js.map +1 -1
  331. package/dist/utils/calculate-overview.js +1 -2
  332. package/dist/utils/calculate-overview.js.map +1 -1
  333. package/dist/utils/charts/blessed/charts-apr.js +8 -18
  334. package/dist/utils/charts/blessed/charts-apr.js.map +1 -1
  335. package/dist/utils/charts/blessed/charts-rewards.js +7 -17
  336. package/dist/utils/charts/blessed/charts-rewards.js.map +1 -1
  337. package/dist/utils/charts/blessed/datasets/prepare-metrics.d.ts +5 -5
  338. package/dist/utils/charts/blessed/datasets/prepare-metrics.js +11 -11
  339. package/dist/utils/charts/blessed/datasets/prepare-metrics.js.map +1 -1
  340. package/dist/utils/charts/simple/simple-charts.js +8 -18
  341. package/dist/utils/charts/simple/simple-charts.js.map +1 -1
  342. package/dist/utils/commands/confirmations.js +1 -1
  343. package/dist/utils/commands/confirmations.js.map +1 -1
  344. package/dist/utils/commands/report.d.ts +1 -1
  345. package/dist/utils/commands/report.js +3 -2
  346. package/dist/utils/commands/report.js.map +1 -1
  347. package/dist/utils/consolidation/checks.d.ts +7 -0
  348. package/dist/utils/consolidation/checks.js +40 -0
  349. package/dist/utils/consolidation/checks.js.map +1 -0
  350. package/dist/utils/consolidation/confirms.d.ts +4 -0
  351. package/dist/utils/consolidation/confirms.js +41 -0
  352. package/dist/utils/consolidation/confirms.js.map +1 -0
  353. package/dist/utils/consolidation/index.d.ts +6 -0
  354. package/dist/utils/consolidation/index.js +7 -0
  355. package/dist/utils/consolidation/index.js.map +1 -0
  356. package/dist/utils/consolidation/logs.d.ts +3 -0
  357. package/dist/utils/consolidation/logs.js +41 -0
  358. package/dist/utils/consolidation/logs.js.map +1 -0
  359. package/dist/utils/consolidation/pubkeys.d.ts +8 -0
  360. package/dist/utils/consolidation/pubkeys.js +40 -0
  361. package/dist/utils/consolidation/pubkeys.js.map +1 -0
  362. package/dist/utils/consolidation/types.d.ts +11 -0
  363. package/dist/utils/consolidation/types.js +2 -0
  364. package/dist/utils/consolidation/types.js.map +1 -0
  365. package/dist/utils/consolidation/validator-info.d.ts +4 -0
  366. package/dist/utils/consolidation/validator-info.js +34 -0
  367. package/dist/utils/consolidation/validator-info.js.map +1 -0
  368. package/dist/utils/consolidation/validators-checks.d.ts +10 -0
  369. package/dist/utils/consolidation/validators-checks.js +58 -0
  370. package/dist/utils/consolidation/validators-checks.js.map +1 -0
  371. package/dist/utils/fetchCL.d.ts +35 -14
  372. package/dist/utils/fetchCL.js +78 -5
  373. package/dist/utils/fetchCL.js.map +1 -1
  374. package/dist/utils/health/health-utils.d.ts +54 -54
  375. package/dist/utils/index.d.ts +1 -0
  376. package/dist/utils/index.js +1 -0
  377. package/dist/utils/index.js.map +1 -1
  378. package/dist/utils/read-programs-by-abi.d.ts +1 -1
  379. package/dist/utils/read-programs-by-abi.js +4 -18
  380. package/dist/utils/read-programs-by-abi.js.map +1 -1
  381. package/dist/utils/report/report.js +1 -1
  382. package/dist/utils/report/report.js.map +1 -1
  383. package/dist/utils/report/statistic-data.js +3 -3
  384. package/dist/utils/report/statistic-data.js.map +1 -1
  385. package/dist/utils/statistic/report-statistic.d.ts +6 -5
  386. package/dist/utils/statistic/report-statistic.js +15 -16
  387. package/dist/utils/statistic/report-statistic.js.map +1 -1
  388. package/dist/utils/transactions/tx-private-key.js +14 -9
  389. package/dist/utils/transactions/tx-private-key.js.map +1 -1
  390. package/dist/utils/transactions/tx-wc.d.ts +5 -3
  391. package/dist/utils/transactions/tx-wc.js +21 -10
  392. package/dist/utils/transactions/tx-wc.js.map +1 -1
  393. package/dist/utils/transactions/types.d.ts +4 -2
  394. package/dist/utils/wallet-connect.js +3 -3
  395. package/dist/utils/wallet-connect.js.map +1 -1
  396. package/dist/version/index.js +1 -1
  397. package/package.json +2 -2
  398. package/dist/abi/defi-wrapper/StvStrategyPool.d.ts +0 -1769
  399. package/dist/abi/defi-wrapper/StvStrategyPool.js +0 -2319
  400. package/dist/abi/defi-wrapper/StvStrategyPool.js.map +0 -1
  401. package/dist/contracts/defi-wrapper/stv-strategy-pool.d.ts +0 -4
  402. package/dist/contracts/defi-wrapper/stv-strategy-pool.js +0 -11
  403. package/dist/contracts/defi-wrapper/stv-strategy-pool.js.map +0 -1
  404. package/dist/features/defi-wrapper-factory.d.ts +0 -18
  405. package/dist/features/defi-wrapper-factory.js +0 -28
  406. package/dist/features/defi-wrapper-factory.js.map +0 -1
  407. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.d.ts +0 -3
  408. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.js +0 -214
  409. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.js.map +0 -1
  410. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/index.js.map +0 -1
  411. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.d.ts +0 -1
  412. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.js +0 -6
  413. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.js.map +0 -1
  414. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/read.js +0 -77
  415. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/read.js.map +0 -1
  416. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/write.js +0 -370
  417. package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/write.js.map +0 -1
  418. /package/dist/programs/defi-wrapper/{contracts/stv-strategy-pool → use-cases/health}/index.d.ts +0 -0
  419. /package/dist/programs/defi-wrapper/{contracts/stv-strategy-pool → use-cases/health}/index.js +0 -0
  420. /package/dist/programs/defi-wrapper/{contracts/stv-strategy-pool → use-cases/health}/read.d.ts +0 -0
  421. /package/dist/programs/defi-wrapper/{contracts/stv-strategy-pool → use-cases/health}/write.d.ts +0 -0
@@ -0,0 +1,228 @@
1
+ import { parseEventLogs, fromHex, isAddressEqual, zeroAddress, } from 'viem';
2
+ import { FactoryAbi } from '../../abi/defi-wrapper/Factory.js';
3
+ import { program } from '../../command/index.js';
4
+ import { getVaultHubContract } from '../../contracts/index.js';
5
+ import { getAddress, getConfirmExpiry, getMinDelaySeconds, getMinWithdrawalDelayTime, getNodeOperatorFeeRate, getPoolTokenName, getPoolTokenSymbol, } from '../index.js';
6
+ import { logInfo, logResult, logError, callWriteMethodWithReceipt, } from '../../utils/index.js';
7
+ // сommon filaliztion step between two pools
8
+ export const finalizePoolCreation = async (contract, vaultConfig, timelockConfig, commonPoolConfig, creationEventData) => {
9
+ if (!creationEventData.auxiliaryConfig ||
10
+ !creationEventData.strategyFactory ||
11
+ !creationEventData.strategyDeployBytes ||
12
+ !creationEventData.intermediate) {
13
+ logError('Missing required data for pool creation finalize');
14
+ return;
15
+ }
16
+ logInfo('Pool Creation Finalize');
17
+ const finalizeResult = await callWriteMethodWithReceipt({
18
+ contract,
19
+ methodName: 'createPoolFinish',
20
+ payload: [
21
+ vaultConfig,
22
+ timelockConfig,
23
+ commonPoolConfig,
24
+ creationEventData.auxiliaryConfig,
25
+ creationEventData.strategyFactory,
26
+ creationEventData.strategyDeployBytes,
27
+ creationEventData.intermediate,
28
+ ],
29
+ });
30
+ if (!finalizeResult.receipt || !finalizeResult.tx) {
31
+ logInfo('Transaction has been sent');
32
+ return;
33
+ }
34
+ const finalizeEventData = await getFinalizePoolEventData(finalizeResult.receipt, finalizeResult.tx);
35
+ await logFinalizePoolEventData(creationEventData, finalizeEventData);
36
+ };
37
+ export const getCreatePoolEventData = async (receipt, tx) => {
38
+ if (program.opts().populateTx) {
39
+ return { tx };
40
+ }
41
+ const events = parseEventLogs({
42
+ abi: FactoryAbi,
43
+ logs: receipt.logs,
44
+ strict: true,
45
+ });
46
+ const poolEvent = events.find((event) => event.eventName === 'PoolCreationStarted');
47
+ const sender = poolEvent?.args.sender;
48
+ const vaultConfig = poolEvent?.args.vaultConfig;
49
+ const commonPoolConfig = poolEvent?.args.commonPoolConfig;
50
+ const auxiliaryConfig = poolEvent?.args.auxiliaryConfig;
51
+ const timelockConfig = poolEvent?.args.timelockConfig;
52
+ const strategyFactory = poolEvent?.args.strategyFactory;
53
+ const strategyDeployBytes = poolEvent?.args.strategyDeployBytes;
54
+ const intermediate = poolEvent?.args.intermediate;
55
+ const finishDeadline = poolEvent?.args.finishDeadline;
56
+ return {
57
+ sender,
58
+ vaultConfig,
59
+ commonPoolConfig,
60
+ auxiliaryConfig,
61
+ timelockConfig,
62
+ strategyFactory,
63
+ strategyDeployBytes,
64
+ intermediate,
65
+ finishDeadline,
66
+ tx,
67
+ blockNumber: receipt.blockNumber,
68
+ };
69
+ };
70
+ export const logCreatePoolEventData = async (eventData) => {
71
+ logInfo('Pool Creation Started');
72
+ logResult({
73
+ data: [
74
+ ['Sender', eventData.sender],
75
+ ['Strategy Factory', eventData.strategyFactory],
76
+ ['Strategy Deploy Bytes', eventData.strategyDeployBytes],
77
+ ['Finish Deadline', eventData.finishDeadline],
78
+ ['Transaction Hash', eventData.tx],
79
+ ['Block Number', eventData.blockNumber],
80
+ ],
81
+ });
82
+ logInfo('Vault Config');
83
+ logResult({
84
+ data: [
85
+ ['Node Operator', eventData.vaultConfig?.nodeOperator],
86
+ ['Node Operator Manager', eventData.vaultConfig?.nodeOperatorManager],
87
+ ['Node Operator Fee BP', eventData.vaultConfig?.nodeOperatorFeeBP],
88
+ ['Confirm Expiry', eventData.vaultConfig?.confirmExpiry],
89
+ ],
90
+ });
91
+ logInfo('Common Pool Config');
92
+ logResult({
93
+ data: [
94
+ [
95
+ 'Min Withdrawal Delay Time',
96
+ eventData.commonPoolConfig?.minWithdrawalDelayTime,
97
+ ],
98
+ ['Name', eventData.commonPoolConfig?.name],
99
+ ['Symbol', eventData.commonPoolConfig?.symbol],
100
+ ],
101
+ });
102
+ logInfo('Auxiliary Config');
103
+ logResult({
104
+ data: [
105
+ ['Allowlist Enabled', eventData.auxiliaryConfig?.allowlistEnabled],
106
+ ['Minting Enabled', eventData.auxiliaryConfig?.mintingEnabled],
107
+ ['Reserve Ratio Gap BP', eventData.auxiliaryConfig?.reserveRatioGapBP],
108
+ ],
109
+ });
110
+ logInfo('Timelock Config');
111
+ logResult({
112
+ data: [
113
+ ['Min Delay Seconds', eventData.timelockConfig?.minDelaySeconds],
114
+ ['Proposer', eventData.timelockConfig?.proposer],
115
+ ['Executor', eventData.timelockConfig?.executor],
116
+ ],
117
+ });
118
+ logInfo('Intermediate');
119
+ logResult({
120
+ data: [
121
+ ['Dashboard', eventData.intermediate?.dashboard],
122
+ ['Pool Proxy', eventData.intermediate?.poolProxy],
123
+ ['Withdrawal Queue Proxy', eventData.intermediate?.withdrawalQueueProxy],
124
+ ['Timelock', eventData.intermediate?.timelock],
125
+ ],
126
+ });
127
+ };
128
+ export const getFinalizePoolEventData = async (receipt, tx) => {
129
+ if (program.opts().populateTx) {
130
+ return { tx };
131
+ }
132
+ const events = parseEventLogs({
133
+ abi: FactoryAbi,
134
+ logs: receipt.logs,
135
+ });
136
+ const poolEvent = events.find((event) => event.eventName === 'PoolCreated');
137
+ const vault = poolEvent?.args.vault;
138
+ const pool = poolEvent?.args.pool;
139
+ const poolType = poolEvent?.args.poolType;
140
+ const withdrawalQueue = poolEvent?.args.withdrawalQueue;
141
+ const strategyFactory = poolEvent?.args.strategyFactory;
142
+ const strategyDeployBytes = poolEvent?.args.strategyDeployBytes;
143
+ const strategy = poolEvent?.args.strategy;
144
+ return {
145
+ vault,
146
+ pool,
147
+ poolType,
148
+ withdrawalQueue,
149
+ strategyFactory,
150
+ strategyDeployBytes,
151
+ strategy,
152
+ tx,
153
+ blockNumber: receipt.blockNumber,
154
+ };
155
+ };
156
+ export const logFinalizePoolEventData = async (createEventData, finalizeEventData) => {
157
+ const poolType = finalizeEventData.poolType &&
158
+ fromHex(finalizeEventData.poolType, 'string').replace(/\W/g, '');
159
+ logInfo('Pool Creation Finalized');
160
+ logResult({
161
+ data: [
162
+ ['Vault', finalizeEventData.vault],
163
+ ['Pool', finalizeEventData.pool],
164
+ ['Pool Type', poolType],
165
+ ['Withdrawal Queue', finalizeEventData.withdrawalQueue],
166
+ ['Timelock', createEventData.intermediate?.timelock],
167
+ ['Strategy Factory', finalizeEventData.strategyFactory],
168
+ ['Strategy Deploy Bytes', finalizeEventData.strategyDeployBytes],
169
+ ['Strategy', finalizeEventData.strategy],
170
+ ['Transaction Hash', finalizeEventData.tx],
171
+ ['Block Number', finalizeEventData.blockNumber],
172
+ ],
173
+ });
174
+ // log UI strategy ENV only if it's not the zero address - meaning it's stvStrategyPool
175
+ const strategyDataEntry = finalizeEventData.strategy &&
176
+ !isAddressEqual(finalizeEventData.strategy, zeroAddress)
177
+ ? [['VITE_STRATEGY_ADDRESS', finalizeEventData.strategy]]
178
+ : [];
179
+ logInfo('UI Environment Variables:');
180
+ logResult({
181
+ data: [
182
+ ['VITE_POOL_TYPE', poolType],
183
+ ['VITE_POOL_ADDRESS', finalizeEventData.pool],
184
+ ...strategyDataEntry,
185
+ ],
186
+ });
187
+ };
188
+ export const promtBaseVaultConfiguration = async ({ nodeOperator, nodeOperatorManager, nodeOperatorFeeRate, confirmExpiry, minDelaySeconds, proposer, executor, emergencyCommittee, minWithdrawalDelayTime, name, symbol, }) => {
189
+ const vaultHubContract = await getVaultHubContract();
190
+ const CONNECT_DEPOSIT = await vaultHubContract.read.CONNECT_DEPOSIT();
191
+ const nodeOperatorAddress = await getAddress(nodeOperator, 'Node Operator');
192
+ const nodeOperatorManagerAddress = await getAddress(nodeOperatorManager, 'Node Operator Manager');
193
+ const nodeOperatorFeeRateValue = await getNodeOperatorFeeRate(nodeOperatorFeeRate);
194
+ const confirmExpiryValue = await getConfirmExpiry({
195
+ confirmExpiry,
196
+ });
197
+ const minDelaySecondsValue = await getMinDelaySeconds(minDelaySeconds);
198
+ const proposerAddress = await getAddress(proposer, 'Proposer');
199
+ const executorAddress = await getAddress(executor, 'Executor');
200
+ const emergencyCommitteeAddress = await getAddress(emergencyCommittee, 'Emergency Committee');
201
+ const minWithdrawalDelayTimeValue = await getMinWithdrawalDelayTime(minWithdrawalDelayTime);
202
+ const nameValue = await getPoolTokenName(name);
203
+ const symbolValue = await getPoolTokenSymbol(symbol);
204
+ const vaultConfig = {
205
+ nodeOperator: nodeOperatorAddress,
206
+ nodeOperatorManager: nodeOperatorManagerAddress,
207
+ nodeOperatorFeeBP: BigInt(nodeOperatorFeeRateValue),
208
+ confirmExpiry: BigInt(confirmExpiryValue),
209
+ };
210
+ const timelockConfig = {
211
+ minDelaySeconds: BigInt(minDelaySecondsValue),
212
+ proposer: proposerAddress,
213
+ executor: executorAddress,
214
+ };
215
+ const commonPoolConfig = {
216
+ minWithdrawalDelayTime: BigInt(minWithdrawalDelayTimeValue),
217
+ name: nameValue,
218
+ symbol: symbolValue,
219
+ emergencyCommittee: emergencyCommitteeAddress,
220
+ };
221
+ return {
222
+ vaultConfig,
223
+ timelockConfig,
224
+ commonPoolConfig,
225
+ CONNECT_DEPOSIT,
226
+ };
227
+ };
228
+ //# sourceMappingURL=defi-wrapper-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defi-wrapper-factory.js","sourceRoot":"","sources":["../../../features/defi-wrapper/defi-wrapper-factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './create-vault.js';
2
+ export * from './defi-wrapper-factory.js';
3
+ export * from './pool-info.js';
@@ -0,0 +1,4 @@
1
+ export * from './create-vault.js';
2
+ export * from './defi-wrapper-factory.js';
3
+ export * from './pool-info.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../features/defi-wrapper/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,35 @@
1
+ import { Address } from 'viem';
2
+ export declare const getPoolInfo: (address: Address) => Promise<{
3
+ poolTypeName: string;
4
+ isStvStethPool: boolean;
5
+ isStvPool: boolean;
6
+ WSTETH?: `0x${string}` | undefined;
7
+ RESERVE_RATIO_GAP_BP?: bigint | undefined;
8
+ totalMintedStethShares?: bigint | undefined;
9
+ reserveRatioBP?: bigint | undefined;
10
+ forcedRebalanceThresholdBP?: bigint | undefined;
11
+ totalExceedingMintedStethShares?: bigint | undefined;
12
+ totalExceedingMintedSteth?: bigint | undefined;
13
+ maxLossSocializationBP?: bigint | undefined;
14
+ isMintingPaused?: boolean | undefined;
15
+ MINTING_FEATURE?: `0x${string}` | undefined;
16
+ vault: `0x${string}`;
17
+ stETH: `0x${string}`;
18
+ Dashboard: `0x${string}`;
19
+ VaultHub: `0x${string}`;
20
+ WithdrawalQueue: `0x${string}`;
21
+ Distributor: `0x${string}`;
22
+ poolType: `0x${string}`;
23
+ totalNominalAssets: bigint;
24
+ totalAssets: bigint;
25
+ totalSupply: bigint;
26
+ totalLiabilityShares: bigint;
27
+ totalUnassignedLiabilityShares: bigint;
28
+ totalUnassignedLiabilitySteth: bigint;
29
+ decimals: number;
30
+ isDepositsPaused: boolean;
31
+ ALLOW_LIST_ENABLED: boolean;
32
+ DEPOSITS_FEATURE: `0x${string}`;
33
+ allowListSize: bigint;
34
+ isReportFresh: boolean;
35
+ }>;
@@ -0,0 +1,97 @@
1
+ import { fromHex } from 'viem';
2
+ import { getStvStethPoolContract, getStvPoolContract, } from '../../contracts/defi-wrapper/index.js';
3
+ import { callReadMethodSilent } from '../../utils/index.js';
4
+ import { reportFreshWarning } from '../index.js';
5
+ const STV_POOL_NAME = 'StvPool';
6
+ const STV_STETH_POOL_NAME = 'StvStETHPool';
7
+ const STV_STRATEGY_POOL_NAME = 'StvStrategyPool';
8
+ const getStvPoolInfo = async (address) => {
9
+ const contract = await getStvPoolContract(address);
10
+ const [vault, stETH, Dashboard, VaultHub, WithdrawalQueue, Distributor, poolType, totalNominalAssets, totalAssets, totalSupply, totalLiabilityShares, totalUnassignedLiabilityShares, totalUnassignedLiabilitySteth, decimals, DEPOSITS_FEATURE, ALLOW_LIST_ENABLED, allowListSize,] = await Promise.all([
11
+ contract.read.VAULT(),
12
+ contract.read.STETH(),
13
+ contract.read.DASHBOARD(),
14
+ contract.read.VAULT_HUB(),
15
+ contract.read.WITHDRAWAL_QUEUE(),
16
+ contract.read.DISTRIBUTOR(),
17
+ contract.read.poolType(),
18
+ contract.read.totalNominalAssets(),
19
+ contract.read.totalAssets(),
20
+ contract.read.totalSupply(),
21
+ contract.read.totalLiabilityShares(),
22
+ contract.read.totalUnassignedLiabilityShares(),
23
+ contract.read.totalUnassignedLiabilitySteth(),
24
+ contract.read.decimals(),
25
+ contract.read.DEPOSITS_FEATURE(),
26
+ contract.read.ALLOW_LIST_ENABLED(),
27
+ contract.read.getAllowListSize(),
28
+ ]);
29
+ const isDepositsPaused = await callReadMethodSilent(contract, 'isFeaturePaused', [DEPOSITS_FEATURE]);
30
+ const isReportFresh = await reportFreshWarning(vault);
31
+ return {
32
+ vault,
33
+ stETH,
34
+ Dashboard,
35
+ VaultHub,
36
+ WithdrawalQueue,
37
+ Distributor,
38
+ poolType,
39
+ totalNominalAssets,
40
+ totalAssets,
41
+ totalSupply,
42
+ totalLiabilityShares,
43
+ totalUnassignedLiabilityShares,
44
+ totalUnassignedLiabilitySteth,
45
+ decimals,
46
+ isDepositsPaused,
47
+ ALLOW_LIST_ENABLED,
48
+ DEPOSITS_FEATURE,
49
+ allowListSize,
50
+ isReportFresh,
51
+ };
52
+ };
53
+ const getStvStethPoolInfo = async (address) => {
54
+ const contract = await getStvStethPoolContract(address);
55
+ const [WSTETH, RESERVE_RATIO_GAP_BP, totalMintedStethShares, reserveRatioBP, forcedRebalanceThresholdBP, totalExceedingMintedStethShares, totalExceedingMintedSteth, maxLossSocializationBP, MINTING_FEATURE,] = await Promise.all([
56
+ contract.read.WSTETH(),
57
+ contract.read.RESERVE_RATIO_GAP_BP(),
58
+ contract.read.totalMintedStethShares(),
59
+ contract.read.reserveRatioBP(),
60
+ contract.read.forcedRebalanceThresholdBP(),
61
+ contract.read.totalExceedingMintedStethShares(),
62
+ contract.read.totalExceedingMintedSteth(),
63
+ contract.read.maxLossSocializationBP(),
64
+ contract.read.MINTING_FEATURE(),
65
+ ]);
66
+ const isMintingPaused = await callReadMethodSilent(contract, 'isFeaturePaused', [MINTING_FEATURE]);
67
+ return {
68
+ WSTETH,
69
+ RESERVE_RATIO_GAP_BP,
70
+ totalMintedStethShares,
71
+ reserveRatioBP,
72
+ forcedRebalanceThresholdBP,
73
+ totalExceedingMintedStethShares,
74
+ totalExceedingMintedSteth,
75
+ maxLossSocializationBP,
76
+ isMintingPaused,
77
+ MINTING_FEATURE,
78
+ };
79
+ };
80
+ export const getPoolInfo = async (address) => {
81
+ const stvPoolInfo = await getStvPoolInfo(address);
82
+ const poolTypeName = fromHex(stvPoolInfo.poolType, 'string').replace(/\W/g, '');
83
+ const isStvStethPool = poolTypeName === STV_STETH_POOL_NAME ||
84
+ poolTypeName === STV_STRATEGY_POOL_NAME;
85
+ const isStvPool = poolTypeName === STV_POOL_NAME;
86
+ const stvStethPoolInfo = isStvStethPool
87
+ ? await getStvStethPoolInfo(address)
88
+ : null;
89
+ return {
90
+ ...stvPoolInfo,
91
+ ...(stvStethPoolInfo ? stvStethPoolInfo : {}),
92
+ poolTypeName,
93
+ isStvStethPool,
94
+ isStvPool,
95
+ };
96
+ };
97
+ //# sourceMappingURL=pool-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pool-info.js","sourceRoot":"","sources":["../../../features/defi-wrapper/pool-info.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { callReadMethod, isValidBLSDeposit } from '../../utils/index.js';
2
2
  export const checkBLSDeposits = async (vaultContract, deposits) => {
3
3
  const withdrawalCredentials = await callReadMethod(vaultContract, 'withdrawalCredentials');
4
4
  for (const deposit of deposits) {
5
- const isBLSValid = isValidBLSDeposit(deposit, withdrawalCredentials);
5
+ const isBLSValid = await isValidBLSDeposit(deposit, withdrawalCredentials);
6
6
  if (!isBLSValid) {
7
7
  throw new Error(`❌ Offchain - BLS signature is not valid for Pubkey ${deposit.pubkey}`);
8
8
  }
@@ -12,7 +12,7 @@ export const checkBLSWithAmountDeposits = async (pdgContract, vaultContract, dep
12
12
  const PREDEPOSIT_AMOUNT = await callReadMethod(pdgContract, 'PREDEPOSIT_AMOUNT');
13
13
  const withdrawalCredentials = await callReadMethod(vaultContract, 'withdrawalCredentials');
14
14
  for (const deposit of deposits) {
15
- const isBLSValid = isValidBLSDeposit(deposit, withdrawalCredentials);
15
+ const isBLSValid = await isValidBLSDeposit(deposit, withdrawalCredentials);
16
16
  if (deposit.amount !== PREDEPOSIT_AMOUNT) {
17
17
  throw new Error(`❌ Deposit amount is not equal to PREDEPOSIT_AMOUNT for pubkey ${deposit.pubkey}`);
18
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"check-bls-deposits.js","sourceRoot":"","sources":["../../../features/deposits/check-bls-deposits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI1D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,aAAmC,EACnC,QAAmB,EACnB,EAAE;IACF,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAChD,aAAa,EACb,uBAAuB,CACxB,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAErE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,sDAAsD,OAAO,CAAC,MAAM,EAAE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAC7C,WAAwC,EACxC,aAAmC,EACnC,QAAmB,EACnB,EAAE;IACF,MAAM,iBAAiB,GAAG,MAAM,cAAc,CAC5C,WAAW,EACX,mBAAmB,CACpB,CAAC;IACF,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAChD,aAAa,EACb,uBAAuB,CACxB,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAErE,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CACb,iEAAiE,OAAO,CAAC,MAAM,EAAE,CAClF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,sDAAsD,OAAO,CAAC,MAAM,EAAE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"check-bls-deposits.js","sourceRoot":"","sources":["../../../features/deposits/check-bls-deposits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI1D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,aAAmC,EACnC,QAAmB,EACnB,EAAE;IACF,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAChD,aAAa,EACb,uBAAuB,CACxB,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAE3E,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,sDAAsD,OAAO,CAAC,MAAM,EAAE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAC7C,WAAwC,EACxC,aAAmC,EACnC,QAAmB,EACnB,EAAE;IACF,MAAM,iBAAiB,GAAG,MAAM,cAAc,CAC5C,WAAW,EACX,mBAAmB,CACpB,CAAC;IACF,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAChD,aAAa,EACb,uBAAuB,CACxB,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAE3E,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CACb,iEAAiE,OAAO,CAAC,MAAM,EAAE,CAClF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,sDAAsD,OAAO,CAAC,MAAM,EAAE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './check-bls-deposits.js';
2
2
  export * from './make-pdg-proof.js';
3
3
  export * from './no-pdg.js';
4
+ export * from './pdg.js';
@@ -1,4 +1,5 @@
1
1
  export * from './check-bls-deposits.js';
2
2
  export * from './make-pdg-proof.js';
3
3
  export * from './no-pdg.js';
4
+ export * from './pdg.js';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../features/deposits/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../features/deposits/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
@@ -4,7 +4,7 @@ import { getStakingVaultContract, } from '../../contracts/index.js';
4
4
  import { VALIDATOR_STAGES } from '../../features/pdg.js';
5
5
  export const checkValidatorStageAndStagedBalanceForActivation = async (pdgContract, pubkey) => {
6
6
  const { stage, stakingVault } = await callReadMethodSilent(pdgContract, 'validatorStatus', [pubkey]);
7
- const vaultStagedBalance = await callReadMethodSilent(getStakingVaultContract(stakingVault), 'stagedBalance');
7
+ const vaultStagedBalance = await callReadMethodSilent(await getStakingVaultContract(stakingVault), 'stagedBalance');
8
8
  const ACTIVATION_DEPOSIT_AMOUNT = await callReadMethodSilent(pdgContract, 'ACTIVATION_DEPOSIT_AMOUNT');
9
9
  if (vaultStagedBalance < ACTIVATION_DEPOSIT_AMOUNT) {
10
10
  throw new Error(`Staged balance is less than ${formatEther(ACTIVATION_DEPOSIT_AMOUNT)} ETH (current: ${formatEther(vaultStagedBalance)} ETH)`);
@@ -1 +1 @@
1
- {"version":3,"file":"make-pdg-proof.js","sourceRoot":"","sources":["../../../features/deposits/make-pdg-proof.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"make-pdg-proof.js","sourceRoot":"","sources":["../../../features/deposits/make-pdg-proof.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ export declare const checkNOBalancePDGforDeposits: (pdgContract: PredepositGuara
13
13
  amountToTopUp: bigint;
14
14
  isNeedTopUp: boolean;
15
15
  }>;
16
- export declare const checkNodeOperatorForDeposit: (vault: StakingVaultContract) => Promise<`0x${string}`>;
16
+ export declare const checkNodeOperatorOrDepositorForDeposit: (vault: StakingVaultContract, pdg: PredepositGuaranteeContract) => Promise<`0x${string}`>;
17
17
  export declare const checkAndSpecifyNodeOperatorForTopUpOrWithdraw: (vault: StakingVaultContract, pdg: PredepositGuaranteeContract, isTopUp: boolean) => Promise<`0x${string}`>;
18
18
  export declare const getGuarantor: (pdgContract: PredepositGuaranteeContract) => Promise<{
19
19
  newGuarantor: any;
@@ -37,12 +37,15 @@ export const checkNOBalancePDGforDeposits = async (pdgContract, nodeOperator, co
37
37
  }
38
38
  return { amountToTopUp, isNeedTopUp };
39
39
  };
40
- export const checkNodeOperatorForDeposit = async (vault) => {
40
+ export const checkNodeOperatorOrDepositorForDeposit = async (vault, pdg) => {
41
41
  const currentAccount = await getAccount();
42
42
  const vaultNodeOperator = await callReadMethodSilent(vault, 'nodeOperator');
43
- if (vaultNodeOperator.toLocaleLowerCase() !==
43
+ const noDepositor = await callReadMethodSilent(pdg, 'nodeOperatorDepositor', [
44
+ vaultNodeOperator,
45
+ ]);
46
+ if (noDepositor.toLocaleLowerCase() !==
44
47
  currentAccount.address.toLocaleLowerCase()) {
45
- throw new Error(`You are not the node operator of the vault ${vault.address}. Only node operator can deposit from the vault.`);
48
+ throw new Error(`You are not the depositor of the node operator ${vaultNodeOperator}. Only depositor can deposit from the vault.`);
46
49
  }
47
50
  return vaultNodeOperator;
48
51
  };
@@ -1 +1 @@
1
- {"version":3,"file":"no-pdg.js","sourceRoot":"","sources":["../../../features/deposits/no-pdg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"no-pdg.js","sourceRoot":"","sources":["../../../features/deposits/no-pdg.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { PredepositGuaranteeContract } from '../../contracts/index.js';
2
+ export declare const checkPdgIsPaused: (pdgContract: PredepositGuaranteeContract) => Promise<boolean>;
@@ -0,0 +1,18 @@
1
+ import { mainnet } from 'viem/chains';
2
+ import { callReadMethodSilent, logInfo } from '../../utils/index.js';
3
+ import { getChain } from '../../configs/index.js';
4
+ export const checkPdgIsPaused = async (pdgContract) => {
5
+ const chain = await getChain();
6
+ const isMainnet = chain.id === mainnet.id;
7
+ const isPaused = await callReadMethodSilent(pdgContract, 'isPaused');
8
+ if (isPaused) {
9
+ const message = isMainnet
10
+ ? 'PredepositGuarantee contract is paused until Phase 2'
11
+ : 'PredepositGuarantee contract is paused until Mainnet Voting starts';
12
+ logInfo('⚠️ '.repeat(10));
13
+ logInfo(message);
14
+ logInfo('⚠️ '.repeat(10));
15
+ }
16
+ return isPaused;
17
+ };
18
+ //# sourceMappingURL=pdg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdg.js","sourceRoot":"","sources":["../../../features/deposits/pdg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,WAAwC,EACxC,EAAE;IACF,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;IAE1C,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAErE,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,SAAS;YACvB,CAAC,CAAC,sDAAsD;YACxD,CAAC,CAAC,oEAAoE,CAAC;QACzE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1B,OAAO,CAAC,OAAO,CAAC,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { type Address } from 'viem';
2
+ export declare const grantRoleFromImpersonatedAccount: ({ currentAccount, contract, impersonateAccount, role, roleName, }: {
3
+ currentAccount: Address;
4
+ contract: any;
5
+ impersonateAccount: Address;
6
+ role: string;
7
+ roleName: string;
8
+ }) => Promise<void>;
9
+ export declare const callMethodFromImpersonatedAccount: ({ contract, functionName, args, impersonateAccount, }: {
10
+ contract: any;
11
+ functionName: string;
12
+ args: any[];
13
+ impersonateAccount: Address;
14
+ }) => Promise<void>;
@@ -0,0 +1,64 @@
1
+ import { createTestClient, http, publicActions, walletActions, createWalletClient, parseEther, } from 'viem';
2
+ import { logInfo, callReadMethodSilent } from '../../utils/index.js';
3
+ import { getChain, getElUrl } from '../../configs/index.js';
4
+ export const grantRoleFromImpersonatedAccount = async ({ currentAccount, contract, impersonateAccount, role, roleName, }) => {
5
+ const testClient = createTestClient({
6
+ chain: await getChain(),
7
+ mode: 'anvil',
8
+ transport: http(getElUrl()),
9
+ })
10
+ .extend(publicActions)
11
+ .extend(walletActions);
12
+ await testClient.impersonateAccount({
13
+ address: impersonateAccount,
14
+ });
15
+ await testClient.setBalance({
16
+ address: impersonateAccount,
17
+ value: parseEther('10'),
18
+ });
19
+ const walletClient = createWalletClient({
20
+ account: impersonateAccount,
21
+ chain: await getChain(),
22
+ transport: http(getElUrl()),
23
+ });
24
+ logInfo(`Granting ${roleName} to account...`);
25
+ await walletClient.writeContract({
26
+ address: contract.address,
27
+ abi: contract.abi,
28
+ functionName: 'grantRole',
29
+ args: [role, currentAccount],
30
+ });
31
+ const roleMembersAfter = await callReadMethodSilent(contract, 'getRoleMembers', [role]);
32
+ logInfo('Role members after granting: ', roleMembersAfter);
33
+ if (!roleMembersAfter.includes(currentAccount)) {
34
+ logInfo(`Address ${currentAccount} does not have the ${roleName} role`);
35
+ return;
36
+ }
37
+ logInfo(`${roleName} granted successfully`);
38
+ };
39
+ export const callMethodFromImpersonatedAccount = async ({ contract, functionName, args, impersonateAccount, }) => {
40
+ const testClient = createTestClient({
41
+ chain: await getChain(),
42
+ mode: 'anvil',
43
+ transport: http(getElUrl()),
44
+ })
45
+ .extend(publicActions)
46
+ .extend(walletActions);
47
+ await testClient.impersonateAccount({
48
+ address: impersonateAccount,
49
+ });
50
+ const walletClient = createWalletClient({
51
+ account: impersonateAccount,
52
+ chain: await getChain(),
53
+ transport: http(getElUrl()),
54
+ });
55
+ logInfo(`Calling ${functionName} with args ${args}...`);
56
+ await walletClient.writeContract({
57
+ address: contract.address,
58
+ abi: contract.abi,
59
+ functionName: functionName,
60
+ args: args,
61
+ });
62
+ logInfo(`${functionName} called successfully`);
63
+ };
64
+ //# sourceMappingURL=impersonate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"impersonate.js","sourceRoot":"","sources":["../../../features/dev-tools/impersonate.ts"],"names":[],"mappings":"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"}