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

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 (211) hide show
  1. package/README.md +542 -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/VaultHubViewer.js +297 -0
  23. package/dist/abi/VaultHubViewer.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-viewer.js +14 -0
  59. package/dist/contracts/vault-hub-viewer.js.map +1 -0
  60. package/dist/contracts/vault-hub.js +14 -17
  61. package/dist/contracts/vault-hub.js.map +1 -1
  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 +73 -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-hub-viewer.js +52 -0
  149. package/dist/programs/vault-hub-viewer.js.map +1 -0
  150. package/dist/programs/voting.js +33 -0
  151. package/dist/programs/voting.js.map +1 -0
  152. package/dist/providers/index.js +1 -17
  153. package/dist/providers/index.js.map +1 -1
  154. package/dist/providers/wallet.js +20 -32
  155. package/dist/providers/wallet.js.map +1 -1
  156. package/dist/types/common.js +2 -0
  157. package/dist/types/common.js.map +1 -0
  158. package/dist/types/config.js +2 -0
  159. package/dist/types/config.js.map +1 -0
  160. package/dist/types/index.js +3 -0
  161. package/dist/types/index.js.map +1 -0
  162. package/dist/utils/contract.js +98 -0
  163. package/dist/utils/contract.js.map +1 -0
  164. package/dist/utils/data-validators.js +69 -0
  165. package/dist/utils/data-validators.js.map +1 -0
  166. package/dist/utils/error-handler.js +7 -0
  167. package/dist/utils/error-handler.js.map +1 -0
  168. package/dist/utils/get-commands.js +11 -0
  169. package/dist/utils/get-commands.js.map +1 -0
  170. package/dist/utils/get-value.js +5 -11
  171. package/dist/utils/get-value.js.map +1 -1
  172. package/dist/utils/index.js +12 -17
  173. package/dist/utils/index.js.map +1 -1
  174. package/dist/utils/parse-string.js +20 -0
  175. package/dist/utils/parse-string.js.map +1 -0
  176. package/dist/utils/prompts/default.js +17 -0
  177. package/dist/utils/prompts/default.js.map +1 -0
  178. package/dist/utils/prompts/delegation-dashboard.js +29 -0
  179. package/dist/utils/prompts/delegation-dashboard.js.map +1 -0
  180. package/dist/utils/prompts/index.js +5 -0
  181. package/dist/utils/prompts/index.js.map +1 -0
  182. package/dist/utils/prompts/predeposit-guarantee.js +25 -0
  183. package/dist/utils/prompts/predeposit-guarantee.js.map +1 -0
  184. package/dist/utils/prompts/vault.js +11 -0
  185. package/dist/utils/prompts/vault.js.map +1 -0
  186. package/dist/utils/proof/create-proof.js +62 -0
  187. package/dist/utils/proof/create-proof.js.map +1 -0
  188. package/dist/utils/proof/first-validator-gindex.js +26 -0
  189. package/dist/utils/proof/first-validator-gindex.js.map +1 -0
  190. package/dist/utils/proof/index.js +4 -0
  191. package/dist/utils/proof/index.js.map +1 -0
  192. package/dist/utils/proof/merkle-utils.js +131 -0
  193. package/dist/utils/proof/merkle-utils.js.map +1 -0
  194. package/dist/utils/proof/proofs.js +52 -0
  195. package/dist/utils/proof/proofs.js.map +1 -0
  196. package/dist/utils/read-programs-by-abi.js +87 -0
  197. package/dist/utils/read-programs-by-abi.js.map +1 -0
  198. package/dist/utils/resolve-path.js +10 -0
  199. package/dist/utils/resolve-path.js.map +1 -0
  200. package/dist/utils/sleep.js +4 -0
  201. package/dist/utils/sleep.js.map +1 -0
  202. package/dist/utils/spinner/index.js +2 -0
  203. package/dist/utils/spinner/index.js.map +1 -0
  204. package/dist/utils/spinner/spinners.js +16 -0
  205. package/dist/utils/spinner/spinners.js.map +1 -0
  206. package/dist/utils/spinner/spinners.json +119 -0
  207. package/dist/version/index.js +1 -0
  208. package/dist/version/index.js.map +1 -0
  209. package/package.json +52 -7
  210. package/dist/programs/vault-hub.js +0 -137
  211. package/dist/programs/vault-hub.js.map +0 -1
@@ -1,137 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const _command_1 = require("../command");
4
- const _contracts_1 = require("../contracts");
5
- const _providers_1 = require("../providers");
6
- const vaultHub = _command_1.program.command("vh").description("vault hub contract");
7
- vaultHub
8
- .command("constants")
9
- .description("get vault hub constants")
10
- .option("--chainId", "chainId")
11
- .action(async ({ chainId }) => {
12
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
13
- const VAULT_MASTER_ROLE = await contract.read.VAULT_MASTER_ROLE();
14
- const DEFAULT_ADMIN_ROLE = await contract.read.DEFAULT_ADMIN_ROLE();
15
- const STETH = await contract.read.STETH();
16
- console.table({
17
- VAULT_MASTER_ROLE,
18
- DEFAULT_ADMIN_ROLE,
19
- STETH,
20
- });
21
- });
22
- vaultHub
23
- .command("v-count")
24
- .description("get vaults count")
25
- .argument("<chainId>", "chainId")
26
- .action(async (chainId) => {
27
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
28
- const vaultsCount = await contract.read.vaultsCount();
29
- console.log("Vaults count:", Number(vaultsCount));
30
- });
31
- vaultHub
32
- .command("v")
33
- .description("get vault")
34
- .argument("<chainId>", "chainId")
35
- .argument("<index>", "index")
36
- .action(async (chainId, index) => {
37
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
38
- const vault = await contract.read.vault(index);
39
- const vaultSocket = await contract.read.vaultSocket(index);
40
- console.table({
41
- vault,
42
- vaultSocket,
43
- });
44
- });
45
- vaultHub
46
- .command("rr-index")
47
- .description("get reserve ratio by index")
48
- .argument("<chainId>", "chainId")
49
- .argument("<index>", "index")
50
- .action(async (chainId, index) => {
51
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
52
- const vault = await contract.read.vault(index);
53
- const reserveRatio = await contract.read.reserveRatio([vault]);
54
- console.log("Reserve ratio:", Number(reserveRatio));
55
- });
56
- vaultHub
57
- .command("rr-vault")
58
- .description("get reserve ratio by vault")
59
- .argument("<chainId>", "chainId")
60
- .argument("<vault>", "vault")
61
- .action(async (chainId, vault) => {
62
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
63
- const reserveRatio = await contract.read.reserveRatio([vault]);
64
- console.log("Reserve ratio:", Number(reserveRatio));
65
- });
66
- vaultHub
67
- .command("v-connect")
68
- .description("connect vault")
69
- .argument("<chainId>", "chainId")
70
- .argument("<vault>", "vault")
71
- .argument("<capShares>", "cap shares")
72
- .argument("<minReserveRatioBP>", "min reserve ratio bp")
73
- .argument("<treasuryFeeBP>", "treasury fee bp")
74
- .action(async (chainId, vault, capShares, minReserveRatioBP, treasuryFeeBP) => {
75
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
76
- const tx = await contract.write.connectVault([vault, capShares, minReserveRatioBP, treasuryFeeBP], {
77
- account: (0, _providers_1.getAccount)(chainId),
78
- chain: chainId,
79
- });
80
- console.log("Transaction:", tx);
81
- });
82
- vaultHub
83
- .command("v-mint-steth") // Define the 'v-mint-steth' command
84
- .description("mint StETH tokens backed by vault external balance to the receiver address") // Description of the command
85
- .argument("<chainId>", "chainId") // Argument: chain ID
86
- .argument("<receiver>", "receiver") // Argument: receiver address
87
- .argument("<amount>", "amount") // Argument: amount to mint
88
- .action(async (chainId, receiver, amount) => {
89
- // Get the VaultHub contract instance for the specified chain ID
90
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
91
- // Execute the mintStethBackedByVault transaction with receiver and amount
92
- const tx = await contract.write.mintStethBackedByVault([receiver, amount], {
93
- account: (0, _providers_1.getAccount)(chainId),
94
- chain: chainId,
95
- });
96
- // Log the transaction details to the console
97
- console.log("Transaction:", tx);
98
- });
99
- vaultHub
100
- .command("v-burn-steth")
101
- .description("burn steth from the balance of the vault contract")
102
- .argument("<chainId>", "chainId")
103
- .argument("<amount>", "amount")
104
- .action(async (chainId, amount) => {
105
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
106
- const tx = await contract.write.burnStethBackedByVault([amount], {
107
- account: (0, _providers_1.getAccount)(chainId),
108
- chain: chainId,
109
- });
110
- console.log("Transaction:", tx);
111
- });
112
- vaultHub
113
- .command("v-force-balance")
114
- .description("force rebalance of the vault")
115
- .argument("<chainId>", "chainId")
116
- .argument("<vault>", "vault")
117
- .action(async (chainId, vault) => {
118
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
119
- const tx = await contract.write.forceRebalance([vault], {
120
- account: (0, _providers_1.getAccount)(chainId),
121
- chain: chainId,
122
- });
123
- console.log("Transaction:", tx);
124
- });
125
- vaultHub
126
- .command("v-rebalance")
127
- .description("rebalances the vault, by writing off the amount equal to passed ether from the vault's minted stETH counter")
128
- .argument("<chainId>", "chainId")
129
- .action(async (chainId) => {
130
- const contract = (0, _contracts_1.getVaultHubContract)(chainId);
131
- const tx = await contract.write.rebalance({
132
- account: (0, _providers_1.getAccount)(chainId),
133
- chain: chainId,
134
- });
135
- console.log("Transaction:", tx);
136
- });
137
- //# sourceMappingURL=vault-hub.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vault-hub.js","sourceRoot":"","sources":["../../programs/vault-hub.ts"],"names":[],"mappings":"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"}