@lidofinance/lsv-cli 1.1.0 → 1.2.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/Dashboard.d.ts +23 -3
- package/dist/abi/Dashboard.js +8 -3
- package/dist/abi/Dashboard.js.map +1 -1
- package/dist/abi/LazyOracle.d.ts +364 -0
- package/dist/abi/LazyOracle.js +2 -0
- package/dist/abi/LazyOracle.js.map +1 -1
- package/dist/abi/OperatorGrid.d.ts +24 -0
- package/dist/abi/OperatorGrid.js +16 -0
- package/dist/abi/OperatorGrid.js.map +1 -1
- package/dist/abi/ValidatorConsolidationRequests.d.ts +121 -0
- package/dist/abi/ValidatorConsolidationRequests.js +159 -0
- package/dist/abi/ValidatorConsolidationRequests.js.map +1 -0
- package/dist/abi/VaultFactory.d.ts +16 -0
- package/dist/abi/VaultViewer.d.ts +0 -14
- package/dist/abi/VaultViewer.js +0 -19
- package/dist/abi/VaultViewer.js.map +1 -1
- package/dist/abi/defi-wrapper/Distributor.d.ts +40 -2
- package/dist/abi/defi-wrapper/Distributor.js +52 -2
- package/dist/abi/defi-wrapper/Distributor.js.map +1 -1
- package/dist/abi/defi-wrapper/Factory.d.ts +973 -550
- package/dist/abi/defi-wrapper/Factory.js +720 -763
- package/dist/abi/defi-wrapper/Factory.js.map +1 -1
- package/dist/abi/defi-wrapper/StvPool.d.ts +121 -325
- package/dist/abi/defi-wrapper/StvPool.js +143 -413
- package/dist/abi/defi-wrapper/StvPool.js.map +1 -1
- package/dist/abi/defi-wrapper/StvStETHPool.d.ts +398 -381
- package/dist/abi/defi-wrapper/StvStETHPool.js +448 -433
- package/dist/abi/defi-wrapper/StvStETHPool.js.map +1 -1
- package/dist/abi/defi-wrapper/WithdrawalQueue.d.ts +309 -175
- package/dist/abi/defi-wrapper/WithdrawalQueue.js +381 -206
- package/dist/abi/defi-wrapper/WithdrawalQueue.js.map +1 -1
- package/dist/abi/defi-wrapper/index.d.ts +0 -1
- package/dist/abi/defi-wrapper/index.js +0 -1
- package/dist/abi/defi-wrapper/index.js.map +1 -1
- package/dist/abi/index.d.ts +1 -0
- package/dist/abi/index.js +1 -0
- package/dist/abi/index.js.map +1 -1
- package/dist/configs/constants.d.ts +44 -2
- package/dist/configs/constants.js +2 -2
- package/dist/configs/constants.js.map +1 -1
- package/dist/configs/deployed.d.ts +2 -2
- package/dist/configs/deployed.js +48 -6
- package/dist/configs/deployed.js.map +1 -1
- package/dist/configs/utils.d.ts +1 -0
- package/dist/configs/utils.js +8 -0
- package/dist/configs/utils.js.map +1 -1
- package/dist/contracts/dashboard-impl.d.ts +2 -2
- package/dist/contracts/dashboard-impl.js +3 -2
- package/dist/contracts/dashboard-impl.js.map +1 -1
- package/dist/contracts/dashboard.d.ts +2 -2
- package/dist/contracts/dashboard.js +3 -2
- package/dist/contracts/dashboard.js.map +1 -1
- package/dist/contracts/defi-wrapper/distributor.d.ts +1 -1
- package/dist/contracts/defi-wrapper/distributor.js +3 -2
- package/dist/contracts/defi-wrapper/distributor.js.map +1 -1
- package/dist/contracts/defi-wrapper/factory.d.ts +1 -1
- package/dist/contracts/defi-wrapper/factory.js +3 -2
- package/dist/contracts/defi-wrapper/factory.js.map +1 -1
- package/dist/contracts/defi-wrapper/index.d.ts +0 -1
- package/dist/contracts/defi-wrapper/index.js +0 -1
- package/dist/contracts/defi-wrapper/index.js.map +1 -1
- package/dist/contracts/defi-wrapper/stv-pool.d.ts +2 -2
- package/dist/contracts/defi-wrapper/stv-pool.js +3 -2
- package/dist/contracts/defi-wrapper/stv-pool.js.map +1 -1
- package/dist/contracts/defi-wrapper/stv-steth-pool.d.ts +1 -1
- package/dist/contracts/defi-wrapper/stv-steth-pool.js +3 -2
- package/dist/contracts/defi-wrapper/stv-steth-pool.js.map +1 -1
- package/dist/contracts/defi-wrapper/withdrawal-queue.d.ts +1 -1
- package/dist/contracts/defi-wrapper/withdrawal-queue.js +3 -2
- package/dist/contracts/defi-wrapper/withdrawal-queue.js.map +1 -1
- 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/lazy-oracle.js +3 -2
- package/dist/contracts/lazy-oracle.js.map +1 -1
- package/dist/contracts/locator.d.ts +3 -9655
- package/dist/contracts/locator.js +4 -3
- package/dist/contracts/locator.js.map +1 -1
- package/dist/contracts/operator-grid.d.ts +1 -1
- package/dist/contracts/operator-grid.js +3 -2
- package/dist/contracts/operator-grid.js.map +1 -1
- package/dist/contracts/pdg.js +3 -2
- package/dist/contracts/pdg.js.map +1 -1
- package/dist/contracts/steth.d.ts +54 -54
- package/dist/contracts/steth.js +3 -2
- package/dist/contracts/steth.js.map +1 -1
- package/dist/contracts/validator-consolidation-requests.d.ts +5 -0
- package/dist/contracts/validator-consolidation-requests.js +13 -0
- package/dist/contracts/validator-consolidation-requests.js.map +1 -0
- package/dist/contracts/vault-factory.d.ts +3 -28346
- package/dist/contracts/vault-factory.js +4 -3
- package/dist/contracts/vault-factory.js.map +1 -1
- package/dist/contracts/vault-hub.js +3 -2
- package/dist/contracts/vault-hub.js.map +1 -1
- package/dist/contracts/vault-viewer.d.ts +3 -9661
- package/dist/contracts/vault-viewer.js +9 -7
- package/dist/contracts/vault-viewer.js.map +1 -1
- package/dist/contracts/vault.d.ts +2 -2
- package/dist/contracts/vault.js +3 -2
- package/dist/contracts/vault.js.map +1 -1
- package/dist/contracts/wsteth.d.ts +3 -24690
- package/dist/contracts/wsteth.js +4 -3
- package/dist/contracts/wsteth.js.map +1 -1
- package/dist/features/consolidation.d.ts +18 -0
- package/dist/features/consolidation.js +199 -0
- package/dist/features/consolidation.js.map +1 -0
- package/dist/features/defi-wrapper/create-vault.d.ts +17 -0
- package/dist/features/defi-wrapper/create-vault.js +137 -0
- package/dist/features/defi-wrapper/create-vault.js.map +1 -0
- package/dist/features/defi-wrapper/defi-wrapper-factory.d.ts +112 -0
- package/dist/features/defi-wrapper/defi-wrapper-factory.js +228 -0
- package/dist/features/defi-wrapper/defi-wrapper-factory.js.map +1 -0
- package/dist/features/defi-wrapper/index.d.ts +3 -0
- package/dist/features/defi-wrapper/index.js +4 -0
- package/dist/features/defi-wrapper/index.js.map +1 -0
- package/dist/features/defi-wrapper/pool-info.d.ts +35 -0
- package/dist/features/defi-wrapper/pool-info.js +97 -0
- package/dist/features/defi-wrapper/pool-info.js.map +1 -0
- package/dist/features/deposits/check-bls-deposits.js +2 -2
- package/dist/features/deposits/check-bls-deposits.js.map +1 -1
- package/dist/features/deposits/index.d.ts +1 -0
- package/dist/features/deposits/index.js +1 -0
- package/dist/features/deposits/index.js.map +1 -1
- package/dist/features/deposits/make-pdg-proof.js +1 -1
- package/dist/features/deposits/make-pdg-proof.js.map +1 -1
- package/dist/features/deposits/no-pdg.d.ts +1 -1
- package/dist/features/deposits/no-pdg.js +6 -3
- package/dist/features/deposits/no-pdg.js.map +1 -1
- package/dist/features/deposits/pdg.d.ts +2 -0
- package/dist/features/deposits/pdg.js +18 -0
- package/dist/features/deposits/pdg.js.map +1 -0
- package/dist/features/dev-tools/impersonate.d.ts +14 -0
- package/dist/features/dev-tools/impersonate.js +64 -0
- package/dist/features/dev-tools/impersonate.js.map +1 -0
- package/dist/features/dev-tools/index.d.ts +1 -0
- package/dist/features/dev-tools/index.js +2 -0
- package/dist/features/dev-tools/index.js.map +1 -0
- package/dist/features/index.d.ts +4 -1
- package/dist/features/index.js +4 -1
- package/dist/features/index.js.map +1 -1
- package/dist/features/metrics.d.ts +4 -0
- package/dist/features/metrics.js +48 -0
- package/dist/features/metrics.js.map +1 -0
- package/dist/features/pdg.js +4 -0
- package/dist/features/pdg.js.map +1 -1
- package/dist/features/utils/get-boolean.d.ts +1 -0
- package/dist/features/utils/get-boolean.js +13 -0
- package/dist/features/utils/get-boolean.js.map +1 -0
- package/dist/features/utils/index.d.ts +1 -0
- package/dist/features/utils/index.js +1 -0
- package/dist/features/utils/index.js.map +1 -1
- package/dist/features/utils/quarantine.js +2 -0
- package/dist/features/utils/quarantine.js.map +1 -1
- package/dist/features/utils/report-fresh.js +2 -3
- package/dist/features/utils/report-fresh.js.map +1 -1
- package/dist/features/vault-factory.js +2 -2
- package/dist/features/vault-factory.js.map +1 -1
- package/dist/features/vault-operations/create-vault.d.ts +4 -2
- package/dist/features/vault-operations/create-vault.js +11 -3
- package/dist/features/vault-operations/create-vault.js.map +1 -1
- package/dist/features/vault-operations/dashboard-by-vault.js +4 -4
- package/dist/features/vault-operations/dashboard-by-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 +1 -1
- package/dist/features/vault-operations/vault-overview.js.map +1 -1
- package/dist/features/vault-operations/vault-roles.js +3 -0
- package/dist/features/vault-operations/vault-roles.js.map +1 -1
- package/dist/features/vault-operations/vaults-by-role.js +29 -10
- package/dist/features/vault-operations/vaults-by-role.js.map +1 -1
- package/dist/features/vault.js +4 -2
- package/dist/features/vault.js.map +1 -1
- package/dist/index.js +7 -2
- package/dist/index.js.map +1 -1
- package/dist/programs/account/read.js +1 -1
- package/dist/programs/account/read.js.map +1 -1
- package/dist/programs/account/write.js +14 -0
- package/dist/programs/account/write.js.map +1 -1
- package/dist/programs/contracts/dashboard/read.js +7 -7
- package/dist/programs/contracts/dashboard/read.js.map +1 -1
- package/dist/programs/contracts/dashboard/write.js +42 -42
- package/dist/programs/contracts/dashboard/write.js.map +1 -1
- package/dist/programs/contracts/hub/config.js +0 -10
- package/dist/programs/contracts/hub/config.js.map +1 -1
- package/dist/programs/contracts/hub/read.js +63 -2
- package/dist/programs/contracts/hub/read.js.map +1 -1
- package/dist/programs/contracts/hub/write.js +1 -1
- package/dist/programs/contracts/hub/write.js.map +1 -1
- package/dist/programs/contracts/pdg/read.js +2 -1
- package/dist/programs/contracts/pdg/read.js.map +1 -1
- package/dist/programs/contracts/pdg/write.js +37 -3
- package/dist/programs/contracts/pdg/write.js.map +1 -1
- package/dist/programs/contracts/vault/write.js +16 -16
- package/dist/programs/contracts/vault/write.js.map +1 -1
- package/dist/programs/contracts/vault-factory/write.js +2 -2
- package/dist/programs/contracts/vault-factory/write.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/distributor/read.js +1 -1
- package/dist/programs/defi-wrapper/contracts/distributor/read.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/distributor/write.js +3 -3
- package/dist/programs/defi-wrapper/contracts/distributor/write.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/factory/read.js +2 -8
- package/dist/programs/defi-wrapper/contracts/factory/read.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/factory/write.js +90 -273
- package/dist/programs/defi-wrapper/contracts/factory/write.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/index.d.ts +0 -1
- package/dist/programs/defi-wrapper/contracts/index.js +0 -1
- package/dist/programs/defi-wrapper/contracts/index.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/stv-pool/config.js +22 -32
- package/dist/programs/defi-wrapper/contracts/stv-pool/config.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/stv-pool/read.js +17 -24
- package/dist/programs/defi-wrapper/contracts/stv-pool/read.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/stv-pool/write.js +25 -174
- package/dist/programs/defi-wrapper/contracts/stv-pool/write.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js +0 -90
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/config.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js +16 -23
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/read.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js +34 -231
- package/dist/programs/defi-wrapper/contracts/stv-steth-pool/write.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js +1 -91
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/config.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js +8 -27
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/read.js.map +1 -1
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js +55 -24
- package/dist/programs/defi-wrapper/contracts/withdrawal-queue/write.js.map +1 -1
- package/dist/programs/defi-wrapper/index.d.ts +1 -0
- package/dist/programs/defi-wrapper/index.js +1 -0
- package/dist/programs/defi-wrapper/index.js.map +1 -1
- package/dist/programs/defi-wrapper/use-cases/health/index.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/health/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/use-cases/health/main.js +6 -0
- package/dist/programs/defi-wrapper/use-cases/health/main.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/health/read.js +338 -0
- package/dist/programs/defi-wrapper/use-cases/health/read.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/health/utils.d.ts +56 -0
- package/dist/programs/defi-wrapper/use-cases/health/utils.js +389 -0
- package/dist/programs/defi-wrapper/use-cases/health/utils.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/health/write.js +254 -0
- package/dist/programs/defi-wrapper/use-cases/health/write.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/index.d.ts +3 -0
- package/dist/programs/defi-wrapper/use-cases/index.js +4 -0
- package/dist/programs/defi-wrapper/use-cases/index.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/use-cases/main.js +6 -0
- package/dist/programs/defi-wrapper/use-cases/main.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.d.ts +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.js +143 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/create-pool.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.d.ts +3 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.js +5 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/index.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.d.ts +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.js +6 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/main.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.d.ts +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.js +130 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/read.js.map +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.d.ts +1 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.js +13 -0
- package/dist/programs/defi-wrapper/use-cases/wrapper-operations/write.js.map +1 -0
- package/dist/programs/dev-tools/anvil/index.d.ts +2 -0
- package/dist/programs/dev-tools/anvil/index.js +3 -0
- package/dist/programs/dev-tools/anvil/index.js.map +1 -0
- package/dist/programs/dev-tools/anvil/main.d.ts +1 -0
- package/dist/programs/dev-tools/anvil/main.js +5 -0
- package/dist/programs/dev-tools/anvil/main.js.map +1 -0
- package/dist/programs/dev-tools/anvil/write.d.ts +1 -0
- package/dist/programs/dev-tools/anvil/write.js +122 -0
- package/dist/programs/dev-tools/anvil/write.js.map +1 -0
- package/dist/programs/dev-tools/defi-wrapper/index.d.ts +2 -0
- package/dist/programs/dev-tools/defi-wrapper/index.js +3 -0
- package/dist/programs/dev-tools/defi-wrapper/index.js.map +1 -0
- package/dist/programs/dev-tools/defi-wrapper/main.d.ts +1 -0
- package/dist/programs/dev-tools/defi-wrapper/main.js +6 -0
- package/dist/programs/dev-tools/defi-wrapper/main.js.map +1 -0
- package/dist/programs/dev-tools/defi-wrapper/write.d.ts +1 -0
- package/dist/programs/dev-tools/defi-wrapper/write.js +77 -0
- package/dist/programs/dev-tools/defi-wrapper/write.js.map +1 -0
- package/dist/programs/dev-tools/index.d.ts +3 -0
- package/dist/programs/dev-tools/index.js +4 -0
- package/dist/programs/dev-tools/index.js.map +1 -0
- package/dist/programs/dev-tools/main.d.ts +1 -0
- package/dist/programs/dev-tools/main.js +6 -0
- package/dist/programs/dev-tools/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 +19 -15
- package/dist/programs/pdg-helpers.js.map +1 -1
- package/dist/programs/use-cases/consolidation/index.d.ts +2 -0
- package/dist/programs/use-cases/consolidation/index.js +3 -0
- package/dist/programs/use-cases/consolidation/index.js.map +1 -0
- package/dist/programs/use-cases/consolidation/main.d.ts +1 -0
- package/dist/programs/use-cases/consolidation/main.js +5 -0
- package/dist/programs/use-cases/consolidation/main.js.map +1 -0
- package/dist/programs/use-cases/consolidation/write.d.ts +1 -0
- package/dist/programs/use-cases/consolidation/write.js +78 -0
- package/dist/programs/use-cases/consolidation/write.js.map +1 -0
- package/dist/programs/use-cases/deposits/read.js +4 -0
- package/dist/programs/use-cases/deposits/read.js.map +1 -1
- package/dist/programs/use-cases/deposits/write.js +41 -11
- package/dist/programs/use-cases/deposits/write.js.map +1 -1
- package/dist/programs/use-cases/index.d.ts +1 -0
- package/dist/programs/use-cases/index.js +1 -0
- package/dist/programs/use-cases/index.js.map +1 -1
- package/dist/programs/use-cases/metrics/read.js +9 -20
- package/dist/programs/use-cases/metrics/read.js.map +1 -1
- package/dist/programs/use-cases/vault-operations/create-vault.js +2 -2
- package/dist/programs/use-cases/vault-operations/create-vault.js.map +1 -1
- package/dist/providers/wallet.d.ts +14539 -63
- package/dist/providers/wallet.js +14 -4
- package/dist/providers/wallet.js.map +1 -1
- package/dist/tests/utils/bigInt.test.d.ts +1 -0
- package/dist/tests/utils/bigInt.test.js +61 -0
- package/dist/tests/utils/bigInt.test.js.map +1 -0
- package/dist/types/config.d.ts +1 -0
- package/dist/utils/arguments.d.ts +4 -0
- package/dist/utils/arguments.js +40 -1
- package/dist/utils/arguments.js.map +1 -1
- package/dist/utils/bigInt.d.ts +2 -0
- package/dist/utils/bigInt.js +3 -0
- package/dist/utils/bigInt.js.map +1 -0
- package/dist/utils/bls.d.ts +2 -2
- package/dist/utils/bls.js +8 -7
- package/dist/utils/bls.js.map +1 -1
- package/dist/utils/cache.d.ts +30 -0
- package/dist/utils/cache.js +140 -3
- package/dist/utils/cache.js.map +1 -1
- package/dist/utils/calculate-overview-v2.js +1 -2
- package/dist/utils/calculate-overview-v2.js.map +1 -1
- package/dist/utils/calculate-overview.js +1 -2
- package/dist/utils/calculate-overview.js.map +1 -1
- package/dist/utils/charts/blessed/charts-apr.js +8 -18
- package/dist/utils/charts/blessed/charts-apr.js.map +1 -1
- package/dist/utils/charts/blessed/charts-rewards.js +7 -17
- package/dist/utils/charts/blessed/charts-rewards.js.map +1 -1
- package/dist/utils/charts/blessed/datasets/prepare-metrics.d.ts +5 -5
- package/dist/utils/charts/blessed/datasets/prepare-metrics.js +11 -11
- package/dist/utils/charts/blessed/datasets/prepare-metrics.js.map +1 -1
- package/dist/utils/charts/simple/simple-charts.js +8 -18
- package/dist/utils/charts/simple/simple-charts.js.map +1 -1
- package/dist/utils/commands/confirmations.js +1 -1
- package/dist/utils/commands/confirmations.js.map +1 -1
- package/dist/utils/commands/report.d.ts +1 -1
- package/dist/utils/commands/report.js +3 -2
- package/dist/utils/commands/report.js.map +1 -1
- package/dist/utils/consolidation/checks.d.ts +7 -0
- package/dist/utils/consolidation/checks.js +40 -0
- package/dist/utils/consolidation/checks.js.map +1 -0
- package/dist/utils/consolidation/confirms.d.ts +4 -0
- package/dist/utils/consolidation/confirms.js +41 -0
- package/dist/utils/consolidation/confirms.js.map +1 -0
- package/dist/utils/consolidation/index.d.ts +6 -0
- package/dist/utils/consolidation/index.js +7 -0
- package/dist/utils/consolidation/index.js.map +1 -0
- package/dist/utils/consolidation/logs.d.ts +3 -0
- package/dist/utils/consolidation/logs.js +41 -0
- package/dist/utils/consolidation/logs.js.map +1 -0
- package/dist/utils/consolidation/pubkeys.d.ts +8 -0
- package/dist/utils/consolidation/pubkeys.js +40 -0
- package/dist/utils/consolidation/pubkeys.js.map +1 -0
- package/dist/utils/consolidation/types.d.ts +11 -0
- package/dist/utils/consolidation/types.js +2 -0
- package/dist/utils/consolidation/types.js.map +1 -0
- package/dist/utils/consolidation/validator-info.d.ts +4 -0
- package/dist/utils/consolidation/validator-info.js +34 -0
- package/dist/utils/consolidation/validator-info.js.map +1 -0
- package/dist/utils/consolidation/validators-checks.d.ts +10 -0
- package/dist/utils/consolidation/validators-checks.js +58 -0
- package/dist/utils/consolidation/validators-checks.js.map +1 -0
- package/dist/utils/fetchCL.d.ts +35 -14
- package/dist/utils/fetchCL.js +78 -5
- package/dist/utils/fetchCL.js.map +1 -1
- package/dist/utils/health/health-utils.d.ts +54 -54
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/read-programs-by-abi.d.ts +1 -1
- package/dist/utils/read-programs-by-abi.js +4 -18
- package/dist/utils/read-programs-by-abi.js.map +1 -1
- package/dist/utils/report/report.js +1 -1
- package/dist/utils/report/report.js.map +1 -1
- package/dist/utils/report/statistic-data.js +3 -3
- package/dist/utils/report/statistic-data.js.map +1 -1
- package/dist/utils/statistic/report-statistic.d.ts +6 -5
- package/dist/utils/statistic/report-statistic.js +15 -16
- package/dist/utils/statistic/report-statistic.js.map +1 -1
- package/dist/utils/transactions/tx-private-key.js +14 -9
- package/dist/utils/transactions/tx-private-key.js.map +1 -1
- package/dist/utils/transactions/tx-wc.d.ts +5 -3
- package/dist/utils/transactions/tx-wc.js +21 -10
- package/dist/utils/transactions/tx-wc.js.map +1 -1
- package/dist/utils/transactions/types.d.ts +4 -2
- package/dist/utils/wallet-connect.js +3 -3
- package/dist/utils/wallet-connect.js.map +1 -1
- package/dist/version/index.js +1 -1
- package/package.json +2 -2
- package/dist/abi/defi-wrapper/StvStrategyPool.d.ts +0 -1769
- package/dist/abi/defi-wrapper/StvStrategyPool.js +0 -2319
- package/dist/abi/defi-wrapper/StvStrategyPool.js.map +0 -1
- package/dist/contracts/defi-wrapper/stv-strategy-pool.d.ts +0 -4
- package/dist/contracts/defi-wrapper/stv-strategy-pool.js +0 -11
- package/dist/contracts/defi-wrapper/stv-strategy-pool.js.map +0 -1
- package/dist/features/defi-wrapper-factory.d.ts +0 -18
- package/dist/features/defi-wrapper-factory.js +0 -28
- package/dist/features/defi-wrapper-factory.js.map +0 -1
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.d.ts +0 -3
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.js +0 -214
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/config.js.map +0 -1
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/index.js.map +0 -1
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.d.ts +0 -1
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.js +0 -6
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/main.js.map +0 -1
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/read.js +0 -77
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/read.js.map +0 -1
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/write.js +0 -370
- package/dist/programs/defi-wrapper/contracts/stv-strategy-pool/write.js.map +0 -1
- /package/dist/programs/defi-wrapper/{contracts/stv-strategy-pool → use-cases/health}/index.d.ts +0 -0
- /package/dist/programs/defi-wrapper/{contracts/stv-strategy-pool → use-cases/health}/index.js +0 -0
- /package/dist/programs/defi-wrapper/{contracts/stv-strategy-pool → use-cases/health}/read.d.ts +0 -0
- /package/dist/programs/defi-wrapper/{contracts/stv-strategy-pool → use-cases/health}/write.d.ts +0 -0
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import { parseEventLogs, fromHex, isAddressEqual, zeroAddress, } from 'viem';
|
|
2
|
+
import { FactoryAbi } from '../../abi/defi-wrapper/Factory.js';
|
|
3
|
+
import { program } from '../../command/index.js';
|
|
4
|
+
import { getVaultHubContract } from '../../contracts/index.js';
|
|
5
|
+
import { getAddress, getConfirmExpiry, getMinDelaySeconds, getMinWithdrawalDelayTime, getNodeOperatorFeeRate, getPoolTokenName, getPoolTokenSymbol, } from '../index.js';
|
|
6
|
+
import { logInfo, logResult, logError, callWriteMethodWithReceipt, } from '../../utils/index.js';
|
|
7
|
+
// сommon filaliztion step between two pools
|
|
8
|
+
export const finalizePoolCreation = async (contract, vaultConfig, timelockConfig, commonPoolConfig, creationEventData) => {
|
|
9
|
+
if (!creationEventData.auxiliaryConfig ||
|
|
10
|
+
!creationEventData.strategyFactory ||
|
|
11
|
+
!creationEventData.strategyDeployBytes ||
|
|
12
|
+
!creationEventData.intermediate) {
|
|
13
|
+
logError('Missing required data for pool creation finalize');
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
logInfo('Pool Creation Finalize');
|
|
17
|
+
const finalizeResult = await callWriteMethodWithReceipt({
|
|
18
|
+
contract,
|
|
19
|
+
methodName: 'createPoolFinish',
|
|
20
|
+
payload: [
|
|
21
|
+
vaultConfig,
|
|
22
|
+
timelockConfig,
|
|
23
|
+
commonPoolConfig,
|
|
24
|
+
creationEventData.auxiliaryConfig,
|
|
25
|
+
creationEventData.strategyFactory,
|
|
26
|
+
creationEventData.strategyDeployBytes,
|
|
27
|
+
creationEventData.intermediate,
|
|
28
|
+
],
|
|
29
|
+
});
|
|
30
|
+
if (!finalizeResult.receipt || !finalizeResult.tx) {
|
|
31
|
+
logInfo('Transaction has been sent');
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
const finalizeEventData = await getFinalizePoolEventData(finalizeResult.receipt, finalizeResult.tx);
|
|
35
|
+
await logFinalizePoolEventData(creationEventData, finalizeEventData);
|
|
36
|
+
};
|
|
37
|
+
export const getCreatePoolEventData = async (receipt, tx) => {
|
|
38
|
+
if (program.opts().populateTx) {
|
|
39
|
+
return { tx };
|
|
40
|
+
}
|
|
41
|
+
const events = parseEventLogs({
|
|
42
|
+
abi: FactoryAbi,
|
|
43
|
+
logs: receipt.logs,
|
|
44
|
+
strict: true,
|
|
45
|
+
});
|
|
46
|
+
const poolEvent = events.find((event) => event.eventName === 'PoolCreationStarted');
|
|
47
|
+
const sender = poolEvent?.args.sender;
|
|
48
|
+
const vaultConfig = poolEvent?.args.vaultConfig;
|
|
49
|
+
const commonPoolConfig = poolEvent?.args.commonPoolConfig;
|
|
50
|
+
const auxiliaryConfig = poolEvent?.args.auxiliaryConfig;
|
|
51
|
+
const timelockConfig = poolEvent?.args.timelockConfig;
|
|
52
|
+
const strategyFactory = poolEvent?.args.strategyFactory;
|
|
53
|
+
const strategyDeployBytes = poolEvent?.args.strategyDeployBytes;
|
|
54
|
+
const intermediate = poolEvent?.args.intermediate;
|
|
55
|
+
const finishDeadline = poolEvent?.args.finishDeadline;
|
|
56
|
+
return {
|
|
57
|
+
sender,
|
|
58
|
+
vaultConfig,
|
|
59
|
+
commonPoolConfig,
|
|
60
|
+
auxiliaryConfig,
|
|
61
|
+
timelockConfig,
|
|
62
|
+
strategyFactory,
|
|
63
|
+
strategyDeployBytes,
|
|
64
|
+
intermediate,
|
|
65
|
+
finishDeadline,
|
|
66
|
+
tx,
|
|
67
|
+
blockNumber: receipt.blockNumber,
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
export const logCreatePoolEventData = async (eventData) => {
|
|
71
|
+
logInfo('Pool Creation Started');
|
|
72
|
+
logResult({
|
|
73
|
+
data: [
|
|
74
|
+
['Sender', eventData.sender],
|
|
75
|
+
['Strategy Factory', eventData.strategyFactory],
|
|
76
|
+
['Strategy Deploy Bytes', eventData.strategyDeployBytes],
|
|
77
|
+
['Finish Deadline', eventData.finishDeadline],
|
|
78
|
+
['Transaction Hash', eventData.tx],
|
|
79
|
+
['Block Number', eventData.blockNumber],
|
|
80
|
+
],
|
|
81
|
+
});
|
|
82
|
+
logInfo('Vault Config');
|
|
83
|
+
logResult({
|
|
84
|
+
data: [
|
|
85
|
+
['Node Operator', eventData.vaultConfig?.nodeOperator],
|
|
86
|
+
['Node Operator Manager', eventData.vaultConfig?.nodeOperatorManager],
|
|
87
|
+
['Node Operator Fee BP', eventData.vaultConfig?.nodeOperatorFeeBP],
|
|
88
|
+
['Confirm Expiry', eventData.vaultConfig?.confirmExpiry],
|
|
89
|
+
],
|
|
90
|
+
});
|
|
91
|
+
logInfo('Common Pool Config');
|
|
92
|
+
logResult({
|
|
93
|
+
data: [
|
|
94
|
+
[
|
|
95
|
+
'Min Withdrawal Delay Time',
|
|
96
|
+
eventData.commonPoolConfig?.minWithdrawalDelayTime,
|
|
97
|
+
],
|
|
98
|
+
['Name', eventData.commonPoolConfig?.name],
|
|
99
|
+
['Symbol', eventData.commonPoolConfig?.symbol],
|
|
100
|
+
],
|
|
101
|
+
});
|
|
102
|
+
logInfo('Auxiliary Config');
|
|
103
|
+
logResult({
|
|
104
|
+
data: [
|
|
105
|
+
['Allowlist Enabled', eventData.auxiliaryConfig?.allowlistEnabled],
|
|
106
|
+
['Minting Enabled', eventData.auxiliaryConfig?.mintingEnabled],
|
|
107
|
+
['Reserve Ratio Gap BP', eventData.auxiliaryConfig?.reserveRatioGapBP],
|
|
108
|
+
],
|
|
109
|
+
});
|
|
110
|
+
logInfo('Timelock Config');
|
|
111
|
+
logResult({
|
|
112
|
+
data: [
|
|
113
|
+
['Min Delay Seconds', eventData.timelockConfig?.minDelaySeconds],
|
|
114
|
+
['Proposer', eventData.timelockConfig?.proposer],
|
|
115
|
+
['Executor', eventData.timelockConfig?.executor],
|
|
116
|
+
],
|
|
117
|
+
});
|
|
118
|
+
logInfo('Intermediate');
|
|
119
|
+
logResult({
|
|
120
|
+
data: [
|
|
121
|
+
['Dashboard', eventData.intermediate?.dashboard],
|
|
122
|
+
['Pool Proxy', eventData.intermediate?.poolProxy],
|
|
123
|
+
['Withdrawal Queue Proxy', eventData.intermediate?.withdrawalQueueProxy],
|
|
124
|
+
['Timelock', eventData.intermediate?.timelock],
|
|
125
|
+
],
|
|
126
|
+
});
|
|
127
|
+
};
|
|
128
|
+
export const getFinalizePoolEventData = async (receipt, tx) => {
|
|
129
|
+
if (program.opts().populateTx) {
|
|
130
|
+
return { tx };
|
|
131
|
+
}
|
|
132
|
+
const events = parseEventLogs({
|
|
133
|
+
abi: FactoryAbi,
|
|
134
|
+
logs: receipt.logs,
|
|
135
|
+
});
|
|
136
|
+
const poolEvent = events.find((event) => event.eventName === 'PoolCreated');
|
|
137
|
+
const vault = poolEvent?.args.vault;
|
|
138
|
+
const pool = poolEvent?.args.pool;
|
|
139
|
+
const poolType = poolEvent?.args.poolType;
|
|
140
|
+
const withdrawalQueue = poolEvent?.args.withdrawalQueue;
|
|
141
|
+
const strategyFactory = poolEvent?.args.strategyFactory;
|
|
142
|
+
const strategyDeployBytes = poolEvent?.args.strategyDeployBytes;
|
|
143
|
+
const strategy = poolEvent?.args.strategy;
|
|
144
|
+
return {
|
|
145
|
+
vault,
|
|
146
|
+
pool,
|
|
147
|
+
poolType,
|
|
148
|
+
withdrawalQueue,
|
|
149
|
+
strategyFactory,
|
|
150
|
+
strategyDeployBytes,
|
|
151
|
+
strategy,
|
|
152
|
+
tx,
|
|
153
|
+
blockNumber: receipt.blockNumber,
|
|
154
|
+
};
|
|
155
|
+
};
|
|
156
|
+
export const logFinalizePoolEventData = async (createEventData, finalizeEventData) => {
|
|
157
|
+
const poolType = finalizeEventData.poolType &&
|
|
158
|
+
fromHex(finalizeEventData.poolType, 'string').replace(/\W/g, '');
|
|
159
|
+
logInfo('Pool Creation Finalized');
|
|
160
|
+
logResult({
|
|
161
|
+
data: [
|
|
162
|
+
['Vault', finalizeEventData.vault],
|
|
163
|
+
['Pool', finalizeEventData.pool],
|
|
164
|
+
['Pool Type', poolType],
|
|
165
|
+
['Withdrawal Queue', finalizeEventData.withdrawalQueue],
|
|
166
|
+
['Timelock', createEventData.intermediate?.timelock],
|
|
167
|
+
['Strategy Factory', finalizeEventData.strategyFactory],
|
|
168
|
+
['Strategy Deploy Bytes', finalizeEventData.strategyDeployBytes],
|
|
169
|
+
['Strategy', finalizeEventData.strategy],
|
|
170
|
+
['Transaction Hash', finalizeEventData.tx],
|
|
171
|
+
['Block Number', finalizeEventData.blockNumber],
|
|
172
|
+
],
|
|
173
|
+
});
|
|
174
|
+
// log UI strategy ENV only if it's not the zero address - meaning it's stvStrategyPool
|
|
175
|
+
const strategyDataEntry = finalizeEventData.strategy &&
|
|
176
|
+
!isAddressEqual(finalizeEventData.strategy, zeroAddress)
|
|
177
|
+
? [['VITE_STRATEGY_ADDRESS', finalizeEventData.strategy]]
|
|
178
|
+
: [];
|
|
179
|
+
logInfo('UI Environment Variables:');
|
|
180
|
+
logResult({
|
|
181
|
+
data: [
|
|
182
|
+
['VITE_POOL_TYPE', poolType],
|
|
183
|
+
['VITE_POOL_ADDRESS', finalizeEventData.pool],
|
|
184
|
+
...strategyDataEntry,
|
|
185
|
+
],
|
|
186
|
+
});
|
|
187
|
+
};
|
|
188
|
+
export const promtBaseVaultConfiguration = async ({ nodeOperator, nodeOperatorManager, nodeOperatorFeeRate, confirmExpiry, minDelaySeconds, proposer, executor, emergencyCommittee, minWithdrawalDelayTime, name, symbol, }) => {
|
|
189
|
+
const vaultHubContract = await getVaultHubContract();
|
|
190
|
+
const CONNECT_DEPOSIT = await vaultHubContract.read.CONNECT_DEPOSIT();
|
|
191
|
+
const nodeOperatorAddress = await getAddress(nodeOperator, 'Node Operator');
|
|
192
|
+
const nodeOperatorManagerAddress = await getAddress(nodeOperatorManager, 'Node Operator Manager');
|
|
193
|
+
const nodeOperatorFeeRateValue = await getNodeOperatorFeeRate(nodeOperatorFeeRate);
|
|
194
|
+
const confirmExpiryValue = await getConfirmExpiry({
|
|
195
|
+
confirmExpiry,
|
|
196
|
+
});
|
|
197
|
+
const minDelaySecondsValue = await getMinDelaySeconds(minDelaySeconds);
|
|
198
|
+
const proposerAddress = await getAddress(proposer, 'Proposer');
|
|
199
|
+
const executorAddress = await getAddress(executor, 'Executor');
|
|
200
|
+
const emergencyCommitteeAddress = await getAddress(emergencyCommittee, 'Emergency Committee');
|
|
201
|
+
const minWithdrawalDelayTimeValue = await getMinWithdrawalDelayTime(minWithdrawalDelayTime);
|
|
202
|
+
const nameValue = await getPoolTokenName(name);
|
|
203
|
+
const symbolValue = await getPoolTokenSymbol(symbol);
|
|
204
|
+
const vaultConfig = {
|
|
205
|
+
nodeOperator: nodeOperatorAddress,
|
|
206
|
+
nodeOperatorManager: nodeOperatorManagerAddress,
|
|
207
|
+
nodeOperatorFeeBP: BigInt(nodeOperatorFeeRateValue),
|
|
208
|
+
confirmExpiry: BigInt(confirmExpiryValue),
|
|
209
|
+
};
|
|
210
|
+
const timelockConfig = {
|
|
211
|
+
minDelaySeconds: BigInt(minDelaySecondsValue),
|
|
212
|
+
proposer: proposerAddress,
|
|
213
|
+
executor: executorAddress,
|
|
214
|
+
};
|
|
215
|
+
const commonPoolConfig = {
|
|
216
|
+
minWithdrawalDelayTime: BigInt(minWithdrawalDelayTimeValue),
|
|
217
|
+
name: nameValue,
|
|
218
|
+
symbol: symbolValue,
|
|
219
|
+
emergencyCommittee: emergencyCommitteeAddress,
|
|
220
|
+
};
|
|
221
|
+
return {
|
|
222
|
+
vaultConfig,
|
|
223
|
+
timelockConfig,
|
|
224
|
+
commonPoolConfig,
|
|
225
|
+
CONNECT_DEPOSIT,
|
|
226
|
+
};
|
|
227
|
+
};
|
|
228
|
+
//# sourceMappingURL=defi-wrapper-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defi-wrapper-factory.js","sourceRoot":"","sources":["../../../features/defi-wrapper/defi-wrapper-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../features/defi-wrapper/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Address } from 'viem';
|
|
2
|
+
export declare const getPoolInfo: (address: Address) => Promise<{
|
|
3
|
+
poolTypeName: string;
|
|
4
|
+
isStvStethPool: boolean;
|
|
5
|
+
isStvPool: boolean;
|
|
6
|
+
WSTETH?: `0x${string}` | undefined;
|
|
7
|
+
RESERVE_RATIO_GAP_BP?: bigint | undefined;
|
|
8
|
+
totalMintedStethShares?: bigint | undefined;
|
|
9
|
+
reserveRatioBP?: bigint | undefined;
|
|
10
|
+
forcedRebalanceThresholdBP?: bigint | undefined;
|
|
11
|
+
totalExceedingMintedStethShares?: bigint | undefined;
|
|
12
|
+
totalExceedingMintedSteth?: bigint | undefined;
|
|
13
|
+
maxLossSocializationBP?: bigint | undefined;
|
|
14
|
+
isMintingPaused?: boolean | undefined;
|
|
15
|
+
MINTING_FEATURE?: `0x${string}` | undefined;
|
|
16
|
+
vault: `0x${string}`;
|
|
17
|
+
stETH: `0x${string}`;
|
|
18
|
+
Dashboard: `0x${string}`;
|
|
19
|
+
VaultHub: `0x${string}`;
|
|
20
|
+
WithdrawalQueue: `0x${string}`;
|
|
21
|
+
Distributor: `0x${string}`;
|
|
22
|
+
poolType: `0x${string}`;
|
|
23
|
+
totalNominalAssets: bigint;
|
|
24
|
+
totalAssets: bigint;
|
|
25
|
+
totalSupply: bigint;
|
|
26
|
+
totalLiabilityShares: bigint;
|
|
27
|
+
totalUnassignedLiabilityShares: bigint;
|
|
28
|
+
totalUnassignedLiabilitySteth: bigint;
|
|
29
|
+
decimals: number;
|
|
30
|
+
isDepositsPaused: boolean;
|
|
31
|
+
ALLOW_LIST_ENABLED: boolean;
|
|
32
|
+
DEPOSITS_FEATURE: `0x${string}`;
|
|
33
|
+
allowListSize: bigint;
|
|
34
|
+
isReportFresh: boolean;
|
|
35
|
+
}>;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { fromHex } from 'viem';
|
|
2
|
+
import { getStvStethPoolContract, getStvPoolContract, } from '../../contracts/defi-wrapper/index.js';
|
|
3
|
+
import { callReadMethodSilent } from '../../utils/index.js';
|
|
4
|
+
import { reportFreshWarning } from '../index.js';
|
|
5
|
+
const STV_POOL_NAME = 'StvPool';
|
|
6
|
+
const STV_STETH_POOL_NAME = 'StvStETHPool';
|
|
7
|
+
const STV_STRATEGY_POOL_NAME = 'StvStrategyPool';
|
|
8
|
+
const getStvPoolInfo = async (address) => {
|
|
9
|
+
const contract = await getStvPoolContract(address);
|
|
10
|
+
const [vault, stETH, Dashboard, VaultHub, WithdrawalQueue, Distributor, poolType, totalNominalAssets, totalAssets, totalSupply, totalLiabilityShares, totalUnassignedLiabilityShares, totalUnassignedLiabilitySteth, decimals, DEPOSITS_FEATURE, ALLOW_LIST_ENABLED, allowListSize,] = await Promise.all([
|
|
11
|
+
contract.read.VAULT(),
|
|
12
|
+
contract.read.STETH(),
|
|
13
|
+
contract.read.DASHBOARD(),
|
|
14
|
+
contract.read.VAULT_HUB(),
|
|
15
|
+
contract.read.WITHDRAWAL_QUEUE(),
|
|
16
|
+
contract.read.DISTRIBUTOR(),
|
|
17
|
+
contract.read.poolType(),
|
|
18
|
+
contract.read.totalNominalAssets(),
|
|
19
|
+
contract.read.totalAssets(),
|
|
20
|
+
contract.read.totalSupply(),
|
|
21
|
+
contract.read.totalLiabilityShares(),
|
|
22
|
+
contract.read.totalUnassignedLiabilityShares(),
|
|
23
|
+
contract.read.totalUnassignedLiabilitySteth(),
|
|
24
|
+
contract.read.decimals(),
|
|
25
|
+
contract.read.DEPOSITS_FEATURE(),
|
|
26
|
+
contract.read.ALLOW_LIST_ENABLED(),
|
|
27
|
+
contract.read.getAllowListSize(),
|
|
28
|
+
]);
|
|
29
|
+
const isDepositsPaused = await callReadMethodSilent(contract, 'isFeaturePaused', [DEPOSITS_FEATURE]);
|
|
30
|
+
const isReportFresh = await reportFreshWarning(vault);
|
|
31
|
+
return {
|
|
32
|
+
vault,
|
|
33
|
+
stETH,
|
|
34
|
+
Dashboard,
|
|
35
|
+
VaultHub,
|
|
36
|
+
WithdrawalQueue,
|
|
37
|
+
Distributor,
|
|
38
|
+
poolType,
|
|
39
|
+
totalNominalAssets,
|
|
40
|
+
totalAssets,
|
|
41
|
+
totalSupply,
|
|
42
|
+
totalLiabilityShares,
|
|
43
|
+
totalUnassignedLiabilityShares,
|
|
44
|
+
totalUnassignedLiabilitySteth,
|
|
45
|
+
decimals,
|
|
46
|
+
isDepositsPaused,
|
|
47
|
+
ALLOW_LIST_ENABLED,
|
|
48
|
+
DEPOSITS_FEATURE,
|
|
49
|
+
allowListSize,
|
|
50
|
+
isReportFresh,
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
const getStvStethPoolInfo = async (address) => {
|
|
54
|
+
const contract = await getStvStethPoolContract(address);
|
|
55
|
+
const [WSTETH, RESERVE_RATIO_GAP_BP, totalMintedStethShares, reserveRatioBP, forcedRebalanceThresholdBP, totalExceedingMintedStethShares, totalExceedingMintedSteth, maxLossSocializationBP, MINTING_FEATURE,] = await Promise.all([
|
|
56
|
+
contract.read.WSTETH(),
|
|
57
|
+
contract.read.RESERVE_RATIO_GAP_BP(),
|
|
58
|
+
contract.read.totalMintedStethShares(),
|
|
59
|
+
contract.read.reserveRatioBP(),
|
|
60
|
+
contract.read.forcedRebalanceThresholdBP(),
|
|
61
|
+
contract.read.totalExceedingMintedStethShares(),
|
|
62
|
+
contract.read.totalExceedingMintedSteth(),
|
|
63
|
+
contract.read.maxLossSocializationBP(),
|
|
64
|
+
contract.read.MINTING_FEATURE(),
|
|
65
|
+
]);
|
|
66
|
+
const isMintingPaused = await callReadMethodSilent(contract, 'isFeaturePaused', [MINTING_FEATURE]);
|
|
67
|
+
return {
|
|
68
|
+
WSTETH,
|
|
69
|
+
RESERVE_RATIO_GAP_BP,
|
|
70
|
+
totalMintedStethShares,
|
|
71
|
+
reserveRatioBP,
|
|
72
|
+
forcedRebalanceThresholdBP,
|
|
73
|
+
totalExceedingMintedStethShares,
|
|
74
|
+
totalExceedingMintedSteth,
|
|
75
|
+
maxLossSocializationBP,
|
|
76
|
+
isMintingPaused,
|
|
77
|
+
MINTING_FEATURE,
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
export const getPoolInfo = async (address) => {
|
|
81
|
+
const stvPoolInfo = await getStvPoolInfo(address);
|
|
82
|
+
const poolTypeName = fromHex(stvPoolInfo.poolType, 'string').replace(/\W/g, '');
|
|
83
|
+
const isStvStethPool = poolTypeName === STV_STETH_POOL_NAME ||
|
|
84
|
+
poolTypeName === STV_STRATEGY_POOL_NAME;
|
|
85
|
+
const isStvPool = poolTypeName === STV_POOL_NAME;
|
|
86
|
+
const stvStethPoolInfo = isStvStethPool
|
|
87
|
+
? await getStvStethPoolInfo(address)
|
|
88
|
+
: null;
|
|
89
|
+
return {
|
|
90
|
+
...stvPoolInfo,
|
|
91
|
+
...(stvStethPoolInfo ? stvStethPoolInfo : {}),
|
|
92
|
+
poolTypeName,
|
|
93
|
+
isStvStethPool,
|
|
94
|
+
isStvPool,
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
//# sourceMappingURL=pool-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool-info.js","sourceRoot":"","sources":["../../../features/defi-wrapper/pool-info.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { callReadMethod, isValidBLSDeposit } from '../../utils/index.js';
|
|
|
2
2
|
export const checkBLSDeposits = async (vaultContract, deposits) => {
|
|
3
3
|
const withdrawalCredentials = await callReadMethod(vaultContract, 'withdrawalCredentials');
|
|
4
4
|
for (const deposit of deposits) {
|
|
5
|
-
const isBLSValid = isValidBLSDeposit(deposit, withdrawalCredentials);
|
|
5
|
+
const isBLSValid = await isValidBLSDeposit(deposit, withdrawalCredentials);
|
|
6
6
|
if (!isBLSValid) {
|
|
7
7
|
throw new Error(`❌ Offchain - BLS signature is not valid for Pubkey ${deposit.pubkey}`);
|
|
8
8
|
}
|
|
@@ -12,7 +12,7 @@ export const checkBLSWithAmountDeposits = async (pdgContract, vaultContract, dep
|
|
|
12
12
|
const PREDEPOSIT_AMOUNT = await callReadMethod(pdgContract, 'PREDEPOSIT_AMOUNT');
|
|
13
13
|
const withdrawalCredentials = await callReadMethod(vaultContract, 'withdrawalCredentials');
|
|
14
14
|
for (const deposit of deposits) {
|
|
15
|
-
const isBLSValid = isValidBLSDeposit(deposit, withdrawalCredentials);
|
|
15
|
+
const isBLSValid = await isValidBLSDeposit(deposit, withdrawalCredentials);
|
|
16
16
|
if (deposit.amount !== PREDEPOSIT_AMOUNT) {
|
|
17
17
|
throw new Error(`❌ Deposit amount is not equal to PREDEPOSIT_AMOUNT for pubkey ${deposit.pubkey}`);
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-bls-deposits.js","sourceRoot":"","sources":["../../../features/deposits/check-bls-deposits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI1D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,aAAmC,EACnC,QAAmB,EACnB,EAAE;IACF,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAChD,aAAa,EACb,uBAAuB,CACxB,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"check-bls-deposits.js","sourceRoot":"","sources":["../../../features/deposits/check-bls-deposits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI1D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,aAAmC,EACnC,QAAmB,EACnB,EAAE;IACF,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAChD,aAAa,EACb,uBAAuB,CACxB,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAE3E,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,sDAAsD,OAAO,CAAC,MAAM,EAAE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAC7C,WAAwC,EACxC,aAAmC,EACnC,QAAmB,EACnB,EAAE;IACF,MAAM,iBAAiB,GAAG,MAAM,cAAc,CAC5C,WAAW,EACX,mBAAmB,CACpB,CAAC;IACF,MAAM,qBAAqB,GAAG,MAAM,cAAc,CAChD,aAAa,EACb,uBAAuB,CACxB,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAE3E,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CACb,iEAAiE,OAAO,CAAC,MAAM,EAAE,CAClF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,sDAAsD,OAAO,CAAC,MAAM,EAAE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../features/deposits/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../features/deposits/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { getStakingVaultContract, } from '../../contracts/index.js';
|
|
|
4
4
|
import { VALIDATOR_STAGES } from '../../features/pdg.js';
|
|
5
5
|
export const checkValidatorStageAndStagedBalanceForActivation = async (pdgContract, pubkey) => {
|
|
6
6
|
const { stage, stakingVault } = await callReadMethodSilent(pdgContract, 'validatorStatus', [pubkey]);
|
|
7
|
-
const vaultStagedBalance = await callReadMethodSilent(getStakingVaultContract(stakingVault), 'stagedBalance');
|
|
7
|
+
const vaultStagedBalance = await callReadMethodSilent(await getStakingVaultContract(stakingVault), 'stagedBalance');
|
|
8
8
|
const ACTIVATION_DEPOSIT_AMOUNT = await callReadMethodSilent(pdgContract, 'ACTIVATION_DEPOSIT_AMOUNT');
|
|
9
9
|
if (vaultStagedBalance < ACTIVATION_DEPOSIT_AMOUNT) {
|
|
10
10
|
throw new Error(`Staged balance is less than ${formatEther(ACTIVATION_DEPOSIT_AMOUNT)} ETH (current: ${formatEther(vaultStagedBalance)} ETH)`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-pdg-proof.js","sourceRoot":"","sources":["../../../features/deposits/make-pdg-proof.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,WAAW,EAAE,MAAM,MAAM,CAAC;AAExC,OAAO,EACL,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAU,EACV,WAAW,EACX,cAAc,EAEd,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,OAAO,CAAC;AACf,OAAO,EAEL,uBAAuB,GACxB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,CAAC,MAAM,gDAAgD,GAAG,KAAK,EACnE,WAAwC,EACxC,MAAW,EACX,EAAE;IACF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,oBAAoB,CACxD,WAAW,EACX,iBAAiB,EACjB,CAAC,MAAM,CAAC,CACT,CAAC;IACF,MAAM,kBAAkB,GAAG,MAAM,oBAAoB,CACnD,uBAAuB,CAAC,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"make-pdg-proof.js","sourceRoot":"","sources":["../../../features/deposits/make-pdg-proof.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ export declare const checkNOBalancePDGforDeposits: (pdgContract: PredepositGuara
|
|
|
13
13
|
amountToTopUp: bigint;
|
|
14
14
|
isNeedTopUp: boolean;
|
|
15
15
|
}>;
|
|
16
|
-
export declare const
|
|
16
|
+
export declare const checkNodeOperatorOrDepositorForDeposit: (vault: StakingVaultContract, pdg: PredepositGuaranteeContract) => Promise<`0x${string}`>;
|
|
17
17
|
export declare const checkAndSpecifyNodeOperatorForTopUpOrWithdraw: (vault: StakingVaultContract, pdg: PredepositGuaranteeContract, isTopUp: boolean) => Promise<`0x${string}`>;
|
|
18
18
|
export declare const getGuarantor: (pdgContract: PredepositGuaranteeContract) => Promise<{
|
|
19
19
|
newGuarantor: any;
|
|
@@ -37,12 +37,15 @@ export const checkNOBalancePDGforDeposits = async (pdgContract, nodeOperator, co
|
|
|
37
37
|
}
|
|
38
38
|
return { amountToTopUp, isNeedTopUp };
|
|
39
39
|
};
|
|
40
|
-
export const
|
|
40
|
+
export const checkNodeOperatorOrDepositorForDeposit = async (vault, pdg) => {
|
|
41
41
|
const currentAccount = await getAccount();
|
|
42
42
|
const vaultNodeOperator = await callReadMethodSilent(vault, 'nodeOperator');
|
|
43
|
-
|
|
43
|
+
const noDepositor = await callReadMethodSilent(pdg, 'nodeOperatorDepositor', [
|
|
44
|
+
vaultNodeOperator,
|
|
45
|
+
]);
|
|
46
|
+
if (noDepositor.toLocaleLowerCase() !==
|
|
44
47
|
currentAccount.address.toLocaleLowerCase()) {
|
|
45
|
-
throw new Error(`You are not the
|
|
48
|
+
throw new Error(`You are not the depositor of the node operator ${vaultNodeOperator}. Only depositor can deposit from the vault.`);
|
|
46
49
|
}
|
|
47
50
|
return vaultNodeOperator;
|
|
48
51
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"no-pdg.js","sourceRoot":"","sources":["../../../features/deposits/no-pdg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,WAAW,EAAE,MAAM,MAAM,CAAC;AAG5C,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,OAAO,EACP,YAAY,EACZ,aAAa,GACd,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,EAC9C,WAAwC,EACxC,YAAqB,EACrB,EAAE;IACF,MAAM,cAAc,GAAG,MAAM,UAAU,EAAE,CAAC;IAE1C,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC,WAAW,EACX,qBAAqB,EACrB,CAAC,YAAY,CAAC,CACf,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAChD,WAAW,EACX,iBAAiB,EACjB,CAAC,YAAY,CAAC,CACf,CAAC;IACF,MAAM,qBAAqB,GAAG,MAAM,oBAAoB,CACtD,WAAW,EACX,uBAAuB,EACvB,CAAC,YAAY,CAAC,CACf,CAAC;IACF,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,WAAW,GAAG,KAAK,CAAC;IAExB,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,IAAI,eAAe,KAAK,EAAE,EAAE,CAAC;QACnD,OAAO,CACL,iBAAiB,YAAY,4CAA4C,CAC1E,CAAC;QAEF,IACE,qBAAqB,CAAC,iBAAiB,EAAE;YACzC,cAAc,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAC1C,CAAC;YACD,MAAM,IAAI,KAAK,CACb,OAAO,cAAc,CAAC,OAAO,0BAA0B,qBAAqB,yBAAyB,YAAY,iCAAiC,CACnJ,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,0CAA0C,CAC3C,CAAC;QACF,IAAI,CAAC,OAAO;YACV,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;QAEJ,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,qFAAqF,EACrF,OAAO,CACR,CAAC;QACF,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAEnD,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,EAC/C,WAAwC,EACxC,YAAqB,EACrB,eAAuB,EACvB,EAAE;IACF,MAAM,iBAAiB,GAAG,MAAM,oBAAoB,CAClD,WAAW,EACX,mBAAmB,CACpB,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAChD,WAAW,EACX,iBAAiB,EACjB,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,MAAM,aAAa,GAAG,iBAAiB,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;IAElE,MAAM,WAAW,GAAG,eAAe,GAAG,aAAa,CAAC;IAEpD,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,2DAA2D,WAAW,CAAC,aAAa,CAAC,4CAA4C,CAClI,CAAC;QACF,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"no-pdg.js","sourceRoot":"","sources":["../../../features/deposits/no-pdg.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { mainnet } from 'viem/chains';
|
|
2
|
+
import { callReadMethodSilent, logInfo } from '../../utils/index.js';
|
|
3
|
+
import { getChain } from '../../configs/index.js';
|
|
4
|
+
export const checkPdgIsPaused = async (pdgContract) => {
|
|
5
|
+
const chain = await getChain();
|
|
6
|
+
const isMainnet = chain.id === mainnet.id;
|
|
7
|
+
const isPaused = await callReadMethodSilent(pdgContract, 'isPaused');
|
|
8
|
+
if (isPaused) {
|
|
9
|
+
const message = isMainnet
|
|
10
|
+
? 'PredepositGuarantee contract is paused until Phase 2'
|
|
11
|
+
: 'PredepositGuarantee contract is paused until Mainnet Voting starts';
|
|
12
|
+
logInfo('⚠️ '.repeat(10));
|
|
13
|
+
logInfo(message);
|
|
14
|
+
logInfo('⚠️ '.repeat(10));
|
|
15
|
+
}
|
|
16
|
+
return isPaused;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=pdg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pdg.js","sourceRoot":"","sources":["../../../features/deposits/pdg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,WAAwC,EACxC,EAAE;IACF,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;IAE1C,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAErE,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,SAAS;YACvB,CAAC,CAAC,sDAAsD;YACxD,CAAC,CAAC,oEAAoE,CAAC;QACzE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1B,OAAO,CAAC,OAAO,CAAC,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Address } from 'viem';
|
|
2
|
+
export declare const grantRoleFromImpersonatedAccount: ({ currentAccount, contract, impersonateAccount, role, roleName, }: {
|
|
3
|
+
currentAccount: Address;
|
|
4
|
+
contract: any;
|
|
5
|
+
impersonateAccount: Address;
|
|
6
|
+
role: string;
|
|
7
|
+
roleName: string;
|
|
8
|
+
}) => Promise<void>;
|
|
9
|
+
export declare const callMethodFromImpersonatedAccount: ({ contract, functionName, args, impersonateAccount, }: {
|
|
10
|
+
contract: any;
|
|
11
|
+
functionName: string;
|
|
12
|
+
args: any[];
|
|
13
|
+
impersonateAccount: Address;
|
|
14
|
+
}) => Promise<void>;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { createTestClient, http, publicActions, walletActions, createWalletClient, parseEther, } from 'viem';
|
|
2
|
+
import { logInfo, callReadMethodSilent } from '../../utils/index.js';
|
|
3
|
+
import { getChain, getElUrl } from '../../configs/index.js';
|
|
4
|
+
export const grantRoleFromImpersonatedAccount = async ({ currentAccount, contract, impersonateAccount, role, roleName, }) => {
|
|
5
|
+
const testClient = createTestClient({
|
|
6
|
+
chain: await getChain(),
|
|
7
|
+
mode: 'anvil',
|
|
8
|
+
transport: http(getElUrl()),
|
|
9
|
+
})
|
|
10
|
+
.extend(publicActions)
|
|
11
|
+
.extend(walletActions);
|
|
12
|
+
await testClient.impersonateAccount({
|
|
13
|
+
address: impersonateAccount,
|
|
14
|
+
});
|
|
15
|
+
await testClient.setBalance({
|
|
16
|
+
address: impersonateAccount,
|
|
17
|
+
value: parseEther('10'),
|
|
18
|
+
});
|
|
19
|
+
const walletClient = createWalletClient({
|
|
20
|
+
account: impersonateAccount,
|
|
21
|
+
chain: await getChain(),
|
|
22
|
+
transport: http(getElUrl()),
|
|
23
|
+
});
|
|
24
|
+
logInfo(`Granting ${roleName} to account...`);
|
|
25
|
+
await walletClient.writeContract({
|
|
26
|
+
address: contract.address,
|
|
27
|
+
abi: contract.abi,
|
|
28
|
+
functionName: 'grantRole',
|
|
29
|
+
args: [role, currentAccount],
|
|
30
|
+
});
|
|
31
|
+
const roleMembersAfter = await callReadMethodSilent(contract, 'getRoleMembers', [role]);
|
|
32
|
+
logInfo('Role members after granting: ', roleMembersAfter);
|
|
33
|
+
if (!roleMembersAfter.includes(currentAccount)) {
|
|
34
|
+
logInfo(`Address ${currentAccount} does not have the ${roleName} role`);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
logInfo(`${roleName} granted successfully`);
|
|
38
|
+
};
|
|
39
|
+
export const callMethodFromImpersonatedAccount = async ({ contract, functionName, args, impersonateAccount, }) => {
|
|
40
|
+
const testClient = createTestClient({
|
|
41
|
+
chain: await getChain(),
|
|
42
|
+
mode: 'anvil',
|
|
43
|
+
transport: http(getElUrl()),
|
|
44
|
+
})
|
|
45
|
+
.extend(publicActions)
|
|
46
|
+
.extend(walletActions);
|
|
47
|
+
await testClient.impersonateAccount({
|
|
48
|
+
address: impersonateAccount,
|
|
49
|
+
});
|
|
50
|
+
const walletClient = createWalletClient({
|
|
51
|
+
account: impersonateAccount,
|
|
52
|
+
chain: await getChain(),
|
|
53
|
+
transport: http(getElUrl()),
|
|
54
|
+
});
|
|
55
|
+
logInfo(`Calling ${functionName} with args ${args}...`);
|
|
56
|
+
await walletClient.writeContract({
|
|
57
|
+
address: contract.address,
|
|
58
|
+
abi: contract.abi,
|
|
59
|
+
functionName: functionName,
|
|
60
|
+
args: args,
|
|
61
|
+
});
|
|
62
|
+
logInfo(`${functionName} called successfully`);
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=impersonate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"impersonate.js","sourceRoot":"","sources":["../../../features/dev-tools/impersonate.ts"],"names":[],"mappings":"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"}
|