@lidofinance/lsv-cli 1.0.0-alpha.20 → 1.0.0-alpha.22

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 (36) hide show
  1. package/README.md +14 -425
  2. package/dist/abi/{VaultHubViewer.js → VaultViewer.js} +2 -2
  3. package/dist/abi/VaultViewer.js.map +1 -0
  4. package/dist/abi/index.js +1 -1
  5. package/dist/abi/index.js.map +1 -1
  6. package/dist/contracts/index.js +1 -1
  7. package/dist/contracts/index.js.map +1 -1
  8. package/dist/contracts/vault-viewer.js +25 -0
  9. package/dist/contracts/vault-viewer.js.map +1 -0
  10. package/dist/programs/index.js +1 -1
  11. package/dist/programs/index.js.map +1 -1
  12. package/dist/programs/pdg/write.js +134 -0
  13. package/dist/programs/pdg/write.js.map +1 -1
  14. package/dist/programs/pdg-helpers.js +18 -1
  15. package/dist/programs/pdg-helpers.js.map +1 -1
  16. package/dist/programs/vault-viewer/config.js +85 -0
  17. package/dist/programs/vault-viewer/config.js.map +1 -0
  18. package/dist/programs/vault-viewer/index.js +3 -0
  19. package/dist/programs/vault-viewer/index.js.map +1 -0
  20. package/dist/programs/vault-viewer/main.js +10 -0
  21. package/dist/programs/vault-viewer/main.js.map +1 -0
  22. package/dist/programs/vault-viewer/read.js +55 -0
  23. package/dist/programs/vault-viewer/read.js.map +1 -0
  24. package/dist/utils/get-deposit-data-root.js +40 -0
  25. package/dist/utils/get-deposit-data-root.js.map +1 -0
  26. package/dist/utils/index.js +1 -0
  27. package/dist/utils/index.js.map +1 -1
  28. package/dist/utils/proof/merkle-utils.js +30 -0
  29. package/dist/utils/proof/merkle-utils.js.map +1 -1
  30. package/dist/version/index.js +1 -1
  31. package/package.json +1 -1
  32. package/dist/abi/VaultHubViewer.js.map +0 -1
  33. package/dist/contracts/vault-hub-viewer.js +0 -14
  34. package/dist/contracts/vault-hub-viewer.js.map +0 -1
  35. package/dist/programs/vault-hub-viewer.js +0 -52
  36. package/dist/programs/vault-hub-viewer.js.map +0 -1
@@ -51,6 +51,57 @@ pdg
51
51
  printError(err, 'Error when creating proof');
52
52
  }
53
53
  });
54
+ pdg
55
+ .command('prove-and-deposit')
56
+ .description('prove and deposit')
57
+ .argument('<indexes>', 'validator indexes')
58
+ .argument('<vault>', 'vault address')
59
+ .argument('<deposits>', 'deposits')
60
+ .action(async (indexes, vault, deposits) => {
61
+ const pdgContract = await getPredepositGuaranteeContract();
62
+ const indexesArray = indexes.split(',').map(BigInt);
63
+ const parsedDeposits = parseObjectsArray(deposits);
64
+ const witnesses = [];
65
+ for (const index of indexesArray) {
66
+ const validatorIndex = await confirmCreateProof(index);
67
+ if (!validatorIndex)
68
+ return;
69
+ const hideSpinner = showSpinner({
70
+ type: 'bouncingBar',
71
+ message: 'Creating proof...',
72
+ });
73
+ try {
74
+ const packageProof = await createPDGProof(Number(validatorIndex));
75
+ hideSpinner();
76
+ const { proof, pubkey, childBlockTimestamp, withdrawalCredentials } = packageProof;
77
+ witnesses.push({
78
+ proof,
79
+ pubkey,
80
+ validatorIndex,
81
+ childBlockTimestamp,
82
+ });
83
+ console.info('----------------------proof----------------------');
84
+ console.info(proof);
85
+ console.info('---------------------pubkey---------------------');
86
+ console.table(pubkey);
87
+ console.info('---------------childBlockTimestamp---------------');
88
+ console.table(childBlockTimestamp);
89
+ console.info('--------------withdrawalCredentials--------------');
90
+ console.table(withdrawalCredentials);
91
+ console.info('------------------------------------------------');
92
+ console.info('-----------------------end-----------------------');
93
+ }
94
+ catch (err) {
95
+ hideSpinner();
96
+ printError(err, 'Error when creating proof');
97
+ }
98
+ }
99
+ await callWriteMethodWithReceipt(pdgContract, 'proveAndDeposit', [
100
+ witnesses,
101
+ parsedDeposits,
102
+ vault,
103
+ ]);
104
+ });
54
105
  pdg
55
106
  .command('deposit-to-beacon-chain')
56
107
  .description('deposit to beacon chain')
@@ -111,4 +162,87 @@ pdg
111
162
  printError(err, 'Error when proving unknown validator');
112
163
  }
113
164
  });
165
+ pdg
166
+ .command('prove-invalid-validator-wc')
167
+ .description('prove invalid validator withdrawal credentials')
168
+ .argument('<index>', 'validator index')
169
+ .argument('<invalidWithdrawalCredentials>', 'invalid withdrawal credentials')
170
+ .action(async (index, invalidWithdrawalCredentials) => {
171
+ const pdgContract = await getPredepositGuaranteeContract();
172
+ const validatorIndex = await confirmCreateProof(index);
173
+ if (!validatorIndex)
174
+ return;
175
+ const hideSpinner = showSpinner({
176
+ type: 'bouncingBar',
177
+ message: 'Creating proof...',
178
+ });
179
+ try {
180
+ const packageProof = await createPDGProof(Number(validatorIndex));
181
+ hideSpinner();
182
+ const { proof, pubkey, childBlockTimestamp, withdrawalCredentials } = packageProof;
183
+ console.info('----------------------proof----------------------');
184
+ console.info(proof);
185
+ console.info('---------------------pubkey---------------------');
186
+ console.table(pubkey);
187
+ console.info('---------------childBlockTimestamp---------------');
188
+ console.table(childBlockTimestamp);
189
+ console.info('--------------withdrawalCredentials--------------');
190
+ console.table(withdrawalCredentials);
191
+ console.info('------------------------------------------------');
192
+ console.info('invalid withdrawal credentials');
193
+ console.table(invalidWithdrawalCredentials);
194
+ console.info('-----------------------end-----------------------');
195
+ if (withdrawalCredentials !== invalidWithdrawalCredentials) {
196
+ console.info('withdrawal credentials are valid. Operation cancelled');
197
+ return;
198
+ }
199
+ await callWriteMethodWithReceipt(pdgContract, 'proveInvalidValidatorWC', [
200
+ { proof, pubkey, validatorIndex, childBlockTimestamp },
201
+ invalidWithdrawalCredentials,
202
+ ]);
203
+ }
204
+ catch (err) {
205
+ hideSpinner();
206
+ printError(err, 'Error when creating proof');
207
+ }
208
+ });
209
+ pdg
210
+ .command('withdraw-no-balance')
211
+ .description('withdraw node operator balance')
212
+ .argument('<nodeOperator>', 'node operator address')
213
+ .argument('<amount>', 'amount in wei')
214
+ .argument('<recipient>', 'recipient address')
215
+ .action(async (nodeOperator, amount, recipient) => {
216
+ const pdgContract = await getPredepositGuaranteeContract();
217
+ await callWriteMethodWithReceipt(pdgContract, 'withdrawNodeOperatorBalance', [nodeOperator, BigInt(amount), recipient]);
218
+ });
219
+ pdg
220
+ .command('set-no-g')
221
+ .description('set node operator guarantor')
222
+ .argument('<guarantor>', 'new guarantor address')
223
+ .action(async (guarantor) => {
224
+ const pdgContract = await getPredepositGuaranteeContract();
225
+ await callWriteMethodWithReceipt(pdgContract, 'setNodeOperatorGuarantor', [
226
+ guarantor,
227
+ ]);
228
+ });
229
+ pdg
230
+ .command('claim-g-refund')
231
+ .description('claim guarantor refund')
232
+ .argument('<recipient>', 'recipient address')
233
+ .action(async (recipient) => {
234
+ const pdgContract = await getPredepositGuaranteeContract();
235
+ await callWriteMethodWithReceipt(pdgContract, 'claimGuarantorRefund', [
236
+ recipient,
237
+ ]);
238
+ });
239
+ pdg
240
+ .command('compensate-disproven-predeposit')
241
+ .description('compensate disproven predeposit')
242
+ .argument('<pubkey>', 'validator pubkey')
243
+ .argument('<recipient>', 'recipient address')
244
+ .action(async (pubkey, recipient) => {
245
+ const pdgContract = await getPredepositGuaranteeContract();
246
+ await callWriteMethodWithReceipt(pdgContract, 'compensateDisprovenPredeposit', [pubkey, recipient]);
247
+ });
114
248
  //# sourceMappingURL=write.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"write.js","sourceRoot":"","sources":["../../../programs/pdg/write.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,UAAU,EAAE,MAAM,MAAM,CAAC;AAEhD,OAAO,EAAE,8BAA8B,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,UAAU,EACV,iBAAiB,GAClB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAShC,GAAG;KACA,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,YAAY,CAAC;KACzB,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;KACpC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;KAClC,MAAM,CAAC,KAAK,EAAE,KAAc,EAAE,QAAgB,EAAE,EAAE;IACjD,MAAM,WAAW,GAAG,MAAM,8BAA8B,EAAE,CAAC;IAC3D,MAAM,cAAc,GAAG,iBAAiB,CAAC,QAAQ,CAAc,CAAC;IAEhE,MAAM,0BAA0B,CAAC,WAAW,EAAE,YAAY,EAAE;QAC1D,KAAK;QACL,cAAc;KACf,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,GAAG;KACA,OAAO,CAAC,wBAAwB,CAAC;KACjC,WAAW,CAAC,wBAAwB,CAAC;KACrC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;KACtC,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;IAC9B,MAAM,WAAW,GAAG,MAAM,8BAA8B,EAAE,CAAC;IAE3D,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC,cAAc;QAAE,OAAO;IAE5B,MAAM,WAAW,GAAG,WAAW,CAAC;QAC9B,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,mBAAmB;KAC7B,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAClE,WAAW,EAAE,CAAC;QACd,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,GACjE,YAAY,CAAC;QAEf,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QACjE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAElE,MAAM,0BAA0B,CAAC,WAAW,EAAE,kBAAkB,EAAE;YAChE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,mBAAmB,EAAE;SACvD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,WAAW,EAAE,CAAC;QACd,UAAU,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,GAAG;KACA,OAAO,CAAC,yBAAyB,CAAC;KAClC,WAAW,CAAC,yBAAyB,CAAC;KACtC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;KACpC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;KAClC,MAAM,CAAC,KAAK,EAAE,KAAc,EAAE,QAAgB,EAAE,EAAE;IACjD,MAAM,WAAW,GAAG,MAAM,8BAA8B,EAAE,CAAC;IAC3D,MAAM,cAAc,GAAG,iBAAiB,CAAC,QAAQ,CAAc,CAAC;IAEhE,MAAM,0BAA0B,CAAC,WAAW,EAAE,sBAAsB,EAAE;QACpE,KAAK;QACL,cAAc;KACf,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,GAAG;KACA,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,mBAAmB,CAAC;KAChC,QAAQ,CAAC,gBAAgB,EAAE,uBAAuB,CAAC;KACnD,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,YAAqB,EAAE,MAAc,EAAE,EAAE;IACtD,MAAM,WAAW,GAAG,MAAM,8BAA8B,EAAE,CAAC;IAE3D,MAAM,0BAA0B,CAC9B,WAAW,EACX,0BAA0B,EAC1B,CAAC,YAAY,CAAC,EACd,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAC1B,CAAC;AACJ,CAAC,CAAC,CAAC;AAEL,GAAG;KACA,OAAO,CAAC,yBAAyB,CAAC;KAClC,WAAW,CAAC,yBAAyB,CAAC;KACtC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;KACtC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;KACpC,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,KAAc,EAAE,EAAE;IAC9C,MAAM,WAAW,GAAG,MAAM,8BAA8B,EAAE,CAAC;IAE3D,MAAM,cAAc,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC,cAAc;QAAE,OAAO;IAE5B,MAAM,WAAW,GAAG,WAAW,CAAC;QAC9B,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,mBAAmB;KAC7B,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAClE,WAAW,EAAE,CAAC;QAEd,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,GACjE,YAAY,CAAC;QAEf,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QACjE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAElE,MAAM,0BAA0B,CAAC,WAAW,EAAE,uBAAuB,EAAE;YACrE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,mBAAmB,EAAE;YACtD,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,WAAW,EAAE,CAAC;QACd,UAAU,CAAC,GAAG,EAAE,sCAAsC,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../../programs/pdg/write.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { program } from '../command/index.js';
2
2
  import { getCLProofVerifierContract } from '../contracts/index.js';
3
- import { createPDGProof, getFirstValidatorGIndex, confirmCreateProof, showSpinner, printError, } from '../utils/index.js';
3
+ import { createPDGProof, getFirstValidatorGIndex, confirmCreateProof, showSpinner, printError, computeDepositDataRoot, } from '../utils/index.js';
4
4
  const predepositGuaranteeHelpers = program
5
5
  .command('pdg-helpers')
6
6
  .description('predeposit guarantee helpers');
@@ -70,4 +70,21 @@ predepositGuaranteeHelpers
70
70
  .action(async (forks) => {
71
71
  getFirstValidatorGIndex(forks);
72
72
  });
73
+ predepositGuaranteeHelpers
74
+ .command('compute-dd-root')
75
+ .description('compute deposit data root')
76
+ .argument('<pubkey>', 'pubkey')
77
+ .argument('<withdrawal-credentials>', 'withdrawal credentials')
78
+ .argument('<signature>', 'signature')
79
+ .argument('<amount>', 'amount in wei')
80
+ .action(async (pubkey, withdrawalCredentials, signature, amount) => {
81
+ const result = computeDepositDataRoot(pubkey, withdrawalCredentials, signature, amount);
82
+ console.table({
83
+ pubkey,
84
+ withdrawalCredentials,
85
+ signature,
86
+ amount,
87
+ depositDataRoot: result,
88
+ });
89
+ });
73
90
  //# sourceMappingURL=pdg-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pdg-helpers.js","sourceRoot":"","sources":["../../programs/pdg-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pdg-helpers.js","sourceRoot":"","sources":["../../programs/pdg-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ export const readCommandConfig = {
2
+ vaultsConnected: {
3
+ name: 'connected',
4
+ description: 'get vaults connected to vault hub',
5
+ },
6
+ vaultsByRole: {
7
+ name: 'by-ra',
8
+ description: 'get vaults by role and address',
9
+ arguments: {
10
+ _role: {
11
+ name: 'role',
12
+ description: 'role',
13
+ },
14
+ _member: {
15
+ name: 'member',
16
+ description: 'member address',
17
+ },
18
+ },
19
+ },
20
+ vaultsConnectedBound: {
21
+ name: 'connected-bound',
22
+ description: 'get vaults connected to vault hub - bound',
23
+ arguments: {
24
+ _from: {
25
+ name: 'from',
26
+ description: 'from',
27
+ },
28
+ _to: {
29
+ name: 'to',
30
+ description: 'to',
31
+ },
32
+ },
33
+ },
34
+ vaultsByRoleBound: {
35
+ name: 'by-ra-bound',
36
+ description: 'get vaults by role and address - bound',
37
+ arguments: {
38
+ _role: {
39
+ name: 'role',
40
+ description: 'role',
41
+ },
42
+ _member: {
43
+ name: 'member',
44
+ description: 'member address',
45
+ },
46
+ _from: {
47
+ name: 'from',
48
+ description: 'from',
49
+ },
50
+ _to: {
51
+ name: 'to',
52
+ description: 'to',
53
+ },
54
+ },
55
+ },
56
+ vaultsByOwner: {
57
+ name: 'by-owner',
58
+ description: 'get vaults by owner',
59
+ arguments: {
60
+ _owner: {
61
+ name: 'owner',
62
+ description: 'owner address',
63
+ },
64
+ },
65
+ },
66
+ vaultsByOwnerBound: {
67
+ name: 'by-owner-bound',
68
+ description: 'get vaults by owner - bound',
69
+ arguments: {
70
+ _owner: {
71
+ name: 'owner',
72
+ description: 'owner address',
73
+ },
74
+ _from: {
75
+ name: 'from',
76
+ description: 'from',
77
+ },
78
+ _to: {
79
+ name: 'to',
80
+ description: 'to',
81
+ },
82
+ },
83
+ },
84
+ };
85
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../programs/vault-viewer/config.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAA6B;IACzD,eAAe,EAAE;QACf,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,mCAAmC;KACjD;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,gCAAgC;QAC7C,SAAS,EAAE;YACT,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,MAAM;aACpB;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gBAAgB;aAC9B;SACF;KACF;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,2CAA2C;QACxD,SAAS,EAAE;YACT,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,MAAM;aACpB;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,IAAI;aAClB;SACF;KACF;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,wCAAwC;QACrD,SAAS,EAAE;YACT,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,MAAM;aACpB;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gBAAgB;aAC9B;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,MAAM;aACpB;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,IAAI;aAClB;SACF;KACF;IACD,aAAa,EAAE;QACb,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,qBAAqB;QAClC,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,eAAe;aAC7B;SACF;KACF;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,6BAA6B;QAC1C,SAAS,EAAE;YACT,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,eAAe;aAC7B;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,MAAM;aACpB;YACD,GAAG,EAAE;gBACH,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,IAAI;aAClB;SACF;KACF;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './main.js';
2
+ export * from './read.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../programs/vault-viewer/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { program } from '../../command/index.js';
2
+ import { Option } from 'commander';
3
+ import { getCommandsJson } from '../../utils/index.js';
4
+ export const vaultViewer = program.command('v-v').description('vault viewer');
5
+ vaultViewer.addOption(new Option('-cmd2json'));
6
+ vaultViewer.on('option:-cmd2json', function () {
7
+ console.info(getCommandsJson(vaultViewer));
8
+ process.exit();
9
+ });
10
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../../programs/vault-viewer/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAExC,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;AAE9E,WAAW,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AAC/C,WAAW,CAAC,EAAE,CAAC,kBAAkB,EAAE;IACjC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { getVaultViewerContract } from '../../contracts/index.js';
2
+ import { getAccount } from '../../providers/index.js';
3
+ import { VaultViewerAbi } from '../../abi/index.js';
4
+ import { generateReadCommands, callReadMethod } from '../../utils/index.js';
5
+ import { vaultViewer } from './main.js';
6
+ import { readCommandConfig } from './config.js';
7
+ generateReadCommands(VaultViewerAbi, getVaultViewerContract, vaultViewer, readCommandConfig);
8
+ vaultViewer
9
+ .command('my')
10
+ .description('get my vaults')
11
+ .action(async () => {
12
+ const contract = getVaultViewerContract();
13
+ const account = getAccount();
14
+ await callReadMethod(contract, 'vaultsByOwner', [account.address]);
15
+ });
16
+ vaultViewer
17
+ .command('my-bound')
18
+ .description('get my vaults - bound')
19
+ .argument('<from>', 'from')
20
+ .argument('<to>', 'to')
21
+ .action(async (from, to) => {
22
+ const contract = getVaultViewerContract();
23
+ const account = getAccount();
24
+ await callReadMethod(contract, 'vaultsByOwnerBound', [
25
+ account.address,
26
+ from,
27
+ to,
28
+ ]);
29
+ });
30
+ vaultViewer
31
+ .command('my-by-role')
32
+ .description('get my vaults by role')
33
+ .argument('<role>', 'role')
34
+ .action(async (role) => {
35
+ const contract = getVaultViewerContract();
36
+ const account = getAccount();
37
+ await callReadMethod(contract, 'vaultsByRole', [role, account.address]);
38
+ });
39
+ vaultViewer
40
+ .command('my-by-role-bound')
41
+ .description('get my vaults by role - bound')
42
+ .argument('<role>', 'role')
43
+ .argument('<from>', 'from')
44
+ .argument('<to>', 'to')
45
+ .action(async (role, from, to) => {
46
+ const contract = getVaultViewerContract();
47
+ const account = getAccount();
48
+ await callReadMethod(contract, 'vaultsByRoleBound', [
49
+ role,
50
+ account.address,
51
+ from,
52
+ to,
53
+ ]);
54
+ });
55
+ //# sourceMappingURL=read.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../programs/vault-viewer/read.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,oBAAoB,CAClB,cAAc,EACd,sBAAsB,EACtB,WAAW,EACX,iBAAiB,CAClB,CAAC;AAEF,WAAW;KACR,OAAO,CAAC,IAAI,CAAC;KACb,WAAW,CAAC,eAAe,CAAC;KAC5B,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,cAAc,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,uBAAuB,CAAC;KACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC1B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;KACtB,MAAM,CAAC,KAAK,EAAE,IAAY,EAAE,EAAU,EAAE,EAAE;IACzC,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,cAAc,CAAC,QAAQ,EAAE,oBAAoB,EAAE;QACnD,OAAO,CAAC,OAAO;QACf,IAAI;QACJ,EAAE;KACH,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,uBAAuB,CAAC;KACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC1B,MAAM,CAAC,KAAK,EAAE,IAAa,EAAE,EAAE;IAC9B,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAC1E,CAAC,CAAC,CAAC;AAEL,WAAW;KACR,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,+BAA+B,CAAC;KAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC1B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;KACtB,MAAM,CAAC,KAAK,EAAE,IAAa,EAAE,IAAY,EAAE,EAAU,EAAE,EAAE;IACxD,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,cAAc,CAAC,QAAQ,EAAE,mBAAmB,EAAE;QAClD,IAAI;QACJ,OAAO,CAAC,OAAO;QACf,IAAI;QACJ,EAAE;KACH,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { fromHex, sha256Concat, encodeGweiAsLittleEndian8, } from './proof/index.js';
2
+ /**
3
+ * - pubkey: bytes
4
+ * - withdrawalCredentials: bytes
5
+ * - signature: bytes
6
+ * - amountWei: bigint или string (в wei)
7
+ */
8
+ export const computeDepositDataRoot = (pubkey, withdrawalCredentials, signature, amountWei) => {
9
+ const pubkeyBytes = fromHex(pubkey);
10
+ const withdrawalCredentialsBytes = fromHex(withdrawalCredentials);
11
+ const signatureBytes = fromHex(signature);
12
+ // 1) Convert amount from wei to gwei
13
+ const amountWeiBN = typeof amountWei === 'string' ? BigInt(amountWei) : amountWei;
14
+ const amountGwei = amountWeiBN / 1000000000n;
15
+ // 2) Get 8 bytes little-endian
16
+ const amountLE64 = encodeGweiAsLittleEndian8(amountGwei);
17
+ // 3) pubkeyRoot = sha256(pubkey + 16 zero bytes)
18
+ const pubkeyRoot = sha256Concat(pubkeyBytes, new Uint8Array(16));
19
+ // 4) signatureRoot
20
+ // - sigSlice1Root = sha256(signature[0..64])
21
+ // - sigSlice2Root = sha256(signature[64..end] + 32 zero bytes)
22
+ // - signatureRoot = sha256(sigSlice1Root + sigSlice2Root)
23
+ const sigSlice1 = signatureBytes.slice(0, 64); // first 64 bytes
24
+ const sigSlice2 = signatureBytes.slice(64); // remaining (usually 32 bytes)
25
+ const sigSlice1Root = sha256Concat(sigSlice1);
26
+ const sigSlice2Root = sha256Concat(sigSlice2, new Uint8Array(32));
27
+ const signatureRoot = sha256Concat(sigSlice1Root, sigSlice2Root);
28
+ // 5) Sum all, as in Solidity:
29
+ // depositDataRoot = sha256(
30
+ // sha256(pubkeyRoot, withdrawalCredentials),
31
+ // sha256(amountLE64, 24 нулевых байт, signatureRoot)
32
+ // )
33
+ const part1 = sha256Concat(pubkeyRoot, withdrawalCredentialsBytes);
34
+ const part2 = sha256Concat(amountLE64, new Uint8Array(24), // 24 нулевых
35
+ signatureRoot);
36
+ const depositDataRoot = sha256Concat(part1, part2);
37
+ // Return in hex-string format '0x...'
38
+ return '0x' + Buffer.from(depositDataRoot).toString('hex');
39
+ };
40
+ //# sourceMappingURL=get-deposit-data-root.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-deposit-data-root.js","sourceRoot":"","sources":["../../utils/get-deposit-data-root.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,YAAY,EACZ,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAE1B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,MAAc,EACd,qBAA6B,EAC7B,SAAiB,EACjB,SAA0B,EAClB,EAAE;IACV,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,0BAA0B,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClE,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1C,qCAAqC;IACrC,MAAM,WAAW,GACf,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChE,MAAM,UAAU,GAAG,WAAW,GAAG,WAAc,CAAC;IAEhD,+BAA+B;IAC/B,MAAM,UAAU,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;IAEzD,iDAAiD;IACjD,MAAM,UAAU,GAAG,YAAY,CAC7B,WAAW,EACX,IAAI,UAAU,CAAC,EAAE,CAAC,CACnB,CAAC;IAEF,mBAAmB;IACnB,gDAAgD;IAChD,kEAAkE;IAClE,6DAA6D;IAC7D,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB;IAChE,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,+BAA+B;IAC3E,MAAM,aAAa,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,YAAY,CAChC,SAAS,EACT,IAAI,UAAU,CAAC,EAAE,CAAC,CACnB,CAAC;IACF,MAAM,aAAa,GAAG,YAAY,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAEjE,8BAA8B;IAC9B,+BAA+B;IAC/B,mDAAmD;IACnD,2DAA2D;IAC3D,OAAO;IACP,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,YAAY,CACxB,UAAU,EACV,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,aAAa;IACjC,aAAa,CACd,CAAC;IACF,MAAM,eAAe,GAAG,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAEnD,sCAAsC;IACtC,OAAO,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC7D,CAAC,CAAC"}
@@ -10,4 +10,5 @@ export * from './spinner/index.js';
10
10
  export * from './read-programs-by-abi.js';
11
11
  export * from './get-commands.js';
12
12
  export * from './parse-string.js';
13
+ export * from './get-deposit-data-root.js';
13
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC"}
@@ -22,6 +22,17 @@ export const sha256Pair = (left, right) => {
22
22
  buf.set(right, 32);
23
23
  return createHash('sha256').update(buf).digest();
24
24
  };
25
+ /**
26
+ * Helper for SHA-256 over multiple Uint8Array chunks.
27
+ * Returns a 32-byte hash (Uint8Array of length 32).
28
+ */
29
+ export const sha256Concat = (...chunks) => {
30
+ const hash = createHash('sha256');
31
+ for (const chunk of chunks) {
32
+ hash.update(chunk);
33
+ }
34
+ return hash.digest();
35
+ };
25
36
  /** 48 => 64 padded => sha256 => 32 */
26
37
  export const pubkeyRoot = (pubkey48) => {
27
38
  if (pubkey48.length !== 48) {
@@ -37,6 +48,25 @@ export const uint64To32LE = (val) => {
37
48
  b.writeBigUInt64LE(val, 0);
38
49
  return Buffer.concat([b, Buffer.alloc(24)]);
39
50
  };
51
+ /**
52
+ * Converts BigInt (gwei) to 8 bytes (big-endian), then reverses it to little-endian.
53
+ * Returns Uint8Array[8].
54
+ */
55
+ export const encodeGweiAsLittleEndian8 = (amountGwei) => {
56
+ // First 8 bytes big-endian
57
+ const be = new Uint8Array(8);
58
+ let tmp = amountGwei;
59
+ for (let i = 7; i >= 0; i--) {
60
+ be[i] = Number(tmp & 0xffn);
61
+ tmp >>= 8n;
62
+ }
63
+ // Now reverse it (big-endian -> little-endian)
64
+ const le = new Uint8Array(8);
65
+ for (let i = 0; i < 8; i++) {
66
+ le[i] = be[7 - i] ?? 0;
67
+ }
68
+ return le;
69
+ };
40
70
  /** bool => 1 byte => 32 */
41
71
  export const boolTo32 = (b) => {
42
72
  const oneByte = Buffer.from([b ? 1 : 0]);
@@ -1 +1 @@
1
- {"version":3,"file":"merkle-utils.js","sourceRoot":"","sources":["../../../utils/proof/merkle-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merkle-utils.js","sourceRoot":"","sources":["../../../utils/proof/merkle-utils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export const version = 'v1.0.0-alpha.20'
1
+ export const version = 'v1.0.0-alpha.22'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lidofinance/lsv-cli",
3
- "version": "1.0.0-alpha.20",
3
+ "version": "1.0.0-alpha.22",
4
4
  "main": "dist/index.js",
5
5
  "files": [
6
6
  "dist"
@@ -1 +0,0 @@
1
- {"version":3,"file":"VaultHubViewer.js","sourceRoot":"","sources":["../../abi/VaultHubViewer.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { getContract, createPublicClient, http } from 'viem';
2
- import { VaultHubViewerAbi } from '../abi/index.js';
3
- import { getChain, getRpcUrl } from '../configs/index.js';
4
- export const getVaultHubViewerContract = (address) => {
5
- return getContract({
6
- address,
7
- abi: VaultHubViewerAbi,
8
- client: createPublicClient({
9
- chain: getChain(),
10
- transport: http(getRpcUrl()),
11
- }),
12
- });
13
- };
14
- //# sourceMappingURL=vault-hub-viewer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vault-hub-viewer.js","sourceRoot":"","sources":["../../contracts/vault-hub-viewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAW,MAAM,MAAM,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,OAAgB,EAAE,EAAE;IAC5D,OAAO,WAAW,CAAC;QACjB,OAAO;QACP,GAAG,EAAE,iBAAiB;QACtB,MAAM,EAAE,kBAAkB,CAAC;YACzB,KAAK,EAAE,QAAQ,EAAE;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;SAC7B,CAAC;KACH,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -1,52 +0,0 @@
1
- import { program } from '../command/index.js';
2
- import { getVaultHubViewerContract } from '../contracts/index.js';
3
- import { getAccount } from '../providers/index.js';
4
- import { callReadMethod } from '../utils/index.js';
5
- // TODO: move to config
6
- const ADDRESS = '0x5D73Eec220C7428eEAa26aF0F6d65B4dD1bb95aA';
7
- // TODO: add methods with pagination
8
- const vaultHubViewer = program
9
- .command('hub-viewer')
10
- .description('vault hub viewer');
11
- vaultHubViewer
12
- .command('connected')
13
- .description('get vaults connected to vault hub')
14
- .action(async () => {
15
- const contract = getVaultHubViewerContract(ADDRESS);
16
- await callReadMethod(contract, 'vaultsConnected');
17
- });
18
- vaultHubViewer
19
- .command('my')
20
- .description('get my vaults')
21
- .action(async () => {
22
- const contract = getVaultHubViewerContract(ADDRESS);
23
- const account = getAccount();
24
- await callReadMethod(contract, 'vaultsByOwner', [account.address]);
25
- });
26
- vaultHubViewer
27
- .command('by-owner')
28
- .description('get vaults by owner')
29
- .argument('<address>', 'owner address')
30
- .action(async (address) => {
31
- const contract = getVaultHubViewerContract(ADDRESS);
32
- await callReadMethod(contract, 'vaultsByOwner', [address]);
33
- });
34
- vaultHubViewer
35
- .command('by-role')
36
- .description('get vaults by role')
37
- .argument('<role>', 'role')
38
- .action(async (role) => {
39
- const contract = getVaultHubViewerContract(ADDRESS);
40
- const account = getAccount();
41
- await callReadMethod(contract, 'vaultsByRole', [role, account.address]);
42
- });
43
- vaultHubViewer
44
- .command('by-role-and-address')
45
- .description('get vaults by role and address')
46
- .argument('<role>', 'role')
47
- .argument('<address>', 'address')
48
- .action(async (role, address) => {
49
- const contract = getVaultHubViewerContract(ADDRESS);
50
- await callReadMethod(contract, 'vaultsByRole', [role, address]);
51
- });
52
- //# sourceMappingURL=vault-hub-viewer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vault-hub-viewer.js","sourceRoot":"","sources":["../../programs/vault-hub-viewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,uBAAuB;AACvB,MAAM,OAAO,GAAG,4CAA4C,CAAC;AAE7D,oCAAoC;AAEpC,MAAM,cAAc,GAAG,OAAO;KAC3B,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,kBAAkB,CAAC,CAAC;AAEnC,cAAc;KACX,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAEpD,MAAM,cAAc,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;AACpD,CAAC,CAAC,CAAC;AAEL,cAAc;KACX,OAAO,CAAC,IAAI,CAAC;KACb,WAAW,CAAC,eAAe,CAAC;KAC5B,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,cAAc,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC;AAEL,cAAc;KACX,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,qBAAqB,CAAC;KAClC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;KACtC,MAAM,CAAC,KAAK,EAAE,OAAgB,EAAE,EAAE;IACjC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAEpD,MAAM,cAAc,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEL,cAAc;KACX,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,oBAAoB,CAAC;KACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC1B,MAAM,CAAC,KAAK,EAAE,IAAa,EAAE,EAAE;IAC9B,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAC1E,CAAC,CAAC,CAAC;AAEL,cAAc;KACX,OAAO,CAAC,qBAAqB,CAAC;KAC9B,WAAW,CAAC,gCAAgC,CAAC;KAC7C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC1B,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC;KAChC,MAAM,CAAC,KAAK,EAAE,IAAa,EAAE,OAAgB,EAAE,EAAE;IAChD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAEpD,MAAM,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC"}