@lidofinance/lsv-cli 1.0.0-alpha.4 → 1.0.0-alpha.41
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.
- package/README.md +40 -19
- package/dist/abi/BlsHarness.d.ts +178 -0
- package/dist/abi/BlsHarness.js +232 -0
- package/dist/abi/BlsHarness.js.map +1 -0
- package/dist/abi/CLProofVerifier.d.ts +188 -0
- package/dist/abi/CLProofVerifier.js +247 -0
- package/dist/abi/CLProofVerifier.js.map +1 -0
- package/dist/abi/Dashboard.d.ts +1706 -0
- package/dist/abi/Dashboard.js +1922 -0
- package/dist/abi/Dashboard.js.map +1 -0
- package/dist/abi/LidoLocator.d.ts +330 -0
- package/dist/abi/LidoLocator.js +426 -0
- package/dist/abi/LidoLocator.js.map +1 -0
- package/dist/abi/OperatorGrid.d.ts +914 -0
- package/dist/abi/OperatorGrid.js +1185 -0
- package/dist/abi/OperatorGrid.js.map +1 -0
- package/dist/abi/PredepositGuarantee.d.ts +1382 -0
- package/dist/abi/PredepositGuarantee.js +1789 -0
- package/dist/abi/PredepositGuarantee.js.map +1 -0
- package/dist/abi/ReportChecker.d.ts +83 -0
- package/dist/abi/ReportChecker.js +109 -0
- package/dist/abi/ReportChecker.js.map +1 -0
- package/dist/abi/StEth.d.ts +372 -0
- package/dist/abi/StEth.js +493 -0
- package/dist/abi/StEth.js.map +1 -0
- package/dist/abi/StakingVault.d.ts +1085 -0
- package/dist/abi/StakingVault.js +1115 -0
- package/dist/abi/StakingVault.js.map +1 -0
- package/dist/abi/TokenManager.d.ts +577 -0
- package/dist/abi/TokenManager.js +756 -0
- package/dist/abi/TokenManager.js.map +1 -0
- package/dist/abi/VaultFactory.d.ts +160 -0
- package/dist/abi/VaultFactory.js +209 -0
- package/dist/abi/VaultFactory.js.map +1 -0
- package/dist/abi/VaultHub.d.ts +1537 -0
- package/dist/abi/VaultHub.js +1257 -436
- package/dist/abi/VaultHub.js.map +1 -1
- package/dist/abi/VaultViewer.d.ts +223 -0
- package/dist/abi/VaultViewer.js +297 -0
- package/dist/abi/VaultViewer.js.map +1 -0
- package/dist/abi/Voting.d.ts +676 -0
- package/dist/abi/Voting.js +884 -0
- package/dist/abi/Voting.js.map +1 -0
- package/dist/abi/WstEth.d.ts +362 -0
- package/dist/abi/WstEth.js +478 -0
- package/dist/abi/WstEth.js.map +1 -0
- package/dist/abi/index.d.ts +15 -0
- package/dist/abi/index.js +17 -0
- package/dist/abi/index.js.map +1 -0
- package/dist/command/index.d.ts +2 -0
- package/dist/command/index.js +4 -5
- package/dist/command/index.js.map +1 -1
- package/dist/configs/constants.d.ts +36 -0
- package/dist/configs/constants.js +3 -0
- package/dist/configs/constants.js.map +1 -0
- package/dist/configs/deployed.d.ts +17 -0
- package/dist/configs/deployed.js +87 -52
- package/dist/configs/deployed.js.map +1 -1
- package/dist/configs/envs.d.ts +2 -0
- package/dist/configs/envs.js +13 -37
- package/dist/configs/envs.js.map +1 -1
- package/dist/configs/index.d.ts +3 -0
- package/dist/configs/index.js +3 -18
- package/dist/configs/index.js.map +1 -1
- package/dist/configs/utils.d.ts +4 -0
- package/dist/configs/utils.js +22 -0
- package/dist/configs/utils.js.map +1 -0
- package/dist/contracts/blsHarness.d.ts +947 -0
- package/dist/contracts/blsHarness.js +24 -0
- package/dist/contracts/blsHarness.js.map +1 -0
- package/dist/contracts/clProofVerifier.d.ts +2647 -0
- package/dist/contracts/clProofVerifier.js +23 -0
- package/dist/contracts/clProofVerifier.js.map +1 -0
- package/dist/contracts/dashboard.d.ts +4 -0
- package/dist/contracts/dashboard.js +11 -0
- package/dist/contracts/dashboard.js.map +1 -0
- package/dist/contracts/index.d.ts +15 -0
- package/dist/contracts/index.js +15 -17
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/locator.d.ts +6935 -0
- package/dist/contracts/locator.js +16 -0
- package/dist/contracts/locator.js.map +1 -0
- package/dist/contracts/operator-grid.d.ts +3 -0
- package/dist/contracts/operator-grid.js +17 -0
- package/dist/contracts/operator-grid.js.map +1 -0
- package/dist/contracts/pdg.d.ts +3 -0
- package/dist/contracts/pdg.js +17 -0
- package/dist/contracts/pdg.js.map +1 -0
- package/dist/contracts/reportChecker.d.ts +758 -0
- package/dist/contracts/reportChecker.js +23 -0
- package/dist/contracts/reportChecker.js.map +1 -0
- package/dist/contracts/steth.d.ts +27706 -0
- package/dist/contracts/steth.js +18 -0
- package/dist/contracts/steth.js.map +1 -0
- package/dist/contracts/token-manager.d.ts +3 -0
- package/dist/contracts/token-manager.js +13 -0
- package/dist/contracts/token-manager.js.map +1 -0
- package/dist/contracts/vault-factory.d.ts +2678 -0
- package/dist/contracts/vault-factory.js +14 -0
- package/dist/contracts/vault-factory.js.map +1 -0
- package/dist/contracts/vault-hub.d.ts +3 -0
- package/dist/contracts/vault-hub.js +14 -16
- package/dist/contracts/vault-hub.js.map +1 -1
- package/dist/contracts/vault-viewer.d.ts +2681 -0
- package/dist/contracts/vault-viewer.js +23 -0
- package/dist/contracts/vault-viewer.js.map +1 -0
- package/dist/contracts/vault.d.ts +3 -0
- package/dist/contracts/vault.js +11 -0
- package/dist/contracts/vault.js.map +1 -0
- package/dist/contracts/voting.d.ts +6 -0
- package/dist/contracts/voting.js +19 -0
- package/dist/contracts/voting.js.map +1 -0
- package/dist/contracts/wsteth.d.ts +24690 -0
- package/dist/contracts/wsteth.js +18 -0
- package/dist/contracts/wsteth.js.map +1 -0
- package/dist/features/dashboard.d.ts +5 -0
- package/dist/features/dashboard.js +217 -0
- package/dist/features/dashboard.js.map +1 -0
- package/dist/features/index.d.ts +7 -0
- package/dist/features/index.js +8 -0
- package/dist/features/index.js.map +1 -0
- package/dist/features/operator-grid.d.ts +2 -0
- package/dist/features/operator-grid.js +57 -0
- package/dist/features/operator-grid.js.map +1 -0
- package/dist/features/pdg.d.ts +2 -0
- package/dist/features/pdg.js +80 -0
- package/dist/features/pdg.js.map +1 -0
- package/dist/features/token-manager.d.ts +0 -0
- package/dist/features/token-manager.js +7 -0
- package/dist/features/token-manager.js.map +1 -0
- package/dist/features/vault-factory.d.ts +8 -0
- package/dist/features/vault-factory.js +57 -0
- package/dist/features/vault-factory.js.map +1 -0
- package/dist/features/vault-hub.d.ts +2 -0
- package/dist/features/vault-hub.js +81 -0
- package/dist/features/vault-hub.js.map +1 -0
- package/dist/features/vault.d.ts +2 -0
- package/dist/features/vault.js +54 -0
- package/dist/features/vault.js.map +1 -0
- package/dist/features/voting.d.ts +7 -0
- package/dist/features/voting.js +133 -0
- package/dist/features/voting.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +8 -5
- package/dist/index.js.map +1 -1
- package/dist/programs/account.d.ts +1 -0
- package/dist/programs/account.js +147 -0
- package/dist/programs/account.js.map +1 -0
- package/dist/programs/config.d.ts +1 -0
- package/dist/programs/config.js +31 -0
- package/dist/programs/config.js.map +1 -0
- package/dist/programs/dashboard/config.d.ts +2 -0
- package/dist/programs/dashboard/config.js +111 -0
- package/dist/programs/dashboard/config.js.map +1 -0
- package/dist/programs/dashboard/index.d.ts +3 -0
- package/dist/programs/dashboard/index.js +4 -0
- package/dist/programs/dashboard/index.js.map +1 -0
- package/dist/programs/dashboard/main.d.ts +1 -0
- package/dist/programs/dashboard/main.js +5 -0
- package/dist/programs/dashboard/main.js.map +1 -0
- package/dist/programs/dashboard/read.d.ts +1 -0
- package/dist/programs/dashboard/read.js +88 -0
- package/dist/programs/dashboard/read.js.map +1 -0
- package/dist/programs/dashboard/write.d.ts +1 -0
- package/dist/programs/dashboard/write.js +553 -0
- package/dist/programs/dashboard/write.js.map +1 -0
- package/dist/programs/hub/config.d.ts +2 -0
- package/dist/programs/hub/config.js +123 -0
- package/dist/programs/hub/config.js.map +1 -0
- package/dist/programs/hub/index.d.ts +3 -0
- package/dist/programs/hub/index.js +4 -0
- package/dist/programs/hub/index.js.map +1 -0
- package/dist/programs/hub/main.d.ts +1 -0
- package/dist/programs/hub/main.js +5 -0
- package/dist/programs/hub/main.js.map +1 -0
- package/dist/programs/hub/read.d.ts +1 -0
- package/dist/programs/hub/read.js +57 -0
- package/dist/programs/hub/read.js.map +1 -0
- package/dist/programs/hub/write.d.ts +1 -0
- package/dist/programs/hub/write.js +246 -0
- package/dist/programs/hub/write.js.map +1 -0
- package/dist/programs/index.d.ts +11 -0
- package/dist/programs/index.js +11 -17
- package/dist/programs/index.js.map +1 -1
- package/dist/programs/operator-grid/config.d.ts +2 -0
- package/dist/programs/operator-grid/config.js +81 -0
- package/dist/programs/operator-grid/config.js.map +1 -0
- package/dist/programs/operator-grid/index.d.ts +3 -0
- package/dist/programs/operator-grid/index.js +4 -0
- package/dist/programs/operator-grid/index.js.map +1 -0
- package/dist/programs/operator-grid/main.d.ts +1 -0
- package/dist/programs/operator-grid/main.js +5 -0
- package/dist/programs/operator-grid/main.js.map +1 -0
- package/dist/programs/operator-grid/read.d.ts +1 -0
- package/dist/programs/operator-grid/read.js +24 -0
- package/dist/programs/operator-grid/read.js.map +1 -0
- package/dist/programs/operator-grid/write.d.ts +1 -0
- package/dist/programs/operator-grid/write.js +124 -0
- package/dist/programs/operator-grid/write.js.map +1 -0
- package/dist/programs/pdg/config.d.ts +2 -0
- package/dist/programs/pdg/config.js +133 -0
- package/dist/programs/pdg/config.js.map +1 -0
- package/dist/programs/pdg/index.d.ts +3 -0
- package/dist/programs/pdg/index.js +4 -0
- package/dist/programs/pdg/index.js.map +1 -0
- package/dist/programs/pdg/main.d.ts +1 -0
- package/dist/programs/pdg/main.js +5 -0
- package/dist/programs/pdg/main.js.map +1 -0
- package/dist/programs/pdg/read.d.ts +1 -0
- package/dist/programs/pdg/read.js +24 -0
- package/dist/programs/pdg/read.js.map +1 -0
- package/dist/programs/pdg/write.d.ts +1 -0
- package/dist/programs/pdg/write.js +366 -0
- package/dist/programs/pdg/write.js.map +1 -0
- package/dist/programs/pdg-helpers.d.ts +1 -0
- package/dist/programs/pdg-helpers.js +216 -0
- package/dist/programs/pdg-helpers.js.map +1 -0
- package/dist/programs/report/index.d.ts +3 -0
- package/dist/programs/report/index.js +4 -0
- package/dist/programs/report/index.js.map +1 -0
- package/dist/programs/report/main.d.ts +1 -0
- package/dist/programs/report/main.js +3 -0
- package/dist/programs/report/main.js.map +1 -0
- package/dist/programs/report/read.d.ts +1 -0
- package/dist/programs/report/read.js +61 -0
- package/dist/programs/report/read.js.map +1 -0
- package/dist/programs/report/write.d.ts +1 -0
- package/dist/programs/report/write.js +126 -0
- package/dist/programs/report/write.js.map +1 -0
- package/dist/programs/vault/config.d.ts +2 -0
- package/dist/programs/vault/config.js +70 -0
- package/dist/programs/vault/config.js.map +1 -0
- package/dist/programs/vault/index.d.ts +3 -0
- package/dist/programs/vault/index.js +4 -0
- package/dist/programs/vault/index.js.map +1 -0
- package/dist/programs/vault/main.d.ts +1 -0
- package/dist/programs/vault/main.js +3 -0
- package/dist/programs/vault/main.js.map +1 -0
- package/dist/programs/vault/read.d.ts +1 -0
- package/dist/programs/vault/read.js +25 -0
- package/dist/programs/vault/read.js.map +1 -0
- package/dist/programs/vault/write.d.ts +1 -0
- package/dist/programs/vault/write.js +247 -0
- package/dist/programs/vault/write.js.map +1 -0
- package/dist/programs/vault-factory/config.d.ts +2 -0
- package/dist/programs/vault-factory/config.js +2 -0
- package/dist/programs/vault-factory/config.js.map +1 -0
- package/dist/programs/vault-factory/index.d.ts +3 -0
- package/dist/programs/vault-factory/index.js +4 -0
- package/dist/programs/vault-factory/index.js.map +1 -0
- package/dist/programs/vault-factory/main.d.ts +1 -0
- package/dist/programs/vault-factory/main.js +5 -0
- package/dist/programs/vault-factory/main.js.map +1 -0
- package/dist/programs/vault-factory/read.d.ts +1 -0
- package/dist/programs/vault-factory/read.js +24 -0
- package/dist/programs/vault-factory/read.js.map +1 -0
- package/dist/programs/vault-factory/write.d.ts +1 -0
- package/dist/programs/vault-factory/write.js +72 -0
- package/dist/programs/vault-factory/write.js.map +1 -0
- package/dist/programs/vault-viewer/config.d.ts +2 -0
- package/dist/programs/vault-viewer/config.js +120 -0
- package/dist/programs/vault-viewer/config.js.map +1 -0
- package/dist/programs/vault-viewer/index.d.ts +2 -0
- package/dist/programs/vault-viewer/index.js +3 -0
- package/dist/programs/vault-viewer/index.js.map +1 -0
- package/dist/programs/vault-viewer/main.d.ts +1 -0
- package/dist/programs/vault-viewer/main.js +10 -0
- package/dist/programs/vault-viewer/main.js.map +1 -0
- package/dist/programs/vault-viewer/read.d.ts +1 -0
- package/dist/programs/vault-viewer/read.js +106 -0
- package/dist/programs/vault-viewer/read.js.map +1 -0
- package/dist/programs/voting.d.ts +1 -0
- package/dist/programs/voting.js +18 -0
- package/dist/programs/voting.js.map +1 -0
- package/dist/providers/index.d.ts +1 -0
- package/dist/providers/index.js +1 -17
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/wallet.d.ts +6897 -0
- package/dist/providers/wallet.js +43 -28
- package/dist/providers/wallet.js.map +1 -1
- package/dist/types/common.d.ts +31 -0
- package/dist/types/common.js +2 -0
- package/dist/types/common.js.map +1 -0
- package/dist/types/config.d.ts +25 -0
- package/dist/types/config.js +2 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/arguments.d.ts +13 -0
- package/dist/utils/arguments.js +67 -0
- package/dist/utils/arguments.js.map +1 -0
- package/dist/utils/bls.d.ts +21 -0
- package/dist/utils/bls.js +101 -0
- package/dist/utils/bls.js.map +1 -0
- package/dist/utils/calculate-overview.d.ts +28 -0
- package/dist/utils/calculate-overview.js +56 -0
- package/dist/utils/calculate-overview.js.map +1 -0
- package/dist/utils/commands/dashboard.d.ts +6 -0
- package/dist/utils/commands/dashboard.js +108 -0
- package/dist/utils/commands/dashboard.js.map +1 -0
- package/dist/utils/commands/index.d.ts +1 -0
- package/dist/utils/commands/index.js +2 -0
- package/dist/utils/commands/index.js.map +1 -0
- package/dist/utils/contract.d.ts +45 -0
- package/dist/utils/contract.js +170 -0
- package/dist/utils/contract.js.map +1 -0
- package/dist/utils/data-validators.d.ts +6 -0
- package/dist/utils/data-validators.js +54 -0
- package/dist/utils/data-validators.js.map +1 -0
- package/dist/utils/error-handler.d.ts +1 -0
- package/dist/utils/error-handler.js +13 -0
- package/dist/utils/error-handler.js.map +1 -0
- package/dist/utils/fetchCL.d.ts +14 -0
- package/dist/utils/fetchCL.js +57 -0
- package/dist/utils/fetchCL.js.map +1 -0
- package/dist/utils/get-commands.d.ts +2 -0
- package/dist/utils/get-commands.js +11 -0
- package/dist/utils/get-commands.js.map +1 -0
- package/dist/utils/get-deposit-data-root.d.ts +7 -0
- package/dist/utils/get-deposit-data-root.js +40 -0
- package/dist/utils/get-deposit-data-root.js.map +1 -0
- package/dist/utils/get-value.d.ts +1 -0
- package/dist/utils/get-value.js +5 -11
- package/dist/utils/get-value.js.map +1 -1
- package/dist/utils/health/calculate-health.d.ts +11 -0
- package/dist/utils/health/calculate-health.js +22 -0
- package/dist/utils/health/calculate-health.js.map +1 -0
- package/dist/utils/health/health-utils.d.ts +27743 -0
- package/dist/utils/health/health-utils.js +74 -0
- package/dist/utils/health/health-utils.js.map +1 -0
- package/dist/utils/health/index.d.ts +2 -0
- package/dist/utils/health/index.js +3 -0
- package/dist/utils/health/index.js.map +1 -0
- package/dist/utils/index.d.ts +22 -0
- package/dist/utils/index.js +22 -17
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/ipfs.d.ts +6 -0
- package/dist/utils/ipfs.js +57 -0
- package/dist/utils/ipfs.js.map +1 -0
- package/dist/utils/logging/console.d.ts +7 -0
- package/dist/utils/logging/console.js +23 -0
- package/dist/utils/logging/console.js.map +1 -0
- package/dist/utils/logging/constants.d.ts +2 -0
- package/dist/utils/logging/constants.js +12 -0
- package/dist/utils/logging/constants.js.map +1 -0
- package/dist/utils/logging/index.d.ts +1 -0
- package/dist/utils/logging/index.js +2 -0
- package/dist/utils/logging/index.js.map +1 -0
- package/dist/utils/prompts/dashboard.d.ts +29 -0
- package/dist/utils/prompts/dashboard.js +63 -0
- package/dist/utils/prompts/dashboard.js.map +1 -0
- package/dist/utils/prompts/default.d.ts +3 -0
- package/dist/utils/prompts/default.js +17 -0
- package/dist/utils/prompts/default.js.map +1 -0
- package/dist/utils/prompts/index.d.ts +5 -0
- package/dist/utils/prompts/index.js +6 -0
- package/dist/utils/prompts/index.js.map +1 -0
- package/dist/utils/prompts/operations.d.ts +9 -0
- package/dist/utils/prompts/operations.js +41 -0
- package/dist/utils/prompts/operations.js.map +1 -0
- package/dist/utils/prompts/predeposit-guarantee.d.ts +3 -0
- package/dist/utils/prompts/predeposit-guarantee.js +22 -0
- package/dist/utils/prompts/predeposit-guarantee.js.map +1 -0
- package/dist/utils/prompts/vault.d.ts +2 -0
- package/dist/utils/prompts/vault.js +14 -0
- package/dist/utils/prompts/vault.js.map +1 -0
- package/dist/utils/proof/create-proof.d.ts +11 -0
- package/dist/utils/proof/create-proof.js +38 -0
- package/dist/utils/proof/create-proof.js.map +1 -0
- package/dist/utils/proof/first-validator-gindex.d.ts +1 -0
- package/dist/utils/proof/first-validator-gindex.js +27 -0
- package/dist/utils/proof/first-validator-gindex.js.map +1 -0
- package/dist/utils/proof/index.d.ts +4 -0
- package/dist/utils/proof/index.js +5 -0
- package/dist/utils/proof/index.js.map +1 -0
- package/dist/utils/proof/merkle-utils.d.ts +54 -0
- package/dist/utils/proof/merkle-utils.js +173 -0
- package/dist/utils/proof/merkle-utils.js.map +1 -0
- package/dist/utils/proof/proofs.d.ts +305 -0
- package/dist/utils/proof/proofs.js +52 -0
- package/dist/utils/proof/proofs.js.map +1 -0
- package/dist/utils/proof/report-proof.d.ts +5 -0
- package/dist/utils/proof/report-proof.js +26 -0
- package/dist/utils/proof/report-proof.js.map +1 -0
- package/dist/utils/read-programs-by-abi.d.ts +20 -0
- package/dist/utils/read-programs-by-abi.js +91 -0
- package/dist/utils/read-programs-by-abi.js.map +1 -0
- package/dist/utils/report.d.ts +89 -0
- package/dist/utils/report.js +72 -0
- package/dist/utils/report.js.map +1 -0
- package/dist/utils/required-lock.d.ts +5 -0
- package/dist/utils/required-lock.js +21 -0
- package/dist/utils/required-lock.js.map +1 -0
- package/dist/utils/resolve-path.d.ts +1 -0
- package/dist/utils/resolve-path.js +10 -0
- package/dist/utils/resolve-path.js.map +1 -0
- package/dist/utils/sleep.d.ts +1 -0
- package/dist/utils/sleep.js +4 -0
- package/dist/utils/sleep.js.map +1 -0
- package/dist/utils/spinner/index.d.ts +1 -0
- package/dist/utils/spinner/index.js +2 -0
- package/dist/utils/spinner/index.js.map +1 -0
- package/dist/utils/spinner/spinners.d.ts +7 -0
- package/dist/utils/spinner/spinners.js +16 -0
- package/dist/utils/spinner/spinners.js.map +1 -0
- package/dist/utils/spinner/spinners.json +119 -0
- package/dist/version/index.d.ts +1 -0
- package/dist/version/index.js +1 -0
- package/dist/version/index.js.map +1 -0
- package/package.json +64 -12
- package/dist/programs/vault-hub.js +0 -137
- package/dist/programs/vault-hub.js.map +0 -1
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Option } from 'commander';
|
|
2
|
+
import { callReadMethod, fetchAndVerifyFile, getAllVaultsReports, getCommandsJson, getReportLeaf, getVaultReport, logInfo, } from '../../utils/index.js';
|
|
3
|
+
import { getVaultHubContract } from '../../contracts/index.js';
|
|
4
|
+
import { report } from './main.js';
|
|
5
|
+
const reportRead = report
|
|
6
|
+
.command('read')
|
|
7
|
+
.aliases(['r'])
|
|
8
|
+
.description('pdg read commands');
|
|
9
|
+
reportRead.addOption(new Option('-cmd2json'));
|
|
10
|
+
reportRead.on('option:-cmd2json', function () {
|
|
11
|
+
logInfo(getCommandsJson(reportRead));
|
|
12
|
+
process.exit();
|
|
13
|
+
});
|
|
14
|
+
reportRead
|
|
15
|
+
.command('by-vault')
|
|
16
|
+
.description('get report by vault')
|
|
17
|
+
.argument('<vault>', 'vault address')
|
|
18
|
+
.option('-u, --url', 'ipfs url')
|
|
19
|
+
.action(async (vault, { url }) => {
|
|
20
|
+
const vaultHubContract = await getVaultHubContract();
|
|
21
|
+
const [_vaultsDataTimestamp, _vaultsDataTreeRoot, vaultsDataReportCid] = await callReadMethod(vaultHubContract, 'latestReportData');
|
|
22
|
+
await fetchAndVerifyFile(vaultsDataReportCid, url);
|
|
23
|
+
const report = await getVaultReport(vault, vaultsDataReportCid, url);
|
|
24
|
+
logInfo(report);
|
|
25
|
+
});
|
|
26
|
+
reportRead
|
|
27
|
+
.command('all')
|
|
28
|
+
.description('get report by all vaults')
|
|
29
|
+
.option('-u, --url', 'ipfs gateway url')
|
|
30
|
+
.action(async ({ url }) => {
|
|
31
|
+
const vaultHubContract = await getVaultHubContract();
|
|
32
|
+
const [_vaultsDataTimestamp, _vaultsDataTreeRoot, vaultsDataReportCid] = await callReadMethod(vaultHubContract, 'latestReportData');
|
|
33
|
+
await fetchAndVerifyFile(vaultsDataReportCid, url);
|
|
34
|
+
const allVaultsReports = await getAllVaultsReports(vaultsDataReportCid, url);
|
|
35
|
+
logInfo(allVaultsReports);
|
|
36
|
+
});
|
|
37
|
+
reportRead
|
|
38
|
+
.command('check-cid')
|
|
39
|
+
.description('check ipfs CID')
|
|
40
|
+
.option('-u, --url', 'ipfs gateway url')
|
|
41
|
+
.action(async ({ url }) => {
|
|
42
|
+
const vaultHubContract = await getVaultHubContract();
|
|
43
|
+
const [_vaultsDataTimestamp, _vaultsDataTreeRoot, vaultsDataReportCid] = await callReadMethod(vaultHubContract, 'latestReportData');
|
|
44
|
+
await fetchAndVerifyFile(vaultsDataReportCid, url);
|
|
45
|
+
});
|
|
46
|
+
reportRead
|
|
47
|
+
.command('make-leaf')
|
|
48
|
+
.description('make leaf')
|
|
49
|
+
.argument('<vault>', 'vault address')
|
|
50
|
+
.option('-u, --url', 'ipfs gateway url')
|
|
51
|
+
.action(async (vault, { url }) => {
|
|
52
|
+
const vaultHubContract = await getVaultHubContract();
|
|
53
|
+
const [_vaultsDataTimestamp, _vaultsDataTreeRoot, vaultsDataReportCid] = await callReadMethod(vaultHubContract, 'latestReportData');
|
|
54
|
+
await fetchAndVerifyFile(vaultsDataReportCid, url);
|
|
55
|
+
const report = await getVaultReport(vault, vaultsDataReportCid, url);
|
|
56
|
+
const reportLeaf = getReportLeaf(report.data);
|
|
57
|
+
logInfo('local leaf', reportLeaf);
|
|
58
|
+
logInfo('ipfs leaf', report.leaf);
|
|
59
|
+
logInfo('ipfs merkle tree root', report.merkleTreeRoot);
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=read.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read.js","sourceRoot":"","sources":["../../../programs/report/read.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { Option } from 'commander';
|
|
2
|
+
import cliProgress from 'cli-progress';
|
|
3
|
+
import { getVaultHubContract } from '../../contracts/index.js';
|
|
4
|
+
import { callWriteMethodWithReceipt, callReadMethod, logInfo, getCommandsJson, getVaultReport, getVaultReportProofByCid, confirmPrompt, logCancel, logError, getAllVaultsReports, getAllVaultsReportProofs, fetchAndVerifyFile, } from '../../utils/index.js';
|
|
5
|
+
import { report } from './main.js';
|
|
6
|
+
const reportWrite = report
|
|
7
|
+
.command('write')
|
|
8
|
+
.aliases(['w'])
|
|
9
|
+
.description('pdg write commands');
|
|
10
|
+
reportWrite.addOption(new Option('-cmd2json'));
|
|
11
|
+
reportWrite.on('option:-cmd2json', function () {
|
|
12
|
+
logInfo(getCommandsJson(reportWrite));
|
|
13
|
+
process.exit();
|
|
14
|
+
});
|
|
15
|
+
reportWrite
|
|
16
|
+
.command('by-vault-submit')
|
|
17
|
+
.alias('submit')
|
|
18
|
+
.description('submit report by vault')
|
|
19
|
+
.argument('<vault>', 'vault address')
|
|
20
|
+
.option('-u, --url', 'ipfs gateway url')
|
|
21
|
+
.action(async (vault, { url }) => {
|
|
22
|
+
const vaultHubContract = await getVaultHubContract();
|
|
23
|
+
const [_vaultsDataTimestamp, _vaultsDataTreeRoot, vaultsDataReportCid] = await callReadMethod(vaultHubContract, 'latestReportData');
|
|
24
|
+
await fetchAndVerifyFile(vaultsDataReportCid, url);
|
|
25
|
+
const report = await getVaultReport(vault, vaultsDataReportCid, url);
|
|
26
|
+
const reportProof = await getVaultReportProofByCid(vault, report.proofsCID);
|
|
27
|
+
await fetchAndVerifyFile(report.proofsCID, url);
|
|
28
|
+
const { confirm } = await confirmPrompt(`Are you sure you want to submit report for vault ${vault}?
|
|
29
|
+
Total value wei: ${report.data.total_value_wei}
|
|
30
|
+
In out delta: ${report.data.in_out_delta}
|
|
31
|
+
Fee: ${report.data.fee}
|
|
32
|
+
Liability shares: ${report.data.liability_shares}
|
|
33
|
+
`, 'confirm');
|
|
34
|
+
if (!confirm) {
|
|
35
|
+
logCancel('Report not submitted');
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
await callWriteMethodWithReceipt({
|
|
39
|
+
contract: vaultHubContract,
|
|
40
|
+
methodName: 'updateVaultData',
|
|
41
|
+
payload: [
|
|
42
|
+
vault,
|
|
43
|
+
BigInt(report.data.total_value_wei),
|
|
44
|
+
BigInt(report.data.in_out_delta),
|
|
45
|
+
BigInt(report.data.fee),
|
|
46
|
+
BigInt(report.data.liability_shares),
|
|
47
|
+
reportProof.proof,
|
|
48
|
+
],
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
reportWrite
|
|
52
|
+
.command('by-vaults-submit')
|
|
53
|
+
.description('submit report for vaults')
|
|
54
|
+
.argument('<vaults...>', 'vaults addresses')
|
|
55
|
+
.option('-u, --url', 'ipfs gateway url')
|
|
56
|
+
.action(async (vaults, { url }) => {
|
|
57
|
+
const vaultHubContract = await getVaultHubContract();
|
|
58
|
+
const [_vaultsDataTimestamp, _vaultsDataTreeRoot, vaultsDataReportCid] = await callReadMethod(vaultHubContract, 'latestReportData');
|
|
59
|
+
await fetchAndVerifyFile(vaultsDataReportCid, url);
|
|
60
|
+
const { vaultReports, proofsCID } = await getAllVaultsReports(vaultsDataReportCid, url);
|
|
61
|
+
await fetchAndVerifyFile(proofsCID, url);
|
|
62
|
+
const allVaultsProofs = await getAllVaultsReportProofs(proofsCID, url);
|
|
63
|
+
const progressBar = new cliProgress.SingleBar({
|
|
64
|
+
format: 'Progress |{bar}| {percentage}% || {value}/{total} Vaults Updated',
|
|
65
|
+
stopOnComplete: true,
|
|
66
|
+
}, cliProgress.Presets.shades_classic);
|
|
67
|
+
progressBar.start(vaults.length, 0);
|
|
68
|
+
for (const [_index, vault] of vaults.entries()) {
|
|
69
|
+
const vaultReport = vaultReports.find((v) => v.vault_address === vault);
|
|
70
|
+
if (!vaultReport) {
|
|
71
|
+
logError(`Vault ${vault} not found`);
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
await callWriteMethodWithReceipt({
|
|
75
|
+
contract: vaultHubContract,
|
|
76
|
+
methodName: 'updateVaultData',
|
|
77
|
+
payload: [
|
|
78
|
+
vault,
|
|
79
|
+
BigInt(vaultReport.total_value_wei),
|
|
80
|
+
BigInt(vaultReport.in_out_delta),
|
|
81
|
+
BigInt(vaultReport.fee),
|
|
82
|
+
BigInt(vaultReport.liability_shares),
|
|
83
|
+
allVaultsProofs[vault]?.proof,
|
|
84
|
+
],
|
|
85
|
+
withSpinner: false,
|
|
86
|
+
silent: true,
|
|
87
|
+
});
|
|
88
|
+
progressBar.increment();
|
|
89
|
+
}
|
|
90
|
+
progressBar.stop();
|
|
91
|
+
});
|
|
92
|
+
reportWrite
|
|
93
|
+
.command('submit-all')
|
|
94
|
+
.description('submit report for all vaults')
|
|
95
|
+
.option('-u, --url', 'ipfs gateway url')
|
|
96
|
+
.action(async ({ url }) => {
|
|
97
|
+
const vaultHubContract = await getVaultHubContract();
|
|
98
|
+
const [_vaultsDataTimestamp, _vaultsDataTreeRoot, vaultsDataReportCid] = await callReadMethod(vaultHubContract, 'latestReportData');
|
|
99
|
+
await fetchAndVerifyFile(vaultsDataReportCid, url);
|
|
100
|
+
const { vaultReports, proofsCID } = await getAllVaultsReports(vaultsDataReportCid, url);
|
|
101
|
+
await fetchAndVerifyFile(proofsCID, url);
|
|
102
|
+
const allVaultsProofs = await getAllVaultsReportProofs(proofsCID, url);
|
|
103
|
+
const progressBar = new cliProgress.SingleBar({
|
|
104
|
+
format: 'Progress |{bar}| {percentage}% || {value}/{total} Vaults Updated',
|
|
105
|
+
}, cliProgress.Presets.shades_classic);
|
|
106
|
+
progressBar.start(vaultReports.length, 0);
|
|
107
|
+
for (const [_index, report] of vaultReports.entries()) {
|
|
108
|
+
await callWriteMethodWithReceipt({
|
|
109
|
+
contract: vaultHubContract,
|
|
110
|
+
methodName: 'updateVaultData',
|
|
111
|
+
payload: [
|
|
112
|
+
report.vault_address,
|
|
113
|
+
BigInt(report.total_value_wei),
|
|
114
|
+
BigInt(report.in_out_delta),
|
|
115
|
+
BigInt(report.fee),
|
|
116
|
+
BigInt(report.liability_shares),
|
|
117
|
+
allVaultsProofs[report.vault_address]?.proof,
|
|
118
|
+
],
|
|
119
|
+
withSpinner: false,
|
|
120
|
+
silent: true,
|
|
121
|
+
});
|
|
122
|
+
progressBar.increment();
|
|
123
|
+
}
|
|
124
|
+
progressBar.stop();
|
|
125
|
+
});
|
|
126
|
+
//# sourceMappingURL=write.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../../programs/report/write.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
export const readCommandConfig = {
|
|
2
|
+
latestReport: {
|
|
3
|
+
name: 'l-report',
|
|
4
|
+
description: 'get latest vault report',
|
|
5
|
+
},
|
|
6
|
+
calculateValidatorWithdrawalFee: {
|
|
7
|
+
name: 'validator-w-fee',
|
|
8
|
+
description: 'get calculated withdrawal fee for a validator',
|
|
9
|
+
arguments: {
|
|
10
|
+
_numberOfKeys: {
|
|
11
|
+
name: 'numberOfKeys',
|
|
12
|
+
description: 'number of validators public keys',
|
|
13
|
+
modifier: (value) => BigInt(value),
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
inOutDelta: {
|
|
18
|
+
name: 'delta',
|
|
19
|
+
description: 'get the net difference between deposits and withdrawals',
|
|
20
|
+
},
|
|
21
|
+
beaconChainDepositsPaused: {
|
|
22
|
+
name: 'is-paused-deposits',
|
|
23
|
+
description: 'get whether deposits are paused by the vault owner',
|
|
24
|
+
},
|
|
25
|
+
valuation: {
|
|
26
|
+
name: 'valuation',
|
|
27
|
+
description: 'get vault valuation',
|
|
28
|
+
},
|
|
29
|
+
unlocked: {
|
|
30
|
+
name: 'unlocked',
|
|
31
|
+
description: 'get vault unlocked',
|
|
32
|
+
},
|
|
33
|
+
locked: {
|
|
34
|
+
name: 'locked',
|
|
35
|
+
description: 'get vault locked',
|
|
36
|
+
},
|
|
37
|
+
withdrawalCredentials: {
|
|
38
|
+
name: 'wc',
|
|
39
|
+
description: 'get vault withdrawal credentials',
|
|
40
|
+
},
|
|
41
|
+
nodeOperator: {
|
|
42
|
+
name: 'no',
|
|
43
|
+
description: 'get vault node operator',
|
|
44
|
+
},
|
|
45
|
+
DEPOSIT_CONTRACT: {
|
|
46
|
+
name: 'DEPOSIT_CONTRACT',
|
|
47
|
+
description: 'get vault deposit contract',
|
|
48
|
+
},
|
|
49
|
+
owner: {
|
|
50
|
+
name: 'owner',
|
|
51
|
+
description: 'get vault owner',
|
|
52
|
+
},
|
|
53
|
+
vaultHub: {
|
|
54
|
+
name: 'vault-hub',
|
|
55
|
+
description: 'get vault hub',
|
|
56
|
+
},
|
|
57
|
+
version: {
|
|
58
|
+
name: 'version',
|
|
59
|
+
description: 'get vault version',
|
|
60
|
+
},
|
|
61
|
+
initializedVersion: {
|
|
62
|
+
name: 'i-version',
|
|
63
|
+
description: 'get vault initialized version',
|
|
64
|
+
},
|
|
65
|
+
depositor: {
|
|
66
|
+
name: 'depositor',
|
|
67
|
+
description: 'get the address of the depositor',
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../programs/vault/config.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAA6B;IACzD,YAAY,EAAE;QACZ,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,yBAAyB;KACvC;IACD,+BAA+B,EAAE;QAC/B,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,+CAA+C;QAC5D,SAAS,EAAE;YACT,aAAa,EAAE;gBACb,IAAI,EAAE,cAAc;gBACpB,WAAW,EAAE,kCAAkC;gBAC/C,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;aAC3C;SACF;KACF;IACD,UAAU,EAAE;QACV,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,yDAAyD;KACvE;IACD,yBAAyB,EAAE;QACzB,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,oDAAoD;KAClE;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,qBAAqB;KACnC;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,oBAAoB;KAClC;IACD,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,kBAAkB;KAChC;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,kCAAkC;KAChD;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,yBAAyB;KACvC;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,4BAA4B;KAC1C;IACD,KAAK,EAAE;QACL,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,iBAAiB;KAC/B;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,eAAe;KAC7B;IACD,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,mBAAmB;KACjC;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,+BAA+B;KAC7C;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,kCAAkC;KAChD;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../programs/vault/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const vault: import("commander").Command;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../../programs/vault/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,CAAC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Option } from 'commander';
|
|
2
|
+
import { getStakingVaultContract } from '../../contracts/index.js';
|
|
3
|
+
import { StakingVaultAbi } from '../../abi/index.js';
|
|
4
|
+
import { getVaultBaseInfo } from '../../features/index.js';
|
|
5
|
+
import { generateReadCommands, logInfo, getCommandsJson, stringToAddress, } from '../../utils/index.js';
|
|
6
|
+
import { vault } from './main.js';
|
|
7
|
+
import { readCommandConfig } from './config.js';
|
|
8
|
+
const vaultRead = vault
|
|
9
|
+
.command('read')
|
|
10
|
+
.aliases(['r'])
|
|
11
|
+
.description('vault read commands');
|
|
12
|
+
vaultRead.addOption(new Option('-cmd2json'));
|
|
13
|
+
vaultRead.on('option:-cmd2json', function () {
|
|
14
|
+
logInfo(getCommandsJson(vaultRead));
|
|
15
|
+
process.exit();
|
|
16
|
+
});
|
|
17
|
+
vaultRead
|
|
18
|
+
.command('info')
|
|
19
|
+
.description('get vault base info')
|
|
20
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
21
|
+
.action(async (address) => {
|
|
22
|
+
await getVaultBaseInfo(address);
|
|
23
|
+
});
|
|
24
|
+
generateReadCommands(StakingVaultAbi, getStakingVaultContract, vaultRead, readCommandConfig);
|
|
25
|
+
//# sourceMappingURL=read.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read.js","sourceRoot":"","sources":["../../../programs/vault/read.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,KAAK,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EACL,oBAAoB,EACpB,OAAO,EACP,eAAe,EACf,eAAe,GAChB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,SAAS,GAAG,KAAK;KACpB,OAAO,CAAC,MAAM,CAAC;KACf,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC;KACd,WAAW,CAAC,qBAAqB,CAAC,CAAC;AAEtC,SAAS,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AAC7C,SAAS,CAAC,EAAE,CAAC,kBAAkB,EAAE;IAC/B,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;IACpC,OAAO,CAAC,IAAI,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEH,SAAS;KACN,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qBAAqB,CAAC;KAClC,QAAQ,CAAC,WAAW,EAAE,eAAe,EAAE,eAAe,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,OAAgB,EAAE,EAAE;IACjC,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEL,oBAAoB,CAClB,eAAe,EACf,uBAAuB,EACvB,SAAS,EACT,iBAAiB,CAClB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
import { parseEther } from 'viem';
|
|
2
|
+
import { Option } from 'commander';
|
|
3
|
+
import { getStakingVaultContract } from '../../contracts/index.js';
|
|
4
|
+
import { callWriteMethodWithReceipt, confirmFund, confirmOperation, etherToWei, getCommandsJson, logInfo, stringToAddress, stringToBigInt, stringToBigIntArrayWei, } from '../../utils/index.js';
|
|
5
|
+
import { vault } from './main.js';
|
|
6
|
+
const vaultWrite = vault
|
|
7
|
+
.command('write')
|
|
8
|
+
.aliases(['w'])
|
|
9
|
+
.description('vault write commands');
|
|
10
|
+
vaultWrite.addOption(new Option('-cmd2json'));
|
|
11
|
+
vaultWrite.on('option:-cmd2json', function () {
|
|
12
|
+
logInfo(getCommandsJson(vaultWrite));
|
|
13
|
+
process.exit();
|
|
14
|
+
});
|
|
15
|
+
vaultWrite
|
|
16
|
+
.command('fund')
|
|
17
|
+
.description('fund vault')
|
|
18
|
+
.option('-a, --address <address>', 'vault address')
|
|
19
|
+
.option('-e, --ether <ether>', 'amount of ether to be funded (in ETH)')
|
|
20
|
+
.action(async ({ address, ether }) => {
|
|
21
|
+
const { address: vault, amount } = await confirmFund(address, ether, 'vault');
|
|
22
|
+
if (!vault || !amount)
|
|
23
|
+
return;
|
|
24
|
+
const contract = getStakingVaultContract(address);
|
|
25
|
+
await callWriteMethodWithReceipt({
|
|
26
|
+
contract,
|
|
27
|
+
methodName: 'fund',
|
|
28
|
+
payload: [],
|
|
29
|
+
value: parseEther(amount),
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
vaultWrite
|
|
33
|
+
.command('withdraw')
|
|
34
|
+
.description('withdraw from vault')
|
|
35
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
36
|
+
.argument('<recipient>', 'recipient address', stringToAddress)
|
|
37
|
+
.argument('<eth>', 'amount to withdraw (in ETH)', etherToWei)
|
|
38
|
+
.action(async (address, recipient, amount) => {
|
|
39
|
+
const contract = getStakingVaultContract(address);
|
|
40
|
+
await callWriteMethodWithReceipt({
|
|
41
|
+
contract,
|
|
42
|
+
methodName: 'withdraw',
|
|
43
|
+
payload: [recipient, amount],
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
// TODO: get more details
|
|
47
|
+
vaultWrite
|
|
48
|
+
.command('no-deposit-beacon')
|
|
49
|
+
.description('deposit to beacon chain')
|
|
50
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
51
|
+
.argument('<amountOfDeposit>', 'amount of deposits', stringToBigInt)
|
|
52
|
+
.argument('<pubkey>', 'pubkey')
|
|
53
|
+
.argument('<signature>', 'signature')
|
|
54
|
+
.argument('<depositDataRoot>', 'depositDataRoot')
|
|
55
|
+
.action(async (vault, amountOfDeposit, pubkey, signature, depositDataRoot) => {
|
|
56
|
+
const contract = getStakingVaultContract(vault);
|
|
57
|
+
const payload = [
|
|
58
|
+
{
|
|
59
|
+
pubkey,
|
|
60
|
+
signature,
|
|
61
|
+
amount: amountOfDeposit,
|
|
62
|
+
depositDataRoot,
|
|
63
|
+
},
|
|
64
|
+
];
|
|
65
|
+
const confirm = await confirmOperation(`Are you sure you want to deposit ${amountOfDeposit} to beacon chain for the staking vault ${vault}?`);
|
|
66
|
+
if (!confirm)
|
|
67
|
+
return;
|
|
68
|
+
await callWriteMethodWithReceipt({
|
|
69
|
+
contract,
|
|
70
|
+
methodName: 'depositToBeaconChain',
|
|
71
|
+
payload: [payload],
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
// TODO: get more details
|
|
75
|
+
vaultWrite
|
|
76
|
+
.command('no-val-exit')
|
|
77
|
+
.description('request to exit validator')
|
|
78
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
79
|
+
.argument('<validatorPublicKey>', 'validator public key')
|
|
80
|
+
.action(async (address, validatorPublicKey) => {
|
|
81
|
+
const contract = getStakingVaultContract(address);
|
|
82
|
+
const confirm = await confirmOperation(`Are you sure you want to request to exit validator ${validatorPublicKey} for the staking vault ${vault}?`);
|
|
83
|
+
if (!confirm)
|
|
84
|
+
return;
|
|
85
|
+
await callWriteMethodWithReceipt({
|
|
86
|
+
contract,
|
|
87
|
+
methodName: 'requestValidatorExit',
|
|
88
|
+
payload: [validatorPublicKey],
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
vaultWrite
|
|
92
|
+
.command('bc-resume')
|
|
93
|
+
.description('Resumes deposits to beacon chain')
|
|
94
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
95
|
+
.action(async (address) => {
|
|
96
|
+
const contract = getStakingVaultContract(address);
|
|
97
|
+
const confirm = await confirmOperation(`Are you sure you want to resume deposits to beacon chain for the staking vault ${vault}?`);
|
|
98
|
+
if (!confirm)
|
|
99
|
+
return;
|
|
100
|
+
await callWriteMethodWithReceipt({
|
|
101
|
+
contract,
|
|
102
|
+
methodName: 'resumeBeaconChainDeposits',
|
|
103
|
+
payload: [],
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
vaultWrite
|
|
107
|
+
.command('bc-pause')
|
|
108
|
+
.description('Pauses deposits to beacon chain')
|
|
109
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
110
|
+
.action(async (address) => {
|
|
111
|
+
const contract = getStakingVaultContract(address);
|
|
112
|
+
const confirm = await confirmOperation(`Are you sure you want to pause deposits to beacon chain for the staking vault ${vault}?`);
|
|
113
|
+
if (!confirm)
|
|
114
|
+
return;
|
|
115
|
+
await callWriteMethodWithReceipt({
|
|
116
|
+
contract,
|
|
117
|
+
methodName: 'pauseBeaconChainDeposits',
|
|
118
|
+
payload: [],
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
vaultWrite
|
|
122
|
+
.command('report')
|
|
123
|
+
.description('Submits a report containing valuation, inOutDelta, and locked amount')
|
|
124
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
125
|
+
.argument('<timestamp>', 'timestamp of the report', stringToBigInt)
|
|
126
|
+
.argument('<totalValue>', 'new total value: validator balances + StakingVault balance', stringToBigInt)
|
|
127
|
+
.argument('<inOutDelta>', 'new net difference between funded and withdrawn ether', stringToBigInt)
|
|
128
|
+
.argument('<locked>', 'new amount of locked ether', stringToBigInt)
|
|
129
|
+
.action(async (address, timestamp, totalValue, inOutDelta, locked) => {
|
|
130
|
+
const contract = getStakingVaultContract(address);
|
|
131
|
+
await callWriteMethodWithReceipt({
|
|
132
|
+
contract,
|
|
133
|
+
methodName: 'report',
|
|
134
|
+
payload: [timestamp, totalValue, inOutDelta, locked],
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
vaultWrite
|
|
138
|
+
.command('rebalance')
|
|
139
|
+
.description('Rebalances the vault')
|
|
140
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
141
|
+
.argument('<amount>', 'amount to rebalance (in ETH)', etherToWei)
|
|
142
|
+
.action(async (address, amount) => {
|
|
143
|
+
const contract = getStakingVaultContract(address);
|
|
144
|
+
const confirm = await confirmOperation(`Are you sure you want to rebalance the vault ${vault}?`);
|
|
145
|
+
if (!confirm)
|
|
146
|
+
return;
|
|
147
|
+
await callWriteMethodWithReceipt({
|
|
148
|
+
contract,
|
|
149
|
+
methodName: 'rebalance',
|
|
150
|
+
payload: [amount],
|
|
151
|
+
});
|
|
152
|
+
});
|
|
153
|
+
vaultWrite
|
|
154
|
+
.command('trigger-v-w')
|
|
155
|
+
.description('Trigger validator withdrawal')
|
|
156
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
157
|
+
.argument('<pubkeys>', 'validator public keys')
|
|
158
|
+
.argument('<amounts>', 'amounts to withdraw (in ETH)', stringToBigIntArrayWei)
|
|
159
|
+
.argument('<refundRecipient>', 'refund recipient address', stringToAddress)
|
|
160
|
+
.action(async (address, pubkeys, amounts, refundRecipient) => {
|
|
161
|
+
const contract = getStakingVaultContract(address);
|
|
162
|
+
const concatenatedPubkeys = pubkeys.join('');
|
|
163
|
+
await callWriteMethodWithReceipt({
|
|
164
|
+
contract,
|
|
165
|
+
methodName: 'triggerValidatorWithdrawal',
|
|
166
|
+
payload: [concatenatedPubkeys, amounts, refundRecipient],
|
|
167
|
+
});
|
|
168
|
+
});
|
|
169
|
+
vaultWrite
|
|
170
|
+
.command('authorize-lido-vault-hub')
|
|
171
|
+
.alias('authorize-hub')
|
|
172
|
+
.description('Authorizes the Lido Vault Hub to manage the staking vault.')
|
|
173
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
174
|
+
.action(async (address) => {
|
|
175
|
+
const contract = getStakingVaultContract(address);
|
|
176
|
+
const confirm = await confirmOperation(`Are you sure you want to authorize the Lido Vault Hub to manage the staking vault ${vault}?`);
|
|
177
|
+
if (!confirm)
|
|
178
|
+
return;
|
|
179
|
+
await callWriteMethodWithReceipt({
|
|
180
|
+
contract,
|
|
181
|
+
methodName: 'authorizeLidoVaultHub',
|
|
182
|
+
payload: [],
|
|
183
|
+
});
|
|
184
|
+
});
|
|
185
|
+
vaultWrite
|
|
186
|
+
.command('deauthorize-lido-vault-hub')
|
|
187
|
+
.alias('deauthorize-hub')
|
|
188
|
+
.description('Deauthorizes the Lido Vault Hub from managing the staking vault.')
|
|
189
|
+
.argument('<address>', 'dashboard address', stringToAddress)
|
|
190
|
+
.action(async (address) => {
|
|
191
|
+
const contract = getStakingVaultContract(address);
|
|
192
|
+
const confirm = await confirmOperation(`Are you sure you want to deauthorize the Lido Vault Hub from managing the staking vault ${vault}?`);
|
|
193
|
+
if (!confirm)
|
|
194
|
+
return;
|
|
195
|
+
await callWriteMethodWithReceipt({
|
|
196
|
+
contract,
|
|
197
|
+
methodName: 'deauthorizeLidoVaultHub',
|
|
198
|
+
payload: [],
|
|
199
|
+
});
|
|
200
|
+
});
|
|
201
|
+
vaultWrite
|
|
202
|
+
.command('ossify')
|
|
203
|
+
.description('Ossifies the staking vault.')
|
|
204
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
205
|
+
.action(async (address) => {
|
|
206
|
+
const contract = getStakingVaultContract(address);
|
|
207
|
+
const confirm = await confirmOperation(`Are you sure you want to ossify the staking vault ${vault}?`);
|
|
208
|
+
if (!confirm)
|
|
209
|
+
return;
|
|
210
|
+
await callWriteMethodWithReceipt({
|
|
211
|
+
contract,
|
|
212
|
+
methodName: 'ossifyStakingVault',
|
|
213
|
+
payload: [],
|
|
214
|
+
});
|
|
215
|
+
});
|
|
216
|
+
vaultWrite
|
|
217
|
+
.command('reset-l ocked')
|
|
218
|
+
.description('Resets the locked amount')
|
|
219
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
220
|
+
.action(async (address) => {
|
|
221
|
+
const contract = getStakingVaultContract(address);
|
|
222
|
+
const confirm = await confirmOperation(`Are you sure you want to reset the locked amount for the staking vault ${vault}?`);
|
|
223
|
+
if (!confirm)
|
|
224
|
+
return;
|
|
225
|
+
await callWriteMethodWithReceipt({
|
|
226
|
+
contract,
|
|
227
|
+
methodName: 'resetLocked',
|
|
228
|
+
payload: [],
|
|
229
|
+
});
|
|
230
|
+
});
|
|
231
|
+
vaultWrite
|
|
232
|
+
.command('set-depositor')
|
|
233
|
+
.description('Sets the depositor')
|
|
234
|
+
.argument('<address>', 'vault address', stringToAddress)
|
|
235
|
+
.argument('<depositor>', 'depositor address', stringToAddress)
|
|
236
|
+
.action(async (address, depositor) => {
|
|
237
|
+
const contract = getStakingVaultContract(address);
|
|
238
|
+
const confirm = await confirmOperation(`Are you sure you want to set the depositor for the staking vault ${vault} to ${depositor}?`);
|
|
239
|
+
if (!confirm)
|
|
240
|
+
return;
|
|
241
|
+
await callWriteMethodWithReceipt({
|
|
242
|
+
contract,
|
|
243
|
+
methodName: 'setDepositor',
|
|
244
|
+
payload: [depositor],
|
|
245
|
+
});
|
|
246
|
+
});
|
|
247
|
+
//# sourceMappingURL=write.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../../programs/vault/write.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../programs/vault-factory/config.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAA6B,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../programs/vault-factory/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const vaultFactory: import("commander").Command;
|