@lidofinance/lsv-cli 1.0.0-alpha.13 → 1.0.0-alpha.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +243 -120
- package/dist/abi/CLProofVerifier.js +279 -0
- package/dist/abi/CLProofVerifier.js.map +1 -0
- package/dist/abi/Dashboard.js +1060 -942
- package/dist/abi/Dashboard.js.map +1 -1
- package/dist/abi/Delegation.js +1260 -1129
- package/dist/abi/Delegation.js.map +1 -1
- package/dist/abi/LidoLocator.js +311 -270
- package/dist/abi/LidoLocator.js.map +1 -1
- package/dist/abi/PredepositGuarantee.js +1733 -0
- package/dist/abi/PredepositGuarantee.js.map +1 -0
- package/dist/abi/StakingVault.js +723 -528
- package/dist/abi/StakingVault.js.map +1 -1
- package/dist/abi/VaultFactory.js +164 -144
- package/dist/abi/VaultFactory.js.map +1 -1
- package/dist/abi/VaultHubViewer.js +297 -0
- package/dist/abi/VaultHubViewer.js.map +1 -0
- package/dist/abi/index.js +12 -9
- package/dist/abi/index.js.map +1 -1
- package/dist/contracts/clProofVerifier.js +29 -0
- package/dist/contracts/clProofVerifier.js.map +1 -0
- package/dist/contracts/dashboard.js.map +1 -1
- package/dist/contracts/index.js +12 -9
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/locator.js +2 -2
- package/dist/contracts/locator.js.map +1 -1
- package/dist/contracts/pdg.js +17 -0
- package/dist/contracts/pdg.js.map +1 -0
- package/dist/contracts/vault-factory.js +5 -9
- package/dist/contracts/vault-factory.js.map +1 -1
- package/dist/contracts/vault-hub-viewer.js +14 -0
- package/dist/contracts/vault-hub-viewer.js.map +1 -0
- package/dist/features/dashboard-delegation.js +4 -1
- package/dist/features/dashboard-delegation.js.map +1 -1
- package/dist/features/vault-factory.js +6 -10
- package/dist/features/vault-factory.js.map +1 -1
- package/dist/features/voting.js +6 -14
- package/dist/features/voting.js.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/programs/account.js +3 -1
- package/dist/programs/account.js.map +1 -1
- package/dist/programs/dashboard/config.js +65 -0
- package/dist/programs/dashboard/config.js.map +1 -0
- package/dist/programs/dashboard/index.js +4 -0
- package/dist/programs/dashboard/index.js.map +1 -0
- package/dist/programs/dashboard/main.js +12 -0
- package/dist/programs/dashboard/main.js.map +1 -0
- package/dist/programs/dashboard/read.js +25 -0
- package/dist/programs/dashboard/read.js.map +1 -0
- package/dist/programs/{dashboard.js → dashboard/write.js} +78 -136
- package/dist/programs/dashboard/write.js.map +1 -0
- package/dist/programs/delegation/config.js +33 -0
- package/dist/programs/delegation/config.js.map +1 -0
- package/dist/programs/delegation/index.js +4 -0
- package/dist/programs/delegation/index.js.map +1 -0
- package/dist/programs/delegation/main.js +12 -0
- package/dist/programs/delegation/main.js.map +1 -0
- package/dist/programs/delegation/read.js +98 -0
- package/dist/programs/delegation/read.js.map +1 -0
- package/dist/programs/delegation/write.js +327 -0
- package/dist/programs/delegation/write.js.map +1 -0
- package/dist/programs/index.js +7 -4
- package/dist/programs/index.js.map +1 -1
- package/dist/programs/pdg/config.js +2 -0
- package/dist/programs/pdg/config.js.map +1 -0
- package/dist/programs/pdg/index.js +4 -0
- package/dist/programs/pdg/index.js.map +1 -0
- package/dist/programs/pdg/main.js +12 -0
- package/dist/programs/pdg/main.js.map +1 -0
- package/dist/programs/pdg/read.js +7 -0
- package/dist/programs/pdg/read.js.map +1 -0
- package/dist/programs/pdg/write.js +64 -0
- package/dist/programs/pdg/write.js.map +1 -0
- package/dist/programs/predeposit-guarantee.js +73 -0
- package/dist/programs/predeposit-guarantee.js.map +1 -0
- package/dist/programs/vault/config.js +66 -0
- package/dist/programs/vault/config.js.map +1 -0
- package/dist/programs/vault/index.js +4 -0
- package/dist/programs/vault/index.js.map +1 -0
- package/dist/programs/vault/main.js +10 -0
- package/dist/programs/vault/main.js.map +1 -0
- package/dist/programs/vault/read.js +53 -0
- package/dist/programs/vault/read.js.map +1 -0
- package/dist/programs/vault/write.js +123 -0
- package/dist/programs/vault/write.js.map +1 -0
- package/dist/programs/vault-factory/config.js +2 -0
- package/dist/programs/vault-factory/config.js.map +1 -0
- package/dist/programs/vault-factory/index.js +4 -0
- package/dist/programs/vault-factory/index.js.map +1 -0
- package/dist/programs/vault-factory/main.js +12 -0
- package/dist/programs/vault-factory/main.js.map +1 -0
- package/dist/programs/vault-factory/read.js +26 -0
- package/dist/programs/vault-factory/read.js.map +1 -0
- package/dist/programs/{vault-factory.js → vault-factory/write.js} +22 -37
- package/dist/programs/vault-factory/write.js.map +1 -0
- package/dist/programs/vault-hub-viewer.js +52 -0
- package/dist/programs/vault-hub-viewer.js.map +1 -0
- package/dist/programs/vault-hub.js +20 -52
- package/dist/programs/vault-hub.js.map +1 -1
- package/dist/programs/voting.js +11 -33
- package/dist/programs/voting.js.map +1 -1
- package/dist/utils/contract.js +63 -2
- package/dist/utils/contract.js.map +1 -1
- package/dist/utils/get-commands.js +11 -0
- package/dist/utils/get-commands.js.map +1 -0
- package/dist/utils/index.js +5 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/prompts/default.js +17 -0
- package/dist/utils/prompts/default.js.map +1 -0
- package/dist/utils/prompts/delegation-dashboard.js +29 -0
- package/dist/utils/prompts/delegation-dashboard.js.map +1 -0
- package/dist/utils/prompts/index.js +4 -0
- package/dist/utils/prompts/index.js.map +1 -0
- package/dist/utils/prompts/predeposit-guarantee.js +25 -0
- package/dist/utils/prompts/predeposit-guarantee.js.map +1 -0
- package/dist/utils/proof/create-proof.js +62 -0
- package/dist/utils/proof/create-proof.js.map +1 -0
- package/dist/utils/proof/first-validator-gindex.js +26 -0
- package/dist/utils/proof/first-validator-gindex.js.map +1 -0
- package/dist/utils/proof/index.js +4 -0
- package/dist/utils/proof/index.js.map +1 -0
- package/dist/utils/proof/merkle-utils.js +131 -0
- package/dist/utils/proof/merkle-utils.js.map +1 -0
- package/dist/utils/proof/proofs.js +52 -0
- package/dist/utils/proof/proofs.js.map +1 -0
- package/dist/utils/read-programs-by-abi.js +83 -0
- package/dist/utils/read-programs-by-abi.js.map +1 -0
- package/dist/utils/spinner/index.js +2 -0
- package/dist/utils/spinner/index.js.map +1 -0
- package/dist/utils/spinner/spinners.js +16 -0
- package/dist/utils/spinner/spinners.js.map +1 -0
- package/dist/utils/spinner/spinners.json +119 -0
- package/dist/version/index.js +1 -1
- package/package.json +11 -4
- package/dist/programs/dashboard.js.map +0 -1
- package/dist/programs/delegation.js +0 -581
- package/dist/programs/delegation.js.map +0 -1
- package/dist/programs/vault-factory.js.map +0 -1
- package/dist/programs/vault.js +0 -375
- package/dist/programs/vault.js.map +0 -1
package/dist/programs/account.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { formatEther } from 'viem';
|
|
2
2
|
import { program } from '../command/index.js';
|
|
3
3
|
import { getWalletWithAccount, getPublicClient } from '../providers/index.js';
|
|
4
|
-
import { printError } from '../utils/index.js';
|
|
4
|
+
import { printError, showSpinner } from '../utils/index.js';
|
|
5
5
|
const account = program
|
|
6
6
|
.command('account')
|
|
7
7
|
.description('connected account info');
|
|
@@ -13,7 +13,9 @@ account
|
|
|
13
13
|
const publicClient = getPublicClient();
|
|
14
14
|
const { address } = walletClient.account;
|
|
15
15
|
try {
|
|
16
|
+
const hideSpinner = showSpinner();
|
|
16
17
|
const balance = await publicClient.getBalance({ address });
|
|
18
|
+
hideSpinner();
|
|
17
19
|
console.table({
|
|
18
20
|
address,
|
|
19
21
|
balanceWEI: balance,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../programs/account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../programs/account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEzD,MAAM,OAAO,GAAG,OAAO;KACpB,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,wBAAwB,CAAC,CAAC;AAEzC,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,sBAAsB,CAAC;KACnC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,YAAY,GAAG,oBAAoB,EAAE,CAAC;IAC5C,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC;IAEzC,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,WAAW,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3D,WAAW,EAAE,CAAC;QAEd,OAAO,CAAC,KAAK,CAAC;YACZ,OAAO;YACP,UAAU,EAAE,OAAO;YACnB,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC;SACjC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,UAAU,CAAC,GAAG,EAAE,iCAAiC,CAAC,CAAC;IACrD,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
export const readCommandConfig = {
|
|
2
|
+
withdrawableEther: {
|
|
3
|
+
name: 'w-ether',
|
|
4
|
+
description: 'get amount of ether that can be withdrawn from the staking vault',
|
|
5
|
+
},
|
|
6
|
+
vaultSocket: {
|
|
7
|
+
name: 'socket',
|
|
8
|
+
description: 'get vault socket',
|
|
9
|
+
},
|
|
10
|
+
vaultHub: {
|
|
11
|
+
name: 'hub',
|
|
12
|
+
description: 'get vaultHub address',
|
|
13
|
+
},
|
|
14
|
+
valuation: {
|
|
15
|
+
name: 'valuation',
|
|
16
|
+
description: 'get vault valuation',
|
|
17
|
+
},
|
|
18
|
+
treasuryFeeBP: {
|
|
19
|
+
name: 't-fee',
|
|
20
|
+
description: 'get treasury fee in basis points',
|
|
21
|
+
},
|
|
22
|
+
totalMintableShares: {
|
|
23
|
+
name: 'total-mintable-shares',
|
|
24
|
+
description: 'get total of shares that can be minted on the vault',
|
|
25
|
+
},
|
|
26
|
+
supportsInterface: {
|
|
27
|
+
name: 'supports-interface',
|
|
28
|
+
description: 'get supports interface by id',
|
|
29
|
+
},
|
|
30
|
+
stakingVault: {
|
|
31
|
+
name: 'vault',
|
|
32
|
+
description: 'get staking vault address',
|
|
33
|
+
},
|
|
34
|
+
sharesMinted: {
|
|
35
|
+
name: 's-minted',
|
|
36
|
+
description: 'get shares minted',
|
|
37
|
+
},
|
|
38
|
+
shareLimit: {
|
|
39
|
+
name: 's-limit',
|
|
40
|
+
description: 'get share limit',
|
|
41
|
+
},
|
|
42
|
+
reserveRatioBP: {
|
|
43
|
+
name: 'reserve-ratio',
|
|
44
|
+
description: 'get reserve ratio in basis points',
|
|
45
|
+
},
|
|
46
|
+
rebalanceThresholdBP: {
|
|
47
|
+
name: 'r-threshold',
|
|
48
|
+
description: 'get rebalance threshold in basis points',
|
|
49
|
+
},
|
|
50
|
+
projectedNewMintableShares: {
|
|
51
|
+
name: 'projected-new-mintable-shares',
|
|
52
|
+
description: 'get projected new mintable shares',
|
|
53
|
+
arguments: {
|
|
54
|
+
_etherToFund: {
|
|
55
|
+
name: 'etherToFund',
|
|
56
|
+
description: 'ether to fund',
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
hasRole: {
|
|
61
|
+
name: 'has-role',
|
|
62
|
+
description: 'get has role by role and account',
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../programs/dashboard/config.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAA6B;IACzD,iBAAiB,EAAE;QACjB,IAAI,EAAE,SAAS;QACf,WAAW,EACT,kEAAkE;KACrE;IACD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,kBAAkB;KAChC;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,sBAAsB;KACpC;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,qBAAqB;KACnC;IACD,aAAa,EAAE;QACb,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,kCAAkC;KAChD;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE,qDAAqD;KACnE;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,8BAA8B;KAC5C;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,2BAA2B;KACzC;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,mBAAmB;KACjC;IACD,UAAU,EAAE;QACV,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,iBAAiB;KAC/B;IACD,cAAc,EAAE;QACd,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,mCAAmC;KACjD;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,yCAAyC;KACvD;IACD,0BAA0B,EAAE;QAC1B,IAAI,EAAE,+BAA+B;QACrC,WAAW,EAAE,mCAAmC;QAChD,SAAS,EAAE;YACT,YAAY,EAAE;gBACZ,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,eAAe;aAC7B;SACF;KACF;IACD,OAAO,EAAE;QACP,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,kCAAkC;KAChD;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../programs/dashboard/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { program } from '../../command/index.js';
|
|
2
|
+
import { Option } from 'commander';
|
|
3
|
+
import { getCommandsJson } from '../../utils/index.js';
|
|
4
|
+
export const dashboard = program
|
|
5
|
+
.command('dashboard')
|
|
6
|
+
.description('dashboard contract');
|
|
7
|
+
dashboard.addOption(new Option('-cmd2json'));
|
|
8
|
+
dashboard.on('option:-cmd2json', function () {
|
|
9
|
+
console.info(getCommandsJson(dashboard));
|
|
10
|
+
process.exit();
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=main.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../../programs/dashboard/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAExC,MAAM,CAAC,MAAM,SAAS,GAAG,OAAO;KAC7B,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,oBAAoB,CAAC,CAAC;AAErC,SAAS,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AAC7C,SAAS,CAAC,EAAE,CAAC,kBAAkB,EAAE;IAC/B,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;IACzC,OAAO,CAAC,IAAI,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { getDashboardContract } from '../../contracts/index.js';
|
|
2
|
+
import { DashboardAbi } from '../../abi/index.js';
|
|
3
|
+
import { generateReadCommands, textPrompt } from '../../utils/index.js';
|
|
4
|
+
import { getBaseInfo } from '../../features/index.js';
|
|
5
|
+
import { dashboard } from './main.js';
|
|
6
|
+
import { readCommandConfig } from './config.js';
|
|
7
|
+
dashboard
|
|
8
|
+
.command('info')
|
|
9
|
+
.description('get dashboard base info')
|
|
10
|
+
.option('-a, --address <address>', 'dashboard address')
|
|
11
|
+
.action(async ({ address }) => {
|
|
12
|
+
let dashboardAddress = address;
|
|
13
|
+
if (!dashboardAddress) {
|
|
14
|
+
const answer = await textPrompt('Enter dashboard address', 'address');
|
|
15
|
+
dashboardAddress = answer.address;
|
|
16
|
+
if (!dashboardAddress) {
|
|
17
|
+
console.info('Command cancelled');
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
const contract = getDashboardContract(dashboardAddress);
|
|
22
|
+
await getBaseInfo(contract);
|
|
23
|
+
});
|
|
24
|
+
generateReadCommands(DashboardAbi, getDashboardContract, dashboard, readCommandConfig);
|
|
25
|
+
//# sourceMappingURL=read.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read.js","sourceRoot":"","sources":["../../../programs/dashboard/read.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,SAAS;KACN,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,yBAAyB,EAAE,mBAAmB,CAAC;KACtD,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAwB,EAAE,EAAE;IAClD,IAAI,gBAAgB,GAAG,OAAO,CAAC;IAE/B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;QACtE,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC;QAElC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAExD,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEL,oBAAoB,CAClB,YAAY,EACZ,oBAAoB,EACpB,SAAS,EACT,iBAAiB,CAClB,CAAC"}
|
|
@@ -1,109 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { getBaseInfo } from '../features/index.js';
|
|
5
|
-
const dashboard = program
|
|
6
|
-
.command('dashboard')
|
|
7
|
-
.description('dashboard contract');
|
|
8
|
-
dashboard
|
|
9
|
-
.command('info')
|
|
10
|
-
.description('get dashboard base info')
|
|
11
|
-
.argument('<address>', 'dashboard address')
|
|
12
|
-
.action(async (address) => {
|
|
13
|
-
const contract = getDashboardContract(address);
|
|
14
|
-
await getBaseInfo(contract);
|
|
15
|
-
});
|
|
16
|
-
dashboard
|
|
17
|
-
.command('committee')
|
|
18
|
-
.description('voting committee info')
|
|
19
|
-
.argument('<address>', 'dashboard address')
|
|
20
|
-
.action(async (address) => {
|
|
21
|
-
const contract = getDashboardContract(address);
|
|
22
|
-
await callReadMethod(contract, 'votingCommittee');
|
|
23
|
-
});
|
|
24
|
-
dashboard
|
|
25
|
-
.command('vault')
|
|
26
|
-
.description('vault info')
|
|
27
|
-
.argument('<address>', 'dashboard address')
|
|
28
|
-
.action(async (address) => {
|
|
29
|
-
const contract = getDashboardContract(address);
|
|
30
|
-
await callReadMethod(contract, 'vaultSocket');
|
|
31
|
-
});
|
|
32
|
-
dashboard
|
|
33
|
-
.command('s-limit')
|
|
34
|
-
.description('shares limit')
|
|
35
|
-
.argument('<address>', 'dashboard address')
|
|
36
|
-
.action(async (address) => {
|
|
37
|
-
const contract = getDashboardContract(address);
|
|
38
|
-
await callReadMethod(contract, 'shareLimit');
|
|
39
|
-
});
|
|
40
|
-
dashboard
|
|
41
|
-
.command('s-minted')
|
|
42
|
-
.description('shares minted')
|
|
43
|
-
.argument('<address>', 'dashboard address')
|
|
44
|
-
.action(async (address) => {
|
|
45
|
-
const contract = getDashboardContract(address);
|
|
46
|
-
await callReadMethod(contract, 'sharesMinted');
|
|
47
|
-
});
|
|
48
|
-
dashboard
|
|
49
|
-
.command('reserve-ratio')
|
|
50
|
-
.description('vault reserve ratio of the vault')
|
|
51
|
-
.argument('<address>', 'dashboard address')
|
|
52
|
-
.action(async (address) => {
|
|
53
|
-
const contract = getDashboardContract(address);
|
|
54
|
-
await callReadMethod(contract, 'reserveRatioBP');
|
|
55
|
-
});
|
|
56
|
-
dashboard
|
|
57
|
-
.command('t-reserve-ratio')
|
|
58
|
-
.description('threshold reserve ratio of the vault')
|
|
59
|
-
.argument('<address>', 'dashboard address')
|
|
60
|
-
.action(async (address) => {
|
|
61
|
-
const contract = getDashboardContract(address);
|
|
62
|
-
await callReadMethod(contract, 'thresholdReserveRatioBP');
|
|
63
|
-
});
|
|
64
|
-
dashboard
|
|
65
|
-
.command('t-fee')
|
|
66
|
-
.description('treasury fee basis points')
|
|
67
|
-
.argument('<address>', 'dashboard address')
|
|
68
|
-
.action(async (address) => {
|
|
69
|
-
const contract = getDashboardContract(address);
|
|
70
|
-
await callReadMethod(contract, 'treasuryFee');
|
|
71
|
-
});
|
|
72
|
-
dashboard
|
|
73
|
-
.command('valuation')
|
|
74
|
-
.description('valuation of the vault in ether')
|
|
75
|
-
.argument('<address>', 'dashboard address')
|
|
76
|
-
.action(async (address) => {
|
|
77
|
-
const contract = getDashboardContract(address);
|
|
78
|
-
await callReadMethod(contract, 'valuation');
|
|
79
|
-
});
|
|
80
|
-
dashboard
|
|
81
|
-
.command('t-shares')
|
|
82
|
-
.description('total of shares that can be minted on the vault')
|
|
83
|
-
.argument('<address>', 'dashboard address')
|
|
84
|
-
.action(async (address) => {
|
|
85
|
-
const contract = getDashboardContract(address);
|
|
86
|
-
await callReadMethod(contract, 'totalMintableShares');
|
|
87
|
-
});
|
|
88
|
-
dashboard
|
|
89
|
-
.command('get-shares')
|
|
90
|
-
.description('maximum number of shares that can be minted with deposited ether')
|
|
91
|
-
.argument('<address>', 'dashboard address')
|
|
92
|
-
.argument('<ether>', 'amount of ether to be funded')
|
|
93
|
-
.action(async (address, ether) => {
|
|
94
|
-
const contract = getDashboardContract(address);
|
|
95
|
-
await callReadMethod(contract, 'projectedNewMintableShares', [
|
|
96
|
-
BigInt(ether),
|
|
97
|
-
]);
|
|
98
|
-
});
|
|
99
|
-
dashboard
|
|
100
|
-
.command('withdrawable-eth')
|
|
101
|
-
.description('amount of ether that can be withdrawn from the staking vault')
|
|
102
|
-
.argument('<address>', 'dashboard address')
|
|
103
|
-
.action(async (address) => {
|
|
104
|
-
const contract = getDashboardContract(address);
|
|
105
|
-
await callReadMethod(contract, 'withdrawableEther');
|
|
106
|
-
});
|
|
1
|
+
import { getDashboardContract } from '../../contracts/index.js';
|
|
2
|
+
import { callWriteMethodWithReceipt, confirmFund } from '../../utils/index.js';
|
|
3
|
+
import { dashboard } from './main.js';
|
|
107
4
|
// TODO: test without voting
|
|
108
5
|
dashboard
|
|
109
6
|
.command('ownership')
|
|
@@ -112,9 +9,7 @@ dashboard
|
|
|
112
9
|
.argument('<newOwner>', 'address of the new owner')
|
|
113
10
|
.action(async (address, newOwner) => {
|
|
114
11
|
const contract = getDashboardContract(address);
|
|
115
|
-
await
|
|
116
|
-
newOwner,
|
|
117
|
-
]);
|
|
12
|
+
await callWriteMethodWithReceipt(contract, 'transferStakingVaultOwnership', [newOwner]);
|
|
118
13
|
});
|
|
119
14
|
dashboard
|
|
120
15
|
.command('disconnect')
|
|
@@ -122,16 +17,19 @@ dashboard
|
|
|
122
17
|
.argument('<address>', 'dashboard address')
|
|
123
18
|
.action(async (address) => {
|
|
124
19
|
const contract = getDashboardContract(address);
|
|
125
|
-
await
|
|
20
|
+
await callWriteMethodWithReceipt(contract, 'voluntaryDisconnect', []);
|
|
126
21
|
});
|
|
127
22
|
dashboard
|
|
128
23
|
.command('fund')
|
|
129
24
|
.description('funds the staking vault with ether')
|
|
130
|
-
.
|
|
131
|
-
.
|
|
132
|
-
.action(async (address, ether) => {
|
|
133
|
-
const
|
|
134
|
-
|
|
25
|
+
.option('-a, --address <address>', 'dashboard address')
|
|
26
|
+
.option('-e, --ether <ether>', 'amount of ether to be funded (in WEI)')
|
|
27
|
+
.action(async ({ address, ether }) => {
|
|
28
|
+
const { address: dashboard, amount } = await confirmFund(address, ether);
|
|
29
|
+
if (!dashboard || !amount)
|
|
30
|
+
return;
|
|
31
|
+
const contract = getDashboardContract(dashboard);
|
|
32
|
+
await callWriteMethodWithReceipt(contract, 'fund', [], BigInt(amount));
|
|
135
33
|
});
|
|
136
34
|
dashboard
|
|
137
35
|
.command('fund-weth')
|
|
@@ -140,7 +38,9 @@ dashboard
|
|
|
140
38
|
.argument('<wethAmount>', 'amount of weth to be funded')
|
|
141
39
|
.action(async (address, wethAmount) => {
|
|
142
40
|
const contract = getDashboardContract(address);
|
|
143
|
-
await
|
|
41
|
+
await callWriteMethodWithReceipt(contract, 'fundWeth', [
|
|
42
|
+
BigInt(wethAmount),
|
|
43
|
+
]);
|
|
144
44
|
});
|
|
145
45
|
dashboard
|
|
146
46
|
.command('withdraw')
|
|
@@ -150,7 +50,10 @@ dashboard
|
|
|
150
50
|
.argument('<wei>', 'amount of ether to withdraw (in WEI)')
|
|
151
51
|
.action(async (address, recipient, ether) => {
|
|
152
52
|
const contract = getDashboardContract(address);
|
|
153
|
-
await
|
|
53
|
+
await callWriteMethodWithReceipt(contract, 'withdraw', [
|
|
54
|
+
recipient,
|
|
55
|
+
BigInt(ether),
|
|
56
|
+
]);
|
|
154
57
|
});
|
|
155
58
|
dashboard
|
|
156
59
|
.command('withdraw-weth')
|
|
@@ -160,7 +63,10 @@ dashboard
|
|
|
160
63
|
.argument('<ether>', 'amount of ether to withdraw')
|
|
161
64
|
.action(async (address, recipient, ether) => {
|
|
162
65
|
const contract = getDashboardContract(address);
|
|
163
|
-
await
|
|
66
|
+
await callWriteMethodWithReceipt(contract, 'withdrawWETH', [
|
|
67
|
+
recipient,
|
|
68
|
+
BigInt(ether),
|
|
69
|
+
]);
|
|
164
70
|
});
|
|
165
71
|
dashboard
|
|
166
72
|
.command('exit')
|
|
@@ -169,7 +75,24 @@ dashboard
|
|
|
169
75
|
.argument('<validatorPubKey>', 'public key of the validator to exit')
|
|
170
76
|
.action(async (address, validatorPubKey) => {
|
|
171
77
|
const contract = getDashboardContract(address);
|
|
172
|
-
await
|
|
78
|
+
await callWriteMethodWithReceipt(contract, 'requestValidatorExit', [
|
|
79
|
+
validatorPubKey,
|
|
80
|
+
]);
|
|
81
|
+
});
|
|
82
|
+
dashboard
|
|
83
|
+
.command('trigger-validator-withdrawal')
|
|
84
|
+
.description('triggers the withdrawal of a validator from the staking vault')
|
|
85
|
+
.argument('<address>', 'dashboard address')
|
|
86
|
+
.argument('<pubkeys>', 'pubkeys of the validators to withdraw')
|
|
87
|
+
.argument('<amounts>', 'amounts of ether to withdraw')
|
|
88
|
+
.argument('<recipient>', 'address of the recipient')
|
|
89
|
+
.action(async (address, pubkeys, amounts, recipient) => {
|
|
90
|
+
const contract = getDashboardContract(address);
|
|
91
|
+
await callWriteMethodWithReceipt(contract, 'triggerValidatorWithdrawal', [
|
|
92
|
+
pubkeys,
|
|
93
|
+
amounts.map(BigInt),
|
|
94
|
+
recipient,
|
|
95
|
+
]);
|
|
173
96
|
});
|
|
174
97
|
dashboard
|
|
175
98
|
.command('mint-shares')
|
|
@@ -179,7 +102,7 @@ dashboard
|
|
|
179
102
|
.argument('<amountOfShares>', 'amount of shares to mint')
|
|
180
103
|
.action(async (address, recipient, amountOfShares) => {
|
|
181
104
|
const contract = getDashboardContract(address);
|
|
182
|
-
await
|
|
105
|
+
await callWriteMethodWithReceipt(contract, 'mintShares', [
|
|
183
106
|
recipient,
|
|
184
107
|
BigInt(amountOfShares),
|
|
185
108
|
]);
|
|
@@ -192,7 +115,7 @@ dashboard
|
|
|
192
115
|
.argument('<amountOfShares>', 'amount of shares to mint')
|
|
193
116
|
.action(async (address, recipient, amountOfShares) => {
|
|
194
117
|
const contract = getDashboardContract(address);
|
|
195
|
-
await
|
|
118
|
+
await callWriteMethodWithReceipt(contract, 'mintStETH', [
|
|
196
119
|
recipient,
|
|
197
120
|
BigInt(amountOfShares),
|
|
198
121
|
]);
|
|
@@ -205,7 +128,10 @@ dashboard
|
|
|
205
128
|
.argument('<tokens>', 'amount of tokens to mint')
|
|
206
129
|
.action(async (address, recipient, tokens) => {
|
|
207
130
|
const contract = getDashboardContract(address);
|
|
208
|
-
await
|
|
131
|
+
await callWriteMethodWithReceipt(contract, 'mintWstETH', [
|
|
132
|
+
recipient,
|
|
133
|
+
BigInt(tokens),
|
|
134
|
+
]);
|
|
209
135
|
});
|
|
210
136
|
dashboard
|
|
211
137
|
.command('burn-shares')
|
|
@@ -214,7 +140,9 @@ dashboard
|
|
|
214
140
|
.argument('<amountOfShares>', 'amount of shares to burn')
|
|
215
141
|
.action(async (address, amountOfShares) => {
|
|
216
142
|
const contract = getDashboardContract(address);
|
|
217
|
-
await
|
|
143
|
+
await callWriteMethodWithReceipt(contract, 'burnShares', [
|
|
144
|
+
BigInt(amountOfShares),
|
|
145
|
+
]);
|
|
218
146
|
});
|
|
219
147
|
dashboard
|
|
220
148
|
.command('burn-steth')
|
|
@@ -223,7 +151,9 @@ dashboard
|
|
|
223
151
|
.argument('<amountOfShares>', 'amount of shares to burn')
|
|
224
152
|
.action(async (address, amountOfShares) => {
|
|
225
153
|
const contract = getDashboardContract(address);
|
|
226
|
-
await
|
|
154
|
+
await callWriteMethodWithReceipt(contract, 'burnStETH', [
|
|
155
|
+
BigInt(amountOfShares),
|
|
156
|
+
]);
|
|
227
157
|
});
|
|
228
158
|
dashboard
|
|
229
159
|
.command('burn-wsteth')
|
|
@@ -232,7 +162,7 @@ dashboard
|
|
|
232
162
|
.argument('<tokens>', 'amount of wstETH tokens to burn')
|
|
233
163
|
.action(async (address, tokens) => {
|
|
234
164
|
const contract = getDashboardContract(address);
|
|
235
|
-
await
|
|
165
|
+
await callWriteMethodWithReceipt(contract, 'burnWstETH', [BigInt(tokens)]);
|
|
236
166
|
});
|
|
237
167
|
dashboard
|
|
238
168
|
.command('burn-shares-permit')
|
|
@@ -243,7 +173,7 @@ dashboard
|
|
|
243
173
|
.action(async (address, tokens, permitJSON) => {
|
|
244
174
|
const permit = JSON.parse(permitJSON);
|
|
245
175
|
const contract = getDashboardContract(address);
|
|
246
|
-
await
|
|
176
|
+
await callWriteMethodWithReceipt(contract, 'burnSharesWithPermit', [
|
|
247
177
|
BigInt(tokens),
|
|
248
178
|
permit,
|
|
249
179
|
]);
|
|
@@ -257,7 +187,7 @@ dashboard
|
|
|
257
187
|
.action(async (address, tokens, permitJSON) => {
|
|
258
188
|
const permit = JSON.parse(permitJSON);
|
|
259
189
|
const contract = getDashboardContract(address);
|
|
260
|
-
await
|
|
190
|
+
await callWriteMethodWithReceipt(contract, 'burnStETHWithPermit', [
|
|
261
191
|
BigInt(tokens),
|
|
262
192
|
permit,
|
|
263
193
|
]);
|
|
@@ -271,7 +201,7 @@ dashboard
|
|
|
271
201
|
.action(async (address, tokens, permitJSON) => {
|
|
272
202
|
const permit = JSON.parse(permitJSON);
|
|
273
203
|
const contract = getDashboardContract(address);
|
|
274
|
-
await
|
|
204
|
+
await callWriteMethodWithReceipt(contract, 'burnWstETHWithPermit', [
|
|
275
205
|
BigInt(tokens),
|
|
276
206
|
permit,
|
|
277
207
|
]);
|
|
@@ -283,7 +213,9 @@ dashboard
|
|
|
283
213
|
.argument('<ether>', 'amount of ether to rebalance')
|
|
284
214
|
.action(async (address, ether) => {
|
|
285
215
|
const contract = getDashboardContract(address);
|
|
286
|
-
await
|
|
216
|
+
await callWriteMethodWithReceipt(contract, 'rebalanceVault', [
|
|
217
|
+
BigInt(ether),
|
|
218
|
+
]);
|
|
287
219
|
});
|
|
288
220
|
dashboard
|
|
289
221
|
.command('recover-erc20')
|
|
@@ -294,7 +226,7 @@ dashboard
|
|
|
294
226
|
.argument('<amount>', 'amount of ether to recover')
|
|
295
227
|
.action(async (address, token, recipient, amount) => {
|
|
296
228
|
const contract = getDashboardContract(address);
|
|
297
|
-
await
|
|
229
|
+
await callWriteMethodWithReceipt(contract, 'recoverERC20', [
|
|
298
230
|
token,
|
|
299
231
|
recipient,
|
|
300
232
|
BigInt(amount),
|
|
@@ -309,7 +241,7 @@ dashboard
|
|
|
309
241
|
.argument('<recipient>', 'Address of the recovery recipient')
|
|
310
242
|
.action(async (address, token, tokenId, recipient) => {
|
|
311
243
|
const contract = getDashboardContract(address);
|
|
312
|
-
await
|
|
244
|
+
await callWriteMethodWithReceipt(contract, 'recoverERC721', [
|
|
313
245
|
token,
|
|
314
246
|
BigInt(tokenId),
|
|
315
247
|
recipient,
|
|
@@ -321,7 +253,7 @@ dashboard
|
|
|
321
253
|
.argument('<address>', 'dashboard address')
|
|
322
254
|
.action(async (address) => {
|
|
323
255
|
const contract = getDashboardContract(address);
|
|
324
|
-
await
|
|
256
|
+
await callWriteMethodWithReceipt(contract, 'pauseBeaconChainDeposits', []);
|
|
325
257
|
});
|
|
326
258
|
dashboard
|
|
327
259
|
.command('deposit-resume')
|
|
@@ -329,7 +261,7 @@ dashboard
|
|
|
329
261
|
.argument('<address>', 'dashboard address')
|
|
330
262
|
.action(async (address) => {
|
|
331
263
|
const contract = getDashboardContract(address);
|
|
332
|
-
await
|
|
264
|
+
await callWriteMethodWithReceipt(contract, 'resumeBeaconChainDeposits', []);
|
|
333
265
|
});
|
|
334
266
|
dashboard
|
|
335
267
|
.command('role-grant')
|
|
@@ -342,7 +274,7 @@ dashboard
|
|
|
342
274
|
if (!Array.isArray(payload)) {
|
|
343
275
|
throw new Error('the 2nd argument should be an array of role assignments');
|
|
344
276
|
}
|
|
345
|
-
await
|
|
277
|
+
await callWriteMethodWithReceipt(contract, 'grantRoles', [payload]);
|
|
346
278
|
});
|
|
347
279
|
dashboard
|
|
348
280
|
.command('role-revoke')
|
|
@@ -355,6 +287,16 @@ dashboard
|
|
|
355
287
|
if (!Array.isArray(payload)) {
|
|
356
288
|
throw new Error('the 2nd argument should be an array of role assignments');
|
|
357
289
|
}
|
|
358
|
-
await
|
|
290
|
+
await callWriteMethodWithReceipt(contract, 'revokeRoles', [payload]);
|
|
291
|
+
});
|
|
292
|
+
dashboard
|
|
293
|
+
.command('compensate-disproven-predeposit')
|
|
294
|
+
.description('Compensates a disproven predeposit from the Predeposit Guarantee contract.')
|
|
295
|
+
.argument('<address>', 'dashboard address')
|
|
296
|
+
.argument('<pubkey>', 'validator public key')
|
|
297
|
+
.argument('<recipient>', 'address of the recipient')
|
|
298
|
+
.action(async (address, pubkey, recipient) => {
|
|
299
|
+
const contract = getDashboardContract(address);
|
|
300
|
+
await callWriteMethodWithReceipt(contract, 'compensateDisprovenPredepositFromPDG', [pubkey, recipient]);
|
|
359
301
|
});
|
|
360
|
-
//# sourceMappingURL=
|
|
302
|
+
//# sourceMappingURL=write.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../../programs/dashboard/write.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { readCommandConfig as dashboardReadCommandConfig } from '../../programs/dashboard/config.js';
|
|
2
|
+
export const readCommandConfig = {
|
|
3
|
+
...dashboardReadCommandConfig,
|
|
4
|
+
nodeOperatorFeeBP: {
|
|
5
|
+
name: 'no-fee',
|
|
6
|
+
description: 'get node operator fee in basis points',
|
|
7
|
+
},
|
|
8
|
+
nodeOperatorFeeClaimedReport: {
|
|
9
|
+
name: 'no-fee-report',
|
|
10
|
+
description: 'get node operator fee claimed report',
|
|
11
|
+
},
|
|
12
|
+
nodeOperatorUnclaimedFee: {
|
|
13
|
+
name: 'no-unclaimed-fee',
|
|
14
|
+
description: `Returns the accumulated unclaimed node operator fee in ether,
|
|
15
|
+
calculated as: U = (R * F) / T
|
|
16
|
+
where:
|
|
17
|
+
- U is the node operator unclaimed fee;
|
|
18
|
+
- R is the StakingVault rewards accrued since the last node operator fee claim;
|
|
19
|
+
- F is nodeOperatorFeeBP
|
|
20
|
+
- T is the total basis points, 10,000.`,
|
|
21
|
+
},
|
|
22
|
+
curatorUnclaimedFee: {
|
|
23
|
+
name: 'cf-unclaimed',
|
|
24
|
+
description: `Returns the accumulated unclaimed curator fee in ether,
|
|
25
|
+
calculated as: U = (R * F) / T
|
|
26
|
+
where:
|
|
27
|
+
- U is the curator unclaimed fee;
|
|
28
|
+
- R is the StakingVault rewards accrued since the last curator fee claim;
|
|
29
|
+
- F is curatorFeeBP
|
|
30
|
+
- T is the total basis points, 10,000.`,
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../programs/delegation/config.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,IAAI,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE/F,MAAM,CAAC,MAAM,iBAAiB,GAA6B;IACzD,GAAG,0BAA0B;IAC7B,iBAAiB,EAAE;QACjB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,uCAAuC;KACrD;IACD,4BAA4B,EAAE;QAC5B,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,sCAAsC;KACpD;IACD,wBAAwB,EAAE;QACxB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE;;;;;;uDAMsC;KACpD;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE;;;;;;uDAMsC;KACpD;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../programs/delegation/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { program } from '../../command/index.js';
|
|
2
|
+
import { Option } from 'commander';
|
|
3
|
+
import { getCommandsJson } from '../../utils/index.js';
|
|
4
|
+
export const delegation = program
|
|
5
|
+
.command('delegation')
|
|
6
|
+
.description('delegation contract');
|
|
7
|
+
delegation.addOption(new Option('-cmd2json'));
|
|
8
|
+
delegation.on('option:-cmd2json', function () {
|
|
9
|
+
console.info(getCommandsJson(delegation));
|
|
10
|
+
process.exit();
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=main.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../../programs/delegation/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO;KAC9B,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,qBAAqB,CAAC,CAAC;AAEtC,UAAU,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AAC9C,UAAU,CAAC,EAAE,CAAC,kBAAkB,EAAE;IAChC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,IAAI,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC"}
|