@lidofinance/lsv-cli 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/abi/AccessControlConfirmable.d.ts +3 -2
- package/dist/abi/AccessControlConfirmable.js +3 -1
- package/dist/abi/AccessControlConfirmable.js.map +1 -1
- package/dist/abi/Dashboard.d.ts +64 -27
- package/dist/abi/Dashboard.js +38 -29
- package/dist/abi/Dashboard.js.map +1 -1
- package/dist/abi/LazyOracle.d.ts +44 -3
- package/dist/abi/LazyOracle.js +57 -3
- package/dist/abi/LazyOracle.js.map +1 -1
- package/dist/abi/OperatorGrid.d.ts +28 -0
- package/dist/abi/PredepositGuarantee.d.ts +28 -0
- package/dist/abi/StakingVault.d.ts +56 -0
- package/dist/abi/StakingVault.js +2 -0
- package/dist/abi/StakingVault.js.map +1 -1
- package/dist/abi/VaultFactory.d.ts +32 -4
- package/dist/abi/VaultHub.d.ts +38 -0
- package/dist/abi/VaultHub.js +13 -0
- package/dist/abi/VaultHub.js.map +1 -1
- package/dist/abi/VaultViewer.d.ts +144 -196
- package/dist/abi/VaultViewer.js +188 -257
- package/dist/abi/VaultViewer.js.map +1 -1
- package/dist/abi/defi-wrapper/Distributor.d.ts +448 -0
- package/dist/abi/defi-wrapper/Distributor.js +583 -0
- package/dist/abi/defi-wrapper/Distributor.js.map +1 -0
- package/dist/abi/defi-wrapper/Factory.d.ts +761 -0
- package/dist/abi/defi-wrapper/Factory.js +975 -0
- package/dist/abi/defi-wrapper/Factory.js.map +1 -0
- package/dist/abi/defi-wrapper/StvPool.d.ts +1283 -0
- package/dist/abi/defi-wrapper/StvPool.js +1680 -0
- package/dist/abi/defi-wrapper/StvPool.js.map +1 -0
- package/dist/abi/defi-wrapper/StvStETHPool.d.ts +1755 -0
- package/dist/abi/defi-wrapper/StvStETHPool.js +2301 -0
- package/dist/abi/defi-wrapper/StvStETHPool.js.map +1 -0
- package/dist/abi/defi-wrapper/StvStrategyPool.d.ts +1769 -0
- package/dist/abi/defi-wrapper/StvStrategyPool.js +2319 -0
- package/dist/abi/defi-wrapper/StvStrategyPool.js.map +1 -0
- package/dist/abi/defi-wrapper/WithdrawalQueue.d.ts +1131 -0
- package/dist/abi/defi-wrapper/WithdrawalQueue.js +1472 -0
- package/dist/abi/defi-wrapper/WithdrawalQueue.js.map +1 -0
- package/dist/abi/defi-wrapper/index.d.ts +6 -0
- package/dist/abi/defi-wrapper/index.js +7 -0
- package/dist/abi/defi-wrapper/index.js.map +1 -0
- package/dist/configs/utils.d.ts +1 -0
- package/dist/configs/utils.js +4 -0
- package/dist/configs/utils.js.map +1 -1
- package/dist/contracts/dashboard-impl.d.ts +4 -0
- package/dist/contracts/dashboard-impl.js +16 -0
- package/dist/contracts/dashboard-impl.js.map +1 -0
- package/dist/contracts/defi-wrapper/distributor.d.ts +4 -0
- package/dist/contracts/defi-wrapper/distributor.js +11 -0
- package/dist/contracts/defi-wrapper/distributor.js.map +1 -0
- package/dist/contracts/defi-wrapper/factory.d.ts +4 -0
- package/dist/contracts/defi-wrapper/factory.js +11 -0
- package/dist/contracts/defi-wrapper/factory.js.map +1 -0
- package/dist/contracts/defi-wrapper/index.d.ts +6 -0
- package/dist/contracts/defi-wrapper/index.js +7 -0
- package/dist/contracts/defi-wrapper/index.js.map +1 -0
- package/dist/contracts/defi-wrapper/stv-pool.d.ts +4 -0
- package/dist/contracts/defi-wrapper/stv-pool.js +11 -0
- package/dist/contracts/defi-wrapper/stv-pool.js.map +1 -0
- package/dist/contracts/defi-wrapper/stv-steth-pool.d.ts +4 -0
- package/dist/contracts/defi-wrapper/stv-steth-pool.js +11 -0
- package/dist/contracts/defi-wrapper/stv-steth-pool.js.map +1 -0
- package/dist/contracts/defi-wrapper/stv-strategy-pool.d.ts +4 -0
- package/dist/contracts/defi-wrapper/stv-strategy-pool.js +11 -0
- package/dist/contracts/defi-wrapper/stv-strategy-pool.js.map +1 -0
- package/dist/contracts/defi-wrapper/withdrawal-queue.d.ts +4 -0
- package/dist/contracts/defi-wrapper/withdrawal-queue.js +11 -0
- package/dist/contracts/defi-wrapper/withdrawal-queue.js.map +1 -0
- package/dist/contracts/index.d.ts +1 -0
- package/dist/contracts/index.js +1 -0
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/vault-factory.d.ts +774 -102
- package/dist/contracts/vault-viewer.d.ts +2765 -4893
- package/dist/contracts/vault-viewer.js +1 -1
- package/dist/features/defi-wrapper-factory.d.ts +18 -0
- package/dist/features/defi-wrapper-factory.js +28 -0
- package/dist/features/defi-wrapper-factory.js.map +1 -0
- package/dist/features/deposits/check-bls-deposits.d.ts +2 -1
- package/dist/features/deposits/check-bls-deposits.js +10 -1
- package/dist/features/deposits/check-bls-deposits.js.map +1 -1
- package/dist/features/deposits/make-pdg-proof.d.ts +8 -0
- package/dist/features/deposits/make-pdg-proof.js +17 -1
- package/dist/features/deposits/make-pdg-proof.js.map +1 -1
- package/dist/features/index.d.ts +1 -0
- package/dist/features/index.js +1 -0
- package/dist/features/index.js.map +1 -1
- package/dist/features/mint-burn/allowance.js +1 -1
- package/dist/features/mint-burn/allowance.js.map +1 -1
- package/dist/features/pdg.d.ts +7 -0
- package/dist/features/pdg.js +5 -5
- package/dist/features/pdg.js.map +1 -1
- package/dist/features/utils/quarantine.d.ts +2 -0
- package/dist/features/utils/report-fresh.js +17 -0
- package/dist/features/utils/report-fresh.js.map +1 -1
- package/dist/features/vault-factory.d.ts +2 -2
- package/dist/features/vault-factory.js +6 -1
- package/dist/features/vault-factory.js.map +1 -1
- package/dist/features/vault-operations/create-vault.js +2 -2
- package/dist/features/vault-operations/create-vault.js.map +1 -1
- package/dist/features/vault-operations/vault-info.js +1 -1
- package/dist/features/vault-operations/vault-info.js.map +1 -1
- package/dist/features/vault-operations/vault-overview.js +9 -11
- package/dist/features/vault-operations/vault-overview.js.map +1 -1
- package/dist/features/vault-operations/vault-roles.d.ts +2 -1
- package/dist/features/vault-operations/vault-roles.js +22 -23
- package/dist/features/vault-operations/vault-roles.js.map +1 -1
- package/dist/features/vault-operations/vaults-by-role.d.ts +5 -0
- package/dist/features/vault-operations/vaults-by-role.js +103 -35
- package/dist/features/vault-operations/vaults-by-role.js.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/programs/contracts/dashboard/config.js +4 -0
- package/dist/programs/contracts/dashboard/config.js.map +1 -1
- package/dist/programs/contracts/dashboard/write.js +45 -21
- package/dist/programs/contracts/dashboard/write.js.map +1 -1
- package/dist/programs/contracts/lazy-oracle/config.js +33 -0
- package/dist/programs/contracts/lazy-oracle/config.js.map +1 -1
- package/dist/programs/contracts/operator-grid/write.js +2 -75
- package/dist/programs/contracts/operator-grid/write.js.map +1 -1
- package/dist/programs/contracts/pdg/read.js +2 -5
- package/dist/programs/contracts/pdg/read.js.map +1 -1
- package/dist/programs/contracts/pdg/write.js +39 -7
- package/dist/programs/contracts/pdg/write.js.map +1 -1
- package/dist/programs/contracts/vault/write.js +18 -7
- package/dist/programs/contracts/vault/write.js.map +1 -1
- package/dist/programs/contracts/vault-factory/write.js +25 -15
- package/dist/programs/contracts/vault-factory/write.js.map +1 -1
- package/dist/programs/contracts/vault-viewer/config.js +102 -59
- package/dist/programs/contracts/vault-viewer/config.js.map +1 -1
- package/dist/programs/contracts/vault-viewer/read.js +22 -76
- package/dist/programs/contracts/vault-viewer/read.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/distributor/config.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/distributor/config.js +44 -0
- package/dist/programs/defi-wrapper/contracts/distributor/config.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/distributor/index.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/distributor/index.js +4 -0
- package/dist/programs/defi-wrapper/contracts/distributor/index.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/distributor/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/distributor/main.js +5 -0
- package/dist/programs/defi-wrapper/contracts/distributor/main.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/distributor/read.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/distributor/read.js +40 -0
- package/dist/programs/defi-wrapper/contracts/distributor/read.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/distributor/write.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/distributor/write.js +70 -0
- package/dist/programs/defi-wrapper/contracts/distributor/write.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/factory/config.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/factory/config.js +2 -0
- package/dist/programs/defi-wrapper/contracts/factory/config.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/factory/index.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/factory/index.js +4 -0
- package/dist/programs/defi-wrapper/contracts/factory/index.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/factory/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/factory/main.js +6 -0
- package/dist/programs/defi-wrapper/contracts/factory/main.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/factory/read.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/factory/read.js +56 -0
- package/dist/programs/defi-wrapper/contracts/factory/read.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/factory/write.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/factory/write.js +327 -0
- package/dist/programs/defi-wrapper/contracts/factory/write.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/index.d.ts +7 -0
- package/dist/programs/defi-wrapper/contracts/index.js +8 -0
- package/dist/programs/defi-wrapper/contracts/index.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/main.js +6 -0
- package/dist/programs/defi-wrapper/contracts/main.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/config.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/config.js +83 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/config.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/index.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/index.js +4 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/index.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/main.js +6 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/main.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/read.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/read.js +77 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/read.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/write.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/write.js +287 -0
- package/dist/programs/defi-wrapper/contracts/stv-pool/write.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js +210 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.js +4 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/index.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.js +6 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/main.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js +77 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js +370 -0
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.js +214 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/index.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/index.js +4 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/index.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.js +6 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/read.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/read.js +77 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/read.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/write.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/write.js +370 -0
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/write.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js +156 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.d.ts +3 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.js +4 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/index.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.js +6 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/main.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js +84 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js.map +1 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.d.ts +1 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js +140 -0
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js.map +1 -0
- package/dist/programs/defi-wrapper/index.d.ts +2 -0
- package/dist/programs/defi-wrapper/index.js +3 -0
- package/dist/programs/defi-wrapper/index.js.map +1 -0
- package/dist/programs/defi-wrapper/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/main.js +6 -0
- package/dist/programs/defi-wrapper/main.js.map +1 -0
- package/dist/programs/index.d.ts +1 -0
- package/dist/programs/index.js +1 -0
- package/dist/programs/index.js.map +1 -1
- package/dist/programs/pdg-helpers.js +3 -3
- package/dist/programs/pdg-helpers.js.map +1 -1
- package/dist/programs/use-cases/deposits/read.js +4 -4
- package/dist/programs/use-cases/deposits/read.js.map +1 -1
- package/dist/programs/use-cases/deposits/write.js +103 -8
- package/dist/programs/use-cases/deposits/write.js.map +1 -1
- package/dist/programs/use-cases/metrics/read.js +29 -13
- package/dist/programs/use-cases/metrics/read.js.map +1 -1
- package/dist/programs/use-cases/report/write.js +3 -0
- package/dist/programs/use-cases/report/write.js.map +1 -1
- package/dist/programs/use-cases/vault-operations/create-vault.js +11 -5
- package/dist/programs/use-cases/vault-operations/create-vault.js.map +1 -1
- package/dist/providers/wallet.d.ts +2 -7663
- package/dist/providers/wallet.js +1 -1
- package/dist/providers/wallet.js.map +1 -1
- package/dist/utils/arguments.d.ts +4 -0
- package/dist/utils/arguments.js +16 -3
- package/dist/utils/arguments.js.map +1 -1
- package/dist/utils/fetchCL.d.ts +1 -5
- package/dist/utils/fetchCL.js +5 -7
- package/dist/utils/fetchCL.js.map +1 -1
- package/dist/utils/health/health-utils.js +1 -1
- package/dist/utils/health/health-utils.js.map +1 -1
- package/dist/utils/proof/constants.d.ts +6 -0
- package/dist/utils/proof/constants.js +7 -0
- package/dist/utils/proof/constants.js.map +1 -0
- package/dist/utils/proof/first-validator-gindex.js +0 -4
- package/dist/utils/proof/first-validator-gindex.js.map +1 -1
- package/dist/utils/proof/proofs.d.ts +7 -8
- package/dist/utils/proof/proofs.js +36 -28
- package/dist/utils/proof/proofs.js.map +1 -1
- package/dist/utils/transactions/tx-private-key.d.ts +2 -2
- package/dist/utils/transactions/tx-private-key.js.map +1 -1
- package/dist/utils/transactions/tx-wc.d.ts +29 -1
- package/dist/utils/transactions/tx-wc.js +41 -24
- package/dist/utils/transactions/tx-wc.js.map +1 -1
- package/dist/utils/wallet-connect.d.ts +4 -7664
- package/dist/utils/wallet-connect.js +14 -2
- package/dist/utils/wallet-connect.js.map +1 -1
- package/dist/version/index.js +1 -1
- package/package.json +4 -5
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { Option } from 'commander';
|
|
2
|
+
import { StvStETHPoolAbi } from '../../../../abi/defi-wrapper/index.js';
|
|
3
|
+
import { getStvStethPoolContract } from '../../../../contracts/defi-wrapper/index.js';
|
|
4
|
+
import { generateReadCommands, logInfo, getCommandsJson, stringToAddress, callReadMethodSilent, logResult, } from '../../../../utils/index.js';
|
|
5
|
+
import { stvStethPool } from './main.js';
|
|
6
|
+
import { readCommandConfig } from './config.js';
|
|
7
|
+
const stvStethPoolRead = stvStethPool
|
|
8
|
+
.command('read')
|
|
9
|
+
.alias('r')
|
|
10
|
+
.description('read commands');
|
|
11
|
+
stvStethPoolRead.addOption(new Option('-cmd2json'));
|
|
12
|
+
stvStethPoolRead.on('option:-cmd2json', function () {
|
|
13
|
+
logInfo(getCommandsJson(stvStethPoolRead));
|
|
14
|
+
process.exit();
|
|
15
|
+
});
|
|
16
|
+
stvStethPoolRead
|
|
17
|
+
.command('info')
|
|
18
|
+
.description('get stv pool base info')
|
|
19
|
+
.argument('<address>', 'stv pool address', stringToAddress)
|
|
20
|
+
.action(async (address) => {
|
|
21
|
+
const contract = getStvStethPoolContract(address);
|
|
22
|
+
const [wrapperType, DEFAULT_ADMIN_ROLE, DEPOSIT_ROLE, REQUEST_VALIDATOR_EXIT_ROLE, TRIGGER_VALIDATOR_WITHDRAWAL_ROLE, ALLOW_LIST_MANAGER_ROLE, DASHBOARD, STAKING_VAULT, STETH, VAULT_HUB, WITHDRAWAL_QUEUE, ALLOW_LIST_ENABLED, name, symbol, totalAssets, totalExceedingMintedSteth, totalLiabilityShares, totalNominalAssets, totalSupply, totalUnassignedLiabilityShares, vaultDisconnected, withdrawalQueue,] = await Promise.all([
|
|
23
|
+
callReadMethodSilent(contract, 'wrapperType'),
|
|
24
|
+
callReadMethodSilent(contract, 'DEFAULT_ADMIN_ROLE'),
|
|
25
|
+
callReadMethodSilent(contract, 'DEPOSIT_ROLE'),
|
|
26
|
+
callReadMethodSilent(contract, 'REQUEST_VALIDATOR_EXIT_ROLE'),
|
|
27
|
+
callReadMethodSilent(contract, 'TRIGGER_VALIDATOR_WITHDRAWAL_ROLE'),
|
|
28
|
+
callReadMethodSilent(contract, 'ALLOW_LIST_MANAGER_ROLE'),
|
|
29
|
+
callReadMethodSilent(contract, 'DASHBOARD'),
|
|
30
|
+
callReadMethodSilent(contract, 'STAKING_VAULT'),
|
|
31
|
+
callReadMethodSilent(contract, 'STETH'),
|
|
32
|
+
callReadMethodSilent(contract, 'VAULT_HUB'),
|
|
33
|
+
callReadMethodSilent(contract, 'WITHDRAWAL_QUEUE'),
|
|
34
|
+
callReadMethodSilent(contract, 'ALLOW_LIST_ENABLED'),
|
|
35
|
+
callReadMethodSilent(contract, 'name'),
|
|
36
|
+
callReadMethodSilent(contract, 'symbol'),
|
|
37
|
+
callReadMethodSilent(contract, 'totalAssets'),
|
|
38
|
+
callReadMethodSilent(contract, 'totalExceedingMintedSteth'),
|
|
39
|
+
callReadMethodSilent(contract, 'totalLiabilityShares'),
|
|
40
|
+
callReadMethodSilent(contract, 'totalNominalAssets'),
|
|
41
|
+
callReadMethodSilent(contract, 'totalSupply'),
|
|
42
|
+
callReadMethodSilent(contract, 'totalUnassignedLiabilityShares'),
|
|
43
|
+
callReadMethodSilent(contract, 'vaultDisconnected'),
|
|
44
|
+
callReadMethodSilent(contract, 'withdrawalQueue'),
|
|
45
|
+
]);
|
|
46
|
+
logResult({
|
|
47
|
+
data: [
|
|
48
|
+
['wrapperType', wrapperType],
|
|
49
|
+
['DEFAULT_ADMIN_ROLE', DEFAULT_ADMIN_ROLE],
|
|
50
|
+
['DEPOSIT_ROLE', DEPOSIT_ROLE],
|
|
51
|
+
['REQUEST_VALIDATOR_EXIT_ROLE', REQUEST_VALIDATOR_EXIT_ROLE],
|
|
52
|
+
[
|
|
53
|
+
'TRIGGER_VALIDATOR_WITHDRAWAL_ROLE',
|
|
54
|
+
TRIGGER_VALIDATOR_WITHDRAWAL_ROLE,
|
|
55
|
+
],
|
|
56
|
+
['ALLOW_LIST_MANAGER_ROLE', ALLOW_LIST_MANAGER_ROLE],
|
|
57
|
+
['DASHBOARD', DASHBOARD],
|
|
58
|
+
['STAKING_VAULT', STAKING_VAULT],
|
|
59
|
+
['STETH', STETH],
|
|
60
|
+
['VAULT_HUB', VAULT_HUB],
|
|
61
|
+
['WITHDRAWAL_QUEUE', WITHDRAWAL_QUEUE],
|
|
62
|
+
['ALLOW_LIST_ENABLED', ALLOW_LIST_ENABLED],
|
|
63
|
+
['name', name],
|
|
64
|
+
['symbol', symbol],
|
|
65
|
+
['totalAssets', totalAssets],
|
|
66
|
+
['totalExceedingMintedSteth', totalExceedingMintedSteth],
|
|
67
|
+
['totalLiabilityShares', totalLiabilityShares],
|
|
68
|
+
['totalNominalAssets', totalNominalAssets],
|
|
69
|
+
['totalSupply', totalSupply],
|
|
70
|
+
['totalUnassignedLiabilityShares', totalUnassignedLiabilityShares],
|
|
71
|
+
['vaultDisconnected', vaultDisconnected],
|
|
72
|
+
['withdrawalQueue', withdrawalQueue],
|
|
73
|
+
],
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
generateReadCommands(StvStETHPoolAbi, getStvStethPoolContract, stvStethPoolRead, readCommandConfig);
|
|
77
|
+
//# sourceMappingURL=read.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../../programs/defi-wrapper/contracts/stv-steth-pool/read.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,370 @@
|
|
|
1
|
+
import { Option } from 'commander';
|
|
2
|
+
import { logInfo, getCommandsJson, stringToAddress, callWriteMethodWithReceipt, etherToWei, confirmOperation, stringToBigInt, stringToBigIntArray, stringToHexArray, } from '../../../../utils/index.js';
|
|
3
|
+
import { getAccount } from '../../../../providers/index.js';
|
|
4
|
+
import { stvStethPool } from './main.js';
|
|
5
|
+
import { formatEther } from 'viem';
|
|
6
|
+
import { getStvStethPoolContract } from '../../../../contracts/defi-wrapper/index.js';
|
|
7
|
+
const stvStethPoolWrite = stvStethPool
|
|
8
|
+
.command('write')
|
|
9
|
+
.alias('w')
|
|
10
|
+
.description('write commands');
|
|
11
|
+
stvStethPoolWrite.addOption(new Option('-cmd2json'));
|
|
12
|
+
stvStethPoolWrite.on('option:-cmd2json', function () {
|
|
13
|
+
logInfo(getCommandsJson(stvStethPoolWrite));
|
|
14
|
+
process.exit();
|
|
15
|
+
});
|
|
16
|
+
stvStethPoolWrite
|
|
17
|
+
.command('deposit-eth')
|
|
18
|
+
.description('convenience function to deposit ETH to msg.sender')
|
|
19
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
20
|
+
.argument('<referral>', 'the address of the referral (if any)', stringToAddress)
|
|
21
|
+
.argument('<receiver>', 'the address to receive the minted shares', stringToAddress)
|
|
22
|
+
.argument('<stethSharesToMint>', 'amount of stETH shares to mint (up to maximum capacity for this deposit). Pass MAX_MINTABLE_AMOUNT to mint maximum available for this deposit', stringToBigInt)
|
|
23
|
+
.action(async (address, referral, receiver, stethSharesToMint) => {
|
|
24
|
+
const contract = getStvStethPoolContract(address);
|
|
25
|
+
const confirmationMessage = `Are you sure you want to deposit ETH to the stv pool? (referral: ${referral}, receiver: ${receiver}, stethSharesToMint: ${stethSharesToMint})`;
|
|
26
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
27
|
+
if (!confirm)
|
|
28
|
+
return;
|
|
29
|
+
await callWriteMethodWithReceipt({
|
|
30
|
+
contract,
|
|
31
|
+
methodName: 'depositETH',
|
|
32
|
+
payload: [referral, receiver, stethSharesToMint],
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
stvStethPoolWrite
|
|
36
|
+
.command('rebalance-unassigned-liability')
|
|
37
|
+
.description('rebalance unassigned liability by repaying it with assets held by the vault')
|
|
38
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
39
|
+
.argument('<stethShares>', 'amount of stETH shares to rebalance (in shares)', stringToBigInt)
|
|
40
|
+
.action(async (address, stethShares) => {
|
|
41
|
+
const contract = getStvStethPoolContract(address);
|
|
42
|
+
const confirmationMessage = `Are you sure you want to rebalance unassigned liability with ${stethShares} stETH shares?`;
|
|
43
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
44
|
+
if (!confirm)
|
|
45
|
+
return;
|
|
46
|
+
await callWriteMethodWithReceipt({
|
|
47
|
+
contract,
|
|
48
|
+
methodName: 'rebalanceUnassignedLiability',
|
|
49
|
+
payload: [stethShares],
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
stvStethPoolWrite
|
|
53
|
+
.command('rebalance-unassigned-liability-with-ether')
|
|
54
|
+
.description('rebalance unassigned liability by repaying it with external ether')
|
|
55
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
56
|
+
.argument('<ether>', 'amount of ether to rebalance (in ETH)', etherToWei)
|
|
57
|
+
.action(async (address, ether) => {
|
|
58
|
+
const contract = getStvStethPoolContract(address);
|
|
59
|
+
const confirmationMessage = `Are you sure you want to rebalance unassigned liability with ${formatEther(ether)} ether?`;
|
|
60
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
61
|
+
if (!confirm)
|
|
62
|
+
return;
|
|
63
|
+
await callWriteMethodWithReceipt({
|
|
64
|
+
contract,
|
|
65
|
+
methodName: 'rebalanceUnassignedLiabilityWithEther',
|
|
66
|
+
payload: [],
|
|
67
|
+
value: ether,
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
stvStethPoolWrite
|
|
71
|
+
.command('request-withdrawal-eth')
|
|
72
|
+
.description('request a withdrawal by specifying the amount of assets to withdraw')
|
|
73
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
74
|
+
.argument('<assetsToWithdraw>', 'the amount of assets to withdraw (18 decimals)', stringToBigInt)
|
|
75
|
+
.action(async (address, assetsToWithdraw) => {
|
|
76
|
+
const contract = getStvStethPoolContract(address);
|
|
77
|
+
const confirmationMessage = `Are you sure you want to request a withdrawal of ${assetsToWithdraw} assets?`;
|
|
78
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
79
|
+
if (!confirm)
|
|
80
|
+
return;
|
|
81
|
+
await callWriteMethodWithReceipt({
|
|
82
|
+
contract,
|
|
83
|
+
methodName: 'requestWithdrawalETH',
|
|
84
|
+
payload: [assetsToWithdraw],
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
stvStethPoolWrite
|
|
88
|
+
.command('request-withdrawal')
|
|
89
|
+
.description('request a withdrawal by specifying the amount of stv to withdraw')
|
|
90
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
91
|
+
.argument('<stvToWithdraw>', 'the amount of stv to withdraw (27 decimals)', stringToBigInt)
|
|
92
|
+
.argument('<stethSharesToBurn>', "the amount of stETH shares to burn to repay user's liabilities (18 decimals)", stringToBigInt)
|
|
93
|
+
.argument('<stethSharesToRebalance>', 'the amount of stETH shares to rebalance (18 decimals)', stringToBigInt)
|
|
94
|
+
.option('-r, --receiver <receiver>', 'the address to receive the claimed ether, or address(0)', stringToAddress)
|
|
95
|
+
.action(async (address, stvToWithdraw, stethSharesToBurn, stethSharesToRebalance, { receiver }) => {
|
|
96
|
+
const contract = getStvStethPoolContract(address);
|
|
97
|
+
const account = await getAccount();
|
|
98
|
+
const confirmationMessage = `Are you sure you want to request a withdrawal of ${stvToWithdraw} stv to ${receiver}? (stethSharesToBurn: ${stethSharesToBurn}, stethSharesToRebalance: ${stethSharesToRebalance})`;
|
|
99
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
100
|
+
if (!confirm)
|
|
101
|
+
return;
|
|
102
|
+
await callWriteMethodWithReceipt({
|
|
103
|
+
contract,
|
|
104
|
+
methodName: 'requestWithdrawal',
|
|
105
|
+
payload: [
|
|
106
|
+
stvToWithdraw,
|
|
107
|
+
stethSharesToBurn,
|
|
108
|
+
stethSharesToRebalance,
|
|
109
|
+
receiver || account.address,
|
|
110
|
+
],
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
stvStethPoolWrite
|
|
114
|
+
.command('request-withdrawals')
|
|
115
|
+
.description('request multiple withdrawals by specifying the amounts of stv to withdraw')
|
|
116
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
117
|
+
.argument('<stvToWithdraw>', 'the array of amounts of stv to withdraw (27 decimals)', stringToBigIntArray)
|
|
118
|
+
.argument('<stethSharesToBurn>', "the amount of stETH shares to burn to repay user's liabilities (18 decimals)", stringToBigInt)
|
|
119
|
+
.argument('<stethSharesToRebalance>', 'the amount of stETH shares to rebalance (18 decimals)', stringToBigIntArray)
|
|
120
|
+
.option('-r, --receiver <receiver>', 'the address to receive the claimed ether, or address(0)', stringToAddress)
|
|
121
|
+
.action(async (address, stvToWithdraw, stethSharesToBurn, stethSharesToRebalance, { receiver }) => {
|
|
122
|
+
const contract = getStvStethPoolContract(address);
|
|
123
|
+
const account = await getAccount();
|
|
124
|
+
const confirmationMessage = `Are you sure you want to request multiple withdrawals of ${stvToWithdraw.join(', ')} stv to ${receiver}? (stethSharesToBurn: ${stethSharesToBurn}, stethSharesToRebalance: ${stethSharesToRebalance.join(', ')})`;
|
|
125
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
126
|
+
if (!confirm)
|
|
127
|
+
return;
|
|
128
|
+
await callWriteMethodWithReceipt({
|
|
129
|
+
contract,
|
|
130
|
+
methodName: 'requestWithdrawals',
|
|
131
|
+
payload: [
|
|
132
|
+
stvToWithdraw,
|
|
133
|
+
stethSharesToRebalance,
|
|
134
|
+
stethSharesToBurn,
|
|
135
|
+
receiver || account.address,
|
|
136
|
+
],
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
stvStethPoolWrite
|
|
140
|
+
.command('claim-withdrawal')
|
|
141
|
+
.description('claim finalized withdrawal request')
|
|
142
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
143
|
+
.argument('<requestId>', 'the withdrawal request ID to claim', stringToBigInt)
|
|
144
|
+
.option('-r, --receiver <receiver>', 'the address to receive the claimed ether, or address(0)', stringToAddress)
|
|
145
|
+
.action(async (address, requestId, { receiver }) => {
|
|
146
|
+
const contract = getStvStethPoolContract(address);
|
|
147
|
+
const account = await getAccount();
|
|
148
|
+
const confirmationMessage = `Are you sure you want to claim withdrawal request ${requestId} to ${receiver}?`;
|
|
149
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
150
|
+
if (!confirm)
|
|
151
|
+
return;
|
|
152
|
+
await callWriteMethodWithReceipt({
|
|
153
|
+
contract,
|
|
154
|
+
methodName: 'claimWithdrawal',
|
|
155
|
+
payload: [requestId, receiver || account.address],
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
stvStethPoolWrite
|
|
159
|
+
.command('claim-withdrawals')
|
|
160
|
+
.description('claim multiple finalized withdrawal requests')
|
|
161
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
162
|
+
.argument('<requestIds>', 'the array of withdrawal request IDs to claim', stringToBigIntArray)
|
|
163
|
+
.argument('<hints>', 'the checkpoint hints. Can be found with `WQ.findCheckpointHints(_requestIds, 1, getLastCheckpointIndex())`', stringToBigIntArray)
|
|
164
|
+
.option('-r, --receiver <receiver>', 'the address to receive the claimed ether, or address(0)', stringToAddress)
|
|
165
|
+
.action(async (address, requestIds, hints, { receiver }) => {
|
|
166
|
+
const contract = getStvStethPoolContract(address);
|
|
167
|
+
const account = await getAccount();
|
|
168
|
+
const confirmationMessage = `Are you sure you want to claim withdrawal requests ${requestIds.join(', ')} to ${receiver}?`;
|
|
169
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
170
|
+
if (!confirm)
|
|
171
|
+
return;
|
|
172
|
+
await callWriteMethodWithReceipt({
|
|
173
|
+
contract,
|
|
174
|
+
methodName: 'claimWithdrawals',
|
|
175
|
+
payload: [requestIds, hints, receiver || account.address],
|
|
176
|
+
});
|
|
177
|
+
});
|
|
178
|
+
stvStethPoolWrite
|
|
179
|
+
.command('burn-stv-for-withdrawal-queue')
|
|
180
|
+
.description('burn stv from WithdrawalQueue contract when processing withdrawal requests')
|
|
181
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
182
|
+
.argument('<stv>', 'amount of stv to burn (27 decimals)', stringToBigInt)
|
|
183
|
+
.action(async (address, stv) => {
|
|
184
|
+
const contract = getStvStethPoolContract(address);
|
|
185
|
+
const confirmationMessage = `Are you sure you want to burn ${stv} stv for the withdrawal queue ${address}?`;
|
|
186
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
187
|
+
if (!confirm)
|
|
188
|
+
return;
|
|
189
|
+
await callWriteMethodWithReceipt({
|
|
190
|
+
contract,
|
|
191
|
+
methodName: 'burnStvForWithdrawalQueue',
|
|
192
|
+
payload: [stv],
|
|
193
|
+
});
|
|
194
|
+
});
|
|
195
|
+
stvStethPoolWrite
|
|
196
|
+
.command('disconnect-vault')
|
|
197
|
+
.description('initiates voluntary vault disconnection from VaultHub')
|
|
198
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
199
|
+
.action(async (address) => {
|
|
200
|
+
const contract = getStvStethPoolContract(address);
|
|
201
|
+
const confirmationMessage = `Are you sure you want to disconnect the vault ${address}?`;
|
|
202
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
203
|
+
if (!confirm)
|
|
204
|
+
return;
|
|
205
|
+
await callWriteMethodWithReceipt({
|
|
206
|
+
contract,
|
|
207
|
+
methodName: 'disconnectVault',
|
|
208
|
+
payload: [],
|
|
209
|
+
});
|
|
210
|
+
});
|
|
211
|
+
stvStethPoolWrite
|
|
212
|
+
.command('claim-connect-deposit')
|
|
213
|
+
.description('claims the connect deposit after vault has been disconnected')
|
|
214
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
215
|
+
.option('-r, --receiver <receiver>', 'the address to receive the claimed ether, or address(0)', stringToAddress)
|
|
216
|
+
.action(async (address, { receiver }) => {
|
|
217
|
+
const contract = getStvStethPoolContract(address);
|
|
218
|
+
const account = await getAccount();
|
|
219
|
+
const confirmationMessage = `Are you sure you want to claim the connect deposit for the vault ${address} to ${receiver}?`;
|
|
220
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
221
|
+
if (!confirm)
|
|
222
|
+
return;
|
|
223
|
+
await callWriteMethodWithReceipt({
|
|
224
|
+
contract,
|
|
225
|
+
methodName: 'claimConnectDeposit',
|
|
226
|
+
payload: [receiver || account.address],
|
|
227
|
+
});
|
|
228
|
+
});
|
|
229
|
+
stvStethPoolWrite
|
|
230
|
+
.command('trigger-validator-withdrawals')
|
|
231
|
+
.description('triggers validator withdrawals')
|
|
232
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
233
|
+
.argument('<pubkeys>', 'validator public keys', stringToHexArray)
|
|
234
|
+
.argument('<amounts>', 'amounts to withdraw (in ETH)', stringToBigIntArray)
|
|
235
|
+
.argument('<refundRecipient>', 'refund recipient address', stringToAddress)
|
|
236
|
+
.action(async (address, pubkeys, amounts, refundRecipient) => {
|
|
237
|
+
const contract = getStvStethPoolContract(address);
|
|
238
|
+
const confirmationMessage = `Are you sure you want to trigger validator withdrawals for the vault ${address} with pubkeys ${pubkeys.join(', ')} and amounts ${amounts.map((amount) => formatEther(amount)).join(', ')} to ${refundRecipient}?`;
|
|
239
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
240
|
+
if (!confirm)
|
|
241
|
+
return;
|
|
242
|
+
await callWriteMethodWithReceipt({
|
|
243
|
+
contract,
|
|
244
|
+
methodName: 'triggerValidatorWithdrawals',
|
|
245
|
+
payload: [pubkeys.join(''), amounts, refundRecipient],
|
|
246
|
+
});
|
|
247
|
+
});
|
|
248
|
+
stvStethPoolWrite
|
|
249
|
+
.command('request-validator-exit')
|
|
250
|
+
.description('requests validator exit')
|
|
251
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
252
|
+
.argument('<pubkeys>', 'validator public keys', stringToHexArray)
|
|
253
|
+
.action(async (address, pubkeys) => {
|
|
254
|
+
const contract = getStvStethPoolContract(address);
|
|
255
|
+
const confirmationMessage = `Are you sure you want to request validator exit for the vault ${address} with pubkeys ${pubkeys.join(', ')}?`;
|
|
256
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
257
|
+
if (!confirm)
|
|
258
|
+
return;
|
|
259
|
+
await callWriteMethodWithReceipt({
|
|
260
|
+
contract,
|
|
261
|
+
methodName: 'requestValidatorExit',
|
|
262
|
+
payload: [pubkeys.join('')],
|
|
263
|
+
});
|
|
264
|
+
});
|
|
265
|
+
stvStethPoolWrite
|
|
266
|
+
.command('add-to-allow-list')
|
|
267
|
+
.description('add an address to the allowlist')
|
|
268
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
269
|
+
.argument('<user>', 'address to add to the allowlist', stringToAddress)
|
|
270
|
+
.action(async (address, user) => {
|
|
271
|
+
const contract = getStvStethPoolContract(address);
|
|
272
|
+
const confirmationMessage = `Are you sure you want to add ${user} to the allowlist for the vault ${address}?`;
|
|
273
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
274
|
+
if (!confirm)
|
|
275
|
+
return;
|
|
276
|
+
await callWriteMethodWithReceipt({
|
|
277
|
+
contract,
|
|
278
|
+
methodName: 'addToAllowList',
|
|
279
|
+
payload: [user],
|
|
280
|
+
});
|
|
281
|
+
});
|
|
282
|
+
stvStethPoolWrite
|
|
283
|
+
.command('remove-from-allow-list')
|
|
284
|
+
.description('remove an address from the allowlist')
|
|
285
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
286
|
+
.argument('<user>', 'address to remove from the allowlist', stringToAddress)
|
|
287
|
+
.action(async (address, user) => {
|
|
288
|
+
const contract = getStvStethPoolContract(address);
|
|
289
|
+
const confirmationMessage = `Are you sure you want to remove ${user} from the allowlist for the vault ${address}?`;
|
|
290
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
291
|
+
if (!confirm)
|
|
292
|
+
return;
|
|
293
|
+
await callWriteMethodWithReceipt({
|
|
294
|
+
contract,
|
|
295
|
+
methodName: 'removeFromAllowList',
|
|
296
|
+
payload: [user],
|
|
297
|
+
});
|
|
298
|
+
});
|
|
299
|
+
stvStethPoolWrite
|
|
300
|
+
.command('mint-steth-shares')
|
|
301
|
+
.description("mint stETH shares up to the user's minting capacity")
|
|
302
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
303
|
+
.argument('<stethShares>', 'the amount of stETH shares to mint', stringToBigInt)
|
|
304
|
+
.action(async (address, stethShares) => {
|
|
305
|
+
const contract = getStvStethPoolContract(address);
|
|
306
|
+
const confirmationMessage = `Are you sure you want to mint stETH shares up to the user's minting capacity for the vault ${address}? (stethShares: ${stethShares})`;
|
|
307
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
308
|
+
if (!confirm)
|
|
309
|
+
return;
|
|
310
|
+
await callWriteMethodWithReceipt({
|
|
311
|
+
contract,
|
|
312
|
+
methodName: 'mintStethShares',
|
|
313
|
+
payload: [stethShares],
|
|
314
|
+
});
|
|
315
|
+
});
|
|
316
|
+
stvStethPoolWrite
|
|
317
|
+
.command('burn-steth-shares')
|
|
318
|
+
.description("burn stETH shares to reduce the user's minted stETH obligation")
|
|
319
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
320
|
+
.argument('<stethShares>', 'the amount of stETH shares to burn', stringToBigInt)
|
|
321
|
+
.action(async (address, stethShares) => {
|
|
322
|
+
const contract = getStvStethPoolContract(address);
|
|
323
|
+
const confirmationMessage = `Are you sure you want to burn stETH shares to reduce the user's minted stETH obligation for the vault ${address}? (stethShares: ${stethShares})`;
|
|
324
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
325
|
+
if (!confirm)
|
|
326
|
+
return;
|
|
327
|
+
await callWriteMethodWithReceipt({
|
|
328
|
+
contract,
|
|
329
|
+
methodName: 'burnStethShares',
|
|
330
|
+
payload: [stethShares],
|
|
331
|
+
});
|
|
332
|
+
});
|
|
333
|
+
stvStethPoolWrite
|
|
334
|
+
.command('rebalance-minted-steth-shares')
|
|
335
|
+
.description("rebalance the user's minted stETH shares by burning stv")
|
|
336
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
337
|
+
.argument('<stethShares>', 'the amount of stETH shares to rebalance', stringToBigInt)
|
|
338
|
+
.argument('<maxStvToBurn>', 'the maximum amount of stv to burn for rebalancing', stringToBigInt)
|
|
339
|
+
.action(async (address, stethShares, maxStvToBurn) => {
|
|
340
|
+
const contract = getStvStethPoolContract(address);
|
|
341
|
+
const confirmationMessage = `Are you sure you want to rebalance the user's minted stETH shares by burning stv for the vault ${address}? (stethShares: ${stethShares}, maxStvToBurn: ${maxStvToBurn})`;
|
|
342
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
343
|
+
if (!confirm)
|
|
344
|
+
return;
|
|
345
|
+
await callWriteMethodWithReceipt({
|
|
346
|
+
contract,
|
|
347
|
+
methodName: 'rebalanceMintedStethShares',
|
|
348
|
+
payload: [stethShares, maxStvToBurn],
|
|
349
|
+
});
|
|
350
|
+
});
|
|
351
|
+
stvStethPoolWrite
|
|
352
|
+
.command('transfer-with-liability')
|
|
353
|
+
.description('transfer stETH shares with liability to another address')
|
|
354
|
+
.argument('<address>', 'distributor address', stringToAddress)
|
|
355
|
+
.argument('<to>', 'the address to transfer to', stringToAddress)
|
|
356
|
+
.argument('<stv>', 'the amount of stv to transfer', stringToBigInt)
|
|
357
|
+
.argument('<stethShares>', 'the amount of stETH shares liability to transfer', stringToBigInt)
|
|
358
|
+
.action(async (address, to, stv, stethShares) => {
|
|
359
|
+
const contract = getStvStethPoolContract(address);
|
|
360
|
+
const confirmationMessage = `Are you sure you want to transfer ${stv} stv and ${stethShares} stETH shares liability to ${to} for the vault ${address}?`;
|
|
361
|
+
const confirm = await confirmOperation(confirmationMessage);
|
|
362
|
+
if (!confirm)
|
|
363
|
+
return;
|
|
364
|
+
await callWriteMethodWithReceipt({
|
|
365
|
+
contract,
|
|
366
|
+
methodName: 'transferWithLiability',
|
|
367
|
+
payload: [to, stv, stethShares],
|
|
368
|
+
});
|
|
369
|
+
});
|
|
370
|
+
//# sourceMappingURL=write.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../../../../programs/defi-wrapper/contracts/stv-steth-pool/write.ts"],"names":[],"mappings":"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"}
|