@lidofinance/lsv-cli 1.0.0-alpha.2 → 1.0.0-alpha.21

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 (219) hide show
  1. package/README.md +578 -1
  2. package/dist/abi/CLProofVerifier.js +279 -0
  3. package/dist/abi/CLProofVerifier.js.map +1 -0
  4. package/dist/abi/Dashboard.js +1498 -0
  5. package/dist/abi/Dashboard.js.map +1 -0
  6. package/dist/abi/Delegation.js +1786 -0
  7. package/dist/abi/Delegation.js.map +1 -0
  8. package/dist/abi/LidoLocator.js +426 -0
  9. package/dist/abi/LidoLocator.js.map +1 -0
  10. package/dist/abi/PredepositGuarantee.js +1733 -0
  11. package/dist/abi/PredepositGuarantee.js.map +1 -0
  12. package/dist/abi/StEth.js +493 -0
  13. package/dist/abi/StEth.js.map +1 -0
  14. package/dist/abi/StakingVault.js +978 -0
  15. package/dist/abi/StakingVault.js.map +1 -0
  16. package/dist/abi/TokenManager.js +756 -0
  17. package/dist/abi/TokenManager.js.map +1 -0
  18. package/dist/abi/VaultFactory.js +246 -0
  19. package/dist/abi/VaultFactory.js.map +1 -0
  20. package/dist/abi/VaultHub.js +1138 -439
  21. package/dist/abi/VaultHub.js.map +1 -1
  22. package/dist/abi/VaultViewer.js +297 -0
  23. package/dist/abi/VaultViewer.js.map +1 -0
  24. package/dist/abi/Voting.js +884 -0
  25. package/dist/abi/Voting.js.map +1 -0
  26. package/dist/abi/index.js +13 -0
  27. package/dist/abi/index.js.map +1 -0
  28. package/dist/command/index.js +4 -5
  29. package/dist/command/index.js.map +1 -1
  30. package/dist/configs/constants.js +3 -0
  31. package/dist/configs/constants.js.map +1 -0
  32. package/dist/configs/deployed.js +114 -53
  33. package/dist/configs/deployed.js.map +1 -1
  34. package/dist/configs/envs.js +10 -28
  35. package/dist/configs/envs.js.map +1 -1
  36. package/dist/configs/index.js +3 -18
  37. package/dist/configs/index.js.map +1 -1
  38. package/dist/configs/utils.js +26 -0
  39. package/dist/configs/utils.js.map +1 -0
  40. package/dist/contracts/clProofVerifier.js +29 -0
  41. package/dist/contracts/clProofVerifier.js.map +1 -0
  42. package/dist/contracts/dashboard.js +11 -0
  43. package/dist/contracts/dashboard.js.map +1 -0
  44. package/dist/contracts/delegation.js +11 -0
  45. package/dist/contracts/delegation.js.map +1 -0
  46. package/dist/contracts/index.js +12 -17
  47. package/dist/contracts/index.js.map +1 -1
  48. package/dist/contracts/locator.js +16 -0
  49. package/dist/contracts/locator.js.map +1 -0
  50. package/dist/contracts/pdg.js +17 -0
  51. package/dist/contracts/pdg.js.map +1 -0
  52. package/dist/contracts/steth.js +15 -0
  53. package/dist/contracts/steth.js.map +1 -0
  54. package/dist/contracts/token-manager.js +16 -0
  55. package/dist/contracts/token-manager.js.map +1 -0
  56. package/dist/contracts/vault-factory.js +14 -0
  57. package/dist/contracts/vault-factory.js.map +1 -0
  58. package/dist/contracts/vault-hub.js +14 -17
  59. package/dist/contracts/vault-hub.js.map +1 -1
  60. package/dist/contracts/vault-viewer.js +25 -0
  61. package/dist/contracts/vault-viewer.js.map +1 -0
  62. package/dist/contracts/vault.js +14 -0
  63. package/dist/contracts/vault.js.map +1 -0
  64. package/dist/contracts/voting.js +18 -0
  65. package/dist/contracts/voting.js.map +1 -0
  66. package/dist/features/advanced-config.js +16 -0
  67. package/dist/features/advanced-config.js.map +1 -0
  68. package/dist/features/dashboard-delegation.js +25 -0
  69. package/dist/features/dashboard-delegation.js.map +1 -0
  70. package/dist/features/index.js +5 -0
  71. package/dist/features/index.js.map +1 -0
  72. package/dist/features/token-manager.js +7 -0
  73. package/dist/features/token-manager.js.map +1 -0
  74. package/dist/features/vault-factory.js +25 -0
  75. package/dist/features/vault-factory.js.map +1 -0
  76. package/dist/features/voting.js +125 -0
  77. package/dist/features/voting.js.map +1 -0
  78. package/dist/index.js +6 -5
  79. package/dist/index.js.map +1 -1
  80. package/dist/programs/account.js +29 -0
  81. package/dist/programs/account.js.map +1 -0
  82. package/dist/programs/config.js +31 -0
  83. package/dist/programs/config.js.map +1 -0
  84. package/dist/programs/dashboard/config.js +65 -0
  85. package/dist/programs/dashboard/config.js.map +1 -0
  86. package/dist/programs/dashboard/index.js +4 -0
  87. package/dist/programs/dashboard/index.js.map +1 -0
  88. package/dist/programs/dashboard/main.js +12 -0
  89. package/dist/programs/dashboard/main.js.map +1 -0
  90. package/dist/programs/dashboard/read.js +25 -0
  91. package/dist/programs/dashboard/read.js.map +1 -0
  92. package/dist/programs/dashboard/write.js +302 -0
  93. package/dist/programs/dashboard/write.js.map +1 -0
  94. package/dist/programs/delegation/config.js +33 -0
  95. package/dist/programs/delegation/config.js.map +1 -0
  96. package/dist/programs/delegation/index.js +4 -0
  97. package/dist/programs/delegation/index.js.map +1 -0
  98. package/dist/programs/delegation/main.js +12 -0
  99. package/dist/programs/delegation/main.js.map +1 -0
  100. package/dist/programs/delegation/read.js +98 -0
  101. package/dist/programs/delegation/read.js.map +1 -0
  102. package/dist/programs/delegation/write.js +327 -0
  103. package/dist/programs/delegation/write.js.map +1 -0
  104. package/dist/programs/hub/config.js +127 -0
  105. package/dist/programs/hub/config.js.map +1 -0
  106. package/dist/programs/hub/index.js +4 -0
  107. package/dist/programs/hub/index.js.map +1 -0
  108. package/dist/programs/hub/main.js +12 -0
  109. package/dist/programs/hub/main.js.map +1 -0
  110. package/dist/programs/hub/read.js +62 -0
  111. package/dist/programs/hub/read.js.map +1 -0
  112. package/dist/programs/hub/write.js +109 -0
  113. package/dist/programs/hub/write.js.map +1 -0
  114. package/dist/programs/index.js +10 -17
  115. package/dist/programs/index.js.map +1 -1
  116. package/dist/programs/pdg/config.js +97 -0
  117. package/dist/programs/pdg/config.js.map +1 -0
  118. package/dist/programs/pdg/index.js +4 -0
  119. package/dist/programs/pdg/index.js.map +1 -0
  120. package/dist/programs/pdg/main.js +12 -0
  121. package/dist/programs/pdg/main.js.map +1 -0
  122. package/dist/programs/pdg/read.js +7 -0
  123. package/dist/programs/pdg/read.js.map +1 -0
  124. package/dist/programs/pdg/write.js +114 -0
  125. package/dist/programs/pdg/write.js.map +1 -0
  126. package/dist/programs/pdg-helpers.js +90 -0
  127. package/dist/programs/pdg-helpers.js.map +1 -0
  128. package/dist/programs/vault/config.js +66 -0
  129. package/dist/programs/vault/config.js.map +1 -0
  130. package/dist/programs/vault/index.js +4 -0
  131. package/dist/programs/vault/index.js.map +1 -0
  132. package/dist/programs/vault/main.js +10 -0
  133. package/dist/programs/vault/main.js.map +1 -0
  134. package/dist/programs/vault/read.js +53 -0
  135. package/dist/programs/vault/read.js.map +1 -0
  136. package/dist/programs/vault/write.js +123 -0
  137. package/dist/programs/vault/write.js.map +1 -0
  138. package/dist/programs/vault-factory/config.js +2 -0
  139. package/dist/programs/vault-factory/config.js.map +1 -0
  140. package/dist/programs/vault-factory/index.js +4 -0
  141. package/dist/programs/vault-factory/index.js.map +1 -0
  142. package/dist/programs/vault-factory/main.js +12 -0
  143. package/dist/programs/vault-factory/main.js.map +1 -0
  144. package/dist/programs/vault-factory/read.js +26 -0
  145. package/dist/programs/vault-factory/read.js.map +1 -0
  146. package/dist/programs/vault-factory/write.js +110 -0
  147. package/dist/programs/vault-factory/write.js.map +1 -0
  148. package/dist/programs/vault-viewer/config.js +85 -0
  149. package/dist/programs/vault-viewer/config.js.map +1 -0
  150. package/dist/programs/vault-viewer/index.js +3 -0
  151. package/dist/programs/vault-viewer/index.js.map +1 -0
  152. package/dist/programs/vault-viewer/main.js +10 -0
  153. package/dist/programs/vault-viewer/main.js.map +1 -0
  154. package/dist/programs/vault-viewer/read.js +55 -0
  155. package/dist/programs/vault-viewer/read.js.map +1 -0
  156. package/dist/programs/voting.js +33 -0
  157. package/dist/programs/voting.js.map +1 -0
  158. package/dist/providers/index.js +1 -17
  159. package/dist/providers/index.js.map +1 -1
  160. package/dist/providers/wallet.js +20 -32
  161. package/dist/providers/wallet.js.map +1 -1
  162. package/dist/types/common.js +2 -0
  163. package/dist/types/common.js.map +1 -0
  164. package/dist/types/config.js +2 -0
  165. package/dist/types/config.js.map +1 -0
  166. package/dist/types/index.js +3 -0
  167. package/dist/types/index.js.map +1 -0
  168. package/dist/utils/contract.js +98 -0
  169. package/dist/utils/contract.js.map +1 -0
  170. package/dist/utils/data-validators.js +69 -0
  171. package/dist/utils/data-validators.js.map +1 -0
  172. package/dist/utils/error-handler.js +7 -0
  173. package/dist/utils/error-handler.js.map +1 -0
  174. package/dist/utils/get-commands.js +11 -0
  175. package/dist/utils/get-commands.js.map +1 -0
  176. package/dist/utils/get-deposit-data-root.js +40 -0
  177. package/dist/utils/get-deposit-data-root.js.map +1 -0
  178. package/dist/utils/get-value.js +5 -11
  179. package/dist/utils/get-value.js.map +1 -1
  180. package/dist/utils/index.js +13 -17
  181. package/dist/utils/index.js.map +1 -1
  182. package/dist/utils/parse-string.js +20 -0
  183. package/dist/utils/parse-string.js.map +1 -0
  184. package/dist/utils/prompts/default.js +17 -0
  185. package/dist/utils/prompts/default.js.map +1 -0
  186. package/dist/utils/prompts/delegation-dashboard.js +29 -0
  187. package/dist/utils/prompts/delegation-dashboard.js.map +1 -0
  188. package/dist/utils/prompts/index.js +5 -0
  189. package/dist/utils/prompts/index.js.map +1 -0
  190. package/dist/utils/prompts/predeposit-guarantee.js +25 -0
  191. package/dist/utils/prompts/predeposit-guarantee.js.map +1 -0
  192. package/dist/utils/prompts/vault.js +11 -0
  193. package/dist/utils/prompts/vault.js.map +1 -0
  194. package/dist/utils/proof/create-proof.js +62 -0
  195. package/dist/utils/proof/create-proof.js.map +1 -0
  196. package/dist/utils/proof/first-validator-gindex.js +26 -0
  197. package/dist/utils/proof/first-validator-gindex.js.map +1 -0
  198. package/dist/utils/proof/index.js +4 -0
  199. package/dist/utils/proof/index.js.map +1 -0
  200. package/dist/utils/proof/merkle-utils.js +161 -0
  201. package/dist/utils/proof/merkle-utils.js.map +1 -0
  202. package/dist/utils/proof/proofs.js +52 -0
  203. package/dist/utils/proof/proofs.js.map +1 -0
  204. package/dist/utils/read-programs-by-abi.js +87 -0
  205. package/dist/utils/read-programs-by-abi.js.map +1 -0
  206. package/dist/utils/resolve-path.js +10 -0
  207. package/dist/utils/resolve-path.js.map +1 -0
  208. package/dist/utils/sleep.js +4 -0
  209. package/dist/utils/sleep.js.map +1 -0
  210. package/dist/utils/spinner/index.js +2 -0
  211. package/dist/utils/spinner/index.js.map +1 -0
  212. package/dist/utils/spinner/spinners.js +16 -0
  213. package/dist/utils/spinner/spinners.js.map +1 -0
  214. package/dist/utils/spinner/spinners.json +119 -0
  215. package/dist/version/index.js +1 -0
  216. package/dist/version/index.js.map +1 -0
  217. package/package.json +52 -7
  218. package/dist/programs/vault-hub.js +0 -137
  219. package/dist/programs/vault-hub.js.map +0 -1
@@ -0,0 +1,279 @@
1
+ export const CLProofVerifierAbi = [
2
+ {
3
+ inputs: [
4
+ {
5
+ internalType: 'GIndex',
6
+ name: '_gIFirstValidator',
7
+ type: 'bytes32',
8
+ },
9
+ {
10
+ internalType: 'GIndex',
11
+ name: '_gIFirstValidatorAfterChange',
12
+ type: 'bytes32',
13
+ },
14
+ {
15
+ internalType: 'uint64',
16
+ name: '_changeSlot',
17
+ type: 'uint64',
18
+ },
19
+ ],
20
+ stateMutability: 'nonpayable',
21
+ type: 'constructor',
22
+ },
23
+ {
24
+ inputs: [],
25
+ name: 'IndexOutOfRange',
26
+ type: 'error',
27
+ },
28
+ {
29
+ inputs: [],
30
+ name: 'InvalidProof',
31
+ type: 'error',
32
+ },
33
+ {
34
+ inputs: [],
35
+ name: 'InvalidPubkeyLength',
36
+ type: 'error',
37
+ },
38
+ {
39
+ inputs: [],
40
+ name: 'InvalidTimestamp',
41
+ type: 'error',
42
+ },
43
+ {
44
+ inputs: [],
45
+ name: 'RootNotFound',
46
+ type: 'error',
47
+ },
48
+ {
49
+ inputs: [],
50
+ name: 'SlotAlreadyProven',
51
+ type: 'error',
52
+ },
53
+ {
54
+ inputs: [],
55
+ name: 'SlotUpdateHasNoEffect',
56
+ type: 'error',
57
+ },
58
+ {
59
+ anonymous: false,
60
+ inputs: [
61
+ {
62
+ indexed: false,
63
+ internalType: 'uint64',
64
+ name: 'provenSlot',
65
+ type: 'uint64',
66
+ },
67
+ {
68
+ indexed: false,
69
+ internalType: 'uint64',
70
+ name: 'provenSlotTimestamp',
71
+ type: 'uint64',
72
+ },
73
+ ],
74
+ name: 'SlotProven',
75
+ type: 'event',
76
+ },
77
+ {
78
+ inputs: [],
79
+ name: 'BEACON_ROOTS',
80
+ outputs: [
81
+ {
82
+ internalType: 'address',
83
+ name: '',
84
+ type: 'address',
85
+ },
86
+ ],
87
+ stateMutability: 'view',
88
+ type: 'function',
89
+ },
90
+ {
91
+ inputs: [],
92
+ name: 'GI_FIRST_VALIDATOR',
93
+ outputs: [
94
+ {
95
+ internalType: 'GIndex',
96
+ name: '',
97
+ type: 'bytes32',
98
+ },
99
+ ],
100
+ stateMutability: 'view',
101
+ type: 'function',
102
+ },
103
+ {
104
+ inputs: [],
105
+ name: 'GI_FIRST_VALIDATOR_AFTER_CHANGE',
106
+ outputs: [
107
+ {
108
+ internalType: 'GIndex',
109
+ name: '',
110
+ type: 'bytes32',
111
+ },
112
+ ],
113
+ stateMutability: 'view',
114
+ type: 'function',
115
+ },
116
+ {
117
+ inputs: [],
118
+ name: 'GI_PUBKEY_WC_PARENT',
119
+ outputs: [
120
+ {
121
+ internalType: 'GIndex',
122
+ name: '',
123
+ type: 'bytes32',
124
+ },
125
+ ],
126
+ stateMutability: 'view',
127
+ type: 'function',
128
+ },
129
+ {
130
+ inputs: [],
131
+ name: 'GI_STATE_VIEW',
132
+ outputs: [
133
+ {
134
+ internalType: 'GIndex',
135
+ name: '',
136
+ type: 'bytes32',
137
+ },
138
+ ],
139
+ stateMutability: 'view',
140
+ type: 'function',
141
+ },
142
+ {
143
+ inputs: [],
144
+ name: 'SLOT_CHANGE_GI',
145
+ outputs: [
146
+ {
147
+ internalType: 'uint64',
148
+ name: '',
149
+ type: 'uint64',
150
+ },
151
+ ],
152
+ stateMutability: 'view',
153
+ type: 'function',
154
+ },
155
+ {
156
+ inputs: [
157
+ {
158
+ internalType: 'uint64',
159
+ name: 'parentBlockTimestamp',
160
+ type: 'uint64',
161
+ },
162
+ ],
163
+ name: 'TEST_getParentBlockRoot',
164
+ outputs: [
165
+ {
166
+ internalType: 'bytes32',
167
+ name: '',
168
+ type: 'bytes32',
169
+ },
170
+ ],
171
+ stateMutability: 'view',
172
+ type: 'function',
173
+ },
174
+ {
175
+ inputs: [
176
+ {
177
+ internalType: 'uint256',
178
+ name: 'offset',
179
+ type: 'uint256',
180
+ },
181
+ ],
182
+ name: 'TEST_getValidatorGI',
183
+ outputs: [
184
+ {
185
+ internalType: 'GIndex',
186
+ name: '',
187
+ type: 'bytes32',
188
+ },
189
+ ],
190
+ stateMutability: 'view',
191
+ type: 'function',
192
+ },
193
+ {
194
+ inputs: [
195
+ {
196
+ components: [
197
+ {
198
+ internalType: 'bytes32[]',
199
+ name: 'proof',
200
+ type: 'bytes32[]',
201
+ },
202
+ {
203
+ internalType: 'bytes',
204
+ name: 'pubkey',
205
+ type: 'bytes',
206
+ },
207
+ {
208
+ internalType: 'uint256',
209
+ name: 'validatorIndex',
210
+ type: 'uint256',
211
+ },
212
+ {
213
+ internalType: 'uint64',
214
+ name: 'childBlockTimestamp',
215
+ type: 'uint64',
216
+ },
217
+ ],
218
+ internalType: 'struct CLProofVerifier.ValidatorWitness',
219
+ name: '_witness',
220
+ type: 'tuple',
221
+ },
222
+ {
223
+ internalType: 'bytes32',
224
+ name: '_withdrawalCredentials',
225
+ type: 'bytes32',
226
+ },
227
+ ],
228
+ name: 'TEST_validatePubKeyWCProof',
229
+ outputs: [],
230
+ stateMutability: 'view',
231
+ type: 'function',
232
+ },
233
+ {
234
+ inputs: [
235
+ {
236
+ components: [
237
+ {
238
+ internalType: 'uint64',
239
+ name: 'slot',
240
+ type: 'uint64',
241
+ },
242
+ {
243
+ internalType: 'uint64',
244
+ name: 'proposerIndex',
245
+ type: 'uint64',
246
+ },
247
+ {
248
+ internalType: 'bytes32',
249
+ name: 'parentRoot',
250
+ type: 'bytes32',
251
+ },
252
+ {
253
+ internalType: 'bytes32',
254
+ name: 'stateRoot',
255
+ type: 'bytes32',
256
+ },
257
+ {
258
+ internalType: 'bytes32',
259
+ name: 'bodyRoot',
260
+ type: 'bytes32',
261
+ },
262
+ ],
263
+ internalType: 'struct BeaconBlockHeader',
264
+ name: '_beaconBlockHeader',
265
+ type: 'tuple',
266
+ },
267
+ {
268
+ internalType: 'uint64',
269
+ name: '_childBlockTimestamp',
270
+ type: 'uint64',
271
+ },
272
+ ],
273
+ name: 'proveSlotChange',
274
+ outputs: [],
275
+ stateMutability: 'nonpayable',
276
+ type: 'function',
277
+ },
278
+ ];
279
+ //# sourceMappingURL=CLProofVerifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CLProofVerifier.js","sourceRoot":"","sources":["../../abi/CLProofVerifier.ts"],"names":[],"mappings":"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"}