@hyperlane-xyz/cli 3.20.0-beta0 → 4.0.0-alpha
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 +1 -1
- package/dist/cli.js +10 -6
- package/dist/cli.js.map +1 -1
- package/dist/src/avs/config.d.ts +11 -0
- package/dist/src/avs/config.d.ts.map +1 -0
- package/dist/src/avs/config.js +10 -0
- package/dist/src/avs/config.js.map +1 -0
- package/dist/src/avs/stakeRegistry.d.ts +21 -0
- package/dist/src/avs/stakeRegistry.d.ts.map +1 -0
- package/dist/src/avs/stakeRegistry.js +64 -0
- package/dist/src/avs/stakeRegistry.js.map +1 -0
- package/dist/src/commands/avs.d.ts +12 -0
- package/dist/src/commands/avs.d.ts.map +1 -0
- package/dist/src/commands/avs.js +64 -0
- package/dist/src/commands/avs.js.map +1 -0
- package/dist/src/commands/config.d.ts.map +1 -1
- package/dist/src/commands/config.js +10 -60
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/core.d.ts +16 -0
- package/dist/src/commands/core.d.ts.map +1 -0
- package/dist/src/commands/core.js +88 -0
- package/dist/src/commands/core.js.map +1 -0
- package/dist/src/commands/deploy.d.ts +13 -0
- package/dist/src/commands/deploy.d.ts.map +1 -1
- package/dist/src/commands/deploy.js +22 -26
- package/dist/src/commands/deploy.js.map +1 -1
- package/dist/src/commands/options.d.ts +11 -5
- package/dist/src/commands/options.d.ts.map +1 -1
- package/dist/src/commands/options.js +45 -11
- package/dist/src/commands/options.js.map +1 -1
- package/dist/src/commands/registry.d.ts +6 -0
- package/dist/src/commands/registry.d.ts.map +1 -0
- package/dist/src/commands/{chains.js → registry.js} +3 -3
- package/dist/src/commands/registry.js.map +1 -0
- package/dist/src/commands/send.d.ts.map +1 -1
- package/dist/src/commands/send.js +2 -42
- package/dist/src/commands/send.js.map +1 -1
- package/dist/src/commands/validator.d.ts +3 -0
- package/dist/src/commands/validator.d.ts.map +1 -0
- package/dist/src/commands/validator.js +34 -0
- package/dist/src/commands/validator.js.map +1 -0
- package/dist/src/commands/{hook.d.ts → warp.d.ts} +6 -2
- package/dist/src/commands/warp.d.ts.map +1 -0
- package/dist/src/commands/warp.js +101 -0
- package/dist/src/commands/warp.js.map +1 -0
- package/dist/src/config/chain.d.ts.map +1 -1
- package/dist/src/config/chain.js +21 -9
- package/dist/src/config/chain.js.map +1 -1
- package/dist/src/config/hooks.d.ts +4528 -90
- package/dist/src/config/hooks.d.ts.map +1 -1
- package/dist/src/config/hooks.js +31 -97
- package/dist/src/config/hooks.js.map +1 -1
- package/dist/src/config/ism.d.ts +58 -61
- package/dist/src/config/ism.d.ts.map +1 -1
- package/dist/src/config/ism.js +40 -128
- package/dist/src/config/ism.js.map +1 -1
- package/dist/src/config/warp.d.ts +3 -2
- package/dist/src/config/warp.d.ts.map +1 -1
- package/dist/src/config/warp.js +112 -49
- package/dist/src/config/warp.js.map +1 -1
- package/dist/src/consts.d.ts +1 -0
- package/dist/src/consts.d.ts.map +1 -1
- package/dist/src/consts.js +1 -0
- package/dist/src/consts.js.map +1 -1
- package/dist/src/context/context.d.ts +1 -1
- package/dist/src/context/context.d.ts.map +1 -1
- package/dist/src/context/context.js +37 -15
- package/dist/src/context/context.js.map +1 -1
- package/dist/src/context/types.d.ts +1 -0
- package/dist/src/context/types.d.ts.map +1 -1
- package/dist/src/deploy/agent.js +1 -1
- package/dist/src/deploy/agent.js.map +1 -1
- package/dist/src/deploy/core.d.ts +4 -8
- package/dist/src/deploy/core.d.ts.map +1 -1
- package/dist/src/deploy/core.js +28 -232
- package/dist/src/deploy/core.js.map +1 -1
- package/dist/src/deploy/dry-run.d.ts +2 -2
- package/dist/src/deploy/dry-run.d.ts.map +1 -1
- package/dist/src/deploy/dry-run.js +1 -0
- package/dist/src/deploy/dry-run.js.map +1 -1
- package/dist/src/deploy/utils.d.ts +4 -7
- package/dist/src/deploy/utils.d.ts.map +1 -1
- package/dist/src/deploy/utils.js +22 -19
- package/dist/src/deploy/utils.js.map +1 -1
- package/dist/src/deploy/warp.d.ts.map +1 -1
- package/dist/src/deploy/warp.js +38 -123
- package/dist/src/deploy/warp.js.map +1 -1
- package/dist/src/send/message.d.ts.map +1 -1
- package/dist/src/send/message.js +15 -29
- package/dist/src/send/message.js.map +1 -1
- package/dist/src/send/transfer.d.ts.map +1 -1
- package/dist/src/send/transfer.js +5 -6
- package/dist/src/send/transfer.js.map +1 -1
- package/dist/src/submit/submit.d.ts +5 -0
- package/dist/src/submit/submit.d.ts.map +1 -0
- package/dist/src/submit/submit.js +30 -0
- package/dist/src/submit/submit.js.map +1 -0
- package/dist/src/submit/types.d.ts +18 -0
- package/dist/src/submit/types.d.ts.map +1 -0
- package/dist/src/submit/types.js +2 -0
- package/dist/src/submit/types.js.map +1 -0
- package/dist/src/tests/deployTestErc20.js +3 -2
- package/dist/src/tests/deployTestErc20.js.map +1 -1
- package/dist/src/tests/hooks.test.js +14 -8
- package/dist/src/tests/hooks.test.js.map +1 -1
- package/dist/src/tests/ism.test.js +1 -1
- package/dist/src/tests/ism.test.js.map +1 -1
- package/dist/src/utils/balances.d.ts +2 -2
- package/dist/src/utils/balances.d.ts.map +1 -1
- package/dist/src/utils/balances.js +8 -3
- package/dist/src/utils/balances.js.map +1 -1
- package/dist/src/utils/chains.d.ts +1 -0
- package/dist/src/utils/chains.d.ts.map +1 -1
- package/dist/src/utils/chains.js +20 -3
- package/dist/src/utils/chains.js.map +1 -1
- package/dist/src/utils/env.d.ts +3 -0
- package/dist/src/utils/env.d.ts.map +1 -1
- package/dist/src/utils/env.js +3 -0
- package/dist/src/utils/env.js.map +1 -1
- package/dist/src/utils/files.d.ts +1 -0
- package/dist/src/utils/files.d.ts.map +1 -1
- package/dist/src/utils/files.js +8 -0
- package/dist/src/utils/files.js.map +1 -1
- package/dist/src/utils/keys.d.ts +5 -3
- package/dist/src/utils/keys.d.ts.map +1 -1
- package/dist/src/utils/keys.js +16 -13
- package/dist/src/utils/keys.js.map +1 -1
- package/dist/src/validator/address.d.ts +10 -0
- package/dist/src/validator/address.d.ts.map +1 -0
- package/dist/src/validator/address.js +107 -0
- package/dist/src/validator/address.js.map +1 -0
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.d.ts.map +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/version.js.map +1 -1
- package/examples/core-config.yaml +19 -0
- package/examples/hooks.yaml +8 -4
- package/examples/warp-route-deployment.yaml +2 -4
- package/package.json +7 -4
- package/dist/src/commands/chains.d.ts +0 -6
- package/dist/src/commands/chains.d.ts.map +0 -1
- package/dist/src/commands/chains.js.map +0 -1
- package/dist/src/commands/hook.d.ts.map +0 -1
- package/dist/src/commands/hook.js +0 -34
- package/dist/src/commands/hook.js.map +0 -1
- package/dist/src/commands/ism.d.ts +0 -12
- package/dist/src/commands/ism.d.ts.map +0 -1
- package/dist/src/commands/ism.js +0 -36
- package/dist/src/commands/ism.js.map +0 -1
- package/dist/src/registry/MergedRegistry.d.ts +0 -35
- package/dist/src/registry/MergedRegistry.d.ts.map +0 -1
- package/dist/src/registry/MergedRegistry.js +0 -83
- package/dist/src/registry/MergedRegistry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/config/hooks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,QAAQ,EACR,SAAS,EACT,
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/config/hooks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,QAAQ,EACR,SAAS,EACT,UAAU,EAEV,QAAQ,EACT,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,OAAO,EAIR,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAMrD,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGrB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA8B,CAAC;AACzD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAa7D;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAalD;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,cAAc,EACvB,aAAa,SAAqB,GACjC,OAAO,CAAC,UAAU,CAAC,CAmDrB;AAED,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,UAAU,CAAC,CAyCnE;AAGD,wBAAsB,eAAe,CACnC,OAAO,EAAE,SAAS,EAAE,GACnB,OAAO,CAAC,UAAU,CAAC,CAwCrB;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,UAAU,CAAC,CAgBrB;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,UAAU,CAAC,CAoBrB"}
|
package/dist/src/config/hooks.js
CHANGED
|
@@ -2,53 +2,17 @@ import { confirm, input, select } from '@inquirer/prompts';
|
|
|
2
2
|
import { BigNumber as BigNumberJs } from 'bignumber.js';
|
|
3
3
|
import { ethers } from 'ethers';
|
|
4
4
|
import { z } from 'zod';
|
|
5
|
-
import {
|
|
5
|
+
import { HookConfigSchema, HookType, } from '@hyperlane-xyz/sdk';
|
|
6
6
|
import { normalizeAddressEvm, objMap, toWei, } from '@hyperlane-xyz/utils';
|
|
7
|
-
import { errorRed,
|
|
7
|
+
import { errorRed, logBlue, logGreen, logRed } from '../logger.js';
|
|
8
8
|
import { runMultiChainSelectionStep } from '../utils/chains.js';
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
type: z.literal(HookType.PROTOCOL_FEE),
|
|
12
|
-
owner: z.string(),
|
|
13
|
-
beneficiary: z.string(),
|
|
14
|
-
maxProtocolFee: z.string(),
|
|
15
|
-
protocolFee: z.string(),
|
|
16
|
-
});
|
|
17
|
-
const MerkleTreeSchema = z.object({
|
|
18
|
-
type: z.literal(HookType.MERKLE_TREE),
|
|
19
|
-
});
|
|
20
|
-
const IGPSchema = z.object({
|
|
21
|
-
type: z.literal(HookType.INTERCHAIN_GAS_PAYMASTER),
|
|
22
|
-
owner: z.string(),
|
|
23
|
-
beneficiary: z.string(),
|
|
24
|
-
overhead: z.record(z.number()),
|
|
25
|
-
gasOracleType: z.record(z.literal(GasOracleContractType.StorageGasOracle)),
|
|
26
|
-
oracleKey: z.string(),
|
|
27
|
-
});
|
|
28
|
-
const RoutingConfigSchema = z.lazy(() => z.object({
|
|
29
|
-
type: z.literal(HookType.ROUTING),
|
|
30
|
-
owner: z.string(),
|
|
31
|
-
domains: z.record(HookConfigSchema),
|
|
32
|
-
}));
|
|
33
|
-
const AggregationConfigSchema = z.lazy(() => z.object({
|
|
34
|
-
type: z.literal(HookType.AGGREGATION),
|
|
35
|
-
hooks: z.array(HookConfigSchema),
|
|
36
|
-
}));
|
|
37
|
-
const HookConfigSchema = z.union([
|
|
38
|
-
ProtocolFeeSchema,
|
|
39
|
-
MerkleTreeSchema,
|
|
40
|
-
IGPSchema,
|
|
41
|
-
RoutingConfigSchema,
|
|
42
|
-
AggregationConfigSchema,
|
|
43
|
-
]);
|
|
9
|
+
import { readYamlOrJson } from '../utils/files.js';
|
|
10
|
+
// TODO: deprecate in favor of CoreConfigSchema
|
|
44
11
|
const HooksConfigSchema = z.object({
|
|
45
|
-
required: HookConfigSchema,
|
|
46
12
|
default: HookConfigSchema,
|
|
13
|
+
required: HookConfigSchema,
|
|
47
14
|
});
|
|
48
15
|
const HooksConfigMapSchema = z.record(HooksConfigSchema);
|
|
49
|
-
export function isValidHookConfigMap(config) {
|
|
50
|
-
return HooksConfigMapSchema.safeParse(config).success;
|
|
51
|
-
}
|
|
52
16
|
export function presetHookConfigs(owner) {
|
|
53
17
|
return {
|
|
54
18
|
required: {
|
|
@@ -69,43 +33,15 @@ export function readHooksConfigMap(filePath) {
|
|
|
69
33
|
logRed(`No hook config found at ${filePath}`);
|
|
70
34
|
return;
|
|
71
35
|
}
|
|
72
|
-
const
|
|
73
|
-
if (!result.success) {
|
|
74
|
-
const firstIssue = result.error.issues[0];
|
|
75
|
-
throw new Error(`Invalid hook config: ${firstIssue.path} => ${firstIssue.message}`);
|
|
76
|
-
}
|
|
77
|
-
const parsedConfig = result.data;
|
|
36
|
+
const parsedConfig = HooksConfigMapSchema.parse(config);
|
|
78
37
|
const hooks = objMap(parsedConfig, (_, config) => config);
|
|
79
38
|
logGreen(`All hook configs in ${filePath} are valid for ${hooks}`);
|
|
80
39
|
return hooks;
|
|
81
40
|
}
|
|
82
|
-
export async function
|
|
83
|
-
logBlue('Creating a new hook config');
|
|
84
|
-
const chains = await runMultiChainSelectionStep(context.chainMetadata);
|
|
85
|
-
const result = {};
|
|
86
|
-
for (const chain of chains) {
|
|
87
|
-
for (const hookRequirements of ['required', 'default']) {
|
|
88
|
-
log(`Setting ${hookRequirements} hook for chain ${chain}`);
|
|
89
|
-
const remotes = chains.filter((c) => c !== chain);
|
|
90
|
-
result[chain] = {
|
|
91
|
-
...result[chain],
|
|
92
|
-
[hookRequirements]: await createHookConfig(context, chain, remotes),
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
if (isValidHookConfigMap(result)) {
|
|
96
|
-
logGreen(`Hook config is valid, writing to file ${outPath}`);
|
|
97
|
-
mergeYamlOrJson(outPath, result);
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
errorRed(`Hook config is invalid, please see https://github.com/hyperlane-xyz/hyperlane-monorepo/blob/main/typescript/cli/examples/hooks.yaml for an example`);
|
|
101
|
-
throw new Error('Invalid hook config');
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
export async function createHookConfig(context, chain, remotes) {
|
|
41
|
+
export async function createHookConfig(context, selectMessage = 'Select hook type') {
|
|
106
42
|
let lastConfig;
|
|
107
43
|
const hookType = await select({
|
|
108
|
-
message:
|
|
44
|
+
message: selectMessage,
|
|
109
45
|
choices: [
|
|
110
46
|
{
|
|
111
47
|
value: HookType.MERKLE_TREE,
|
|
@@ -139,25 +75,24 @@ export async function createHookConfig(context, chain, remotes) {
|
|
|
139
75
|
lastConfig = { type: HookType.MERKLE_TREE };
|
|
140
76
|
}
|
|
141
77
|
else if (hookType === HookType.PROTOCOL_FEE) {
|
|
142
|
-
lastConfig = await createProtocolFeeConfig(
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
lastConfig = await createIGPConfig(remotes);
|
|
78
|
+
lastConfig = await createProtocolFeeConfig();
|
|
79
|
+
// } else if (hookType === HookType.INTERCHAIN_GAS_PAYMASTER) {
|
|
80
|
+
// lastConfig = await createIGPConfig(remotes);
|
|
146
81
|
}
|
|
147
82
|
else if (hookType === HookType.AGGREGATION) {
|
|
148
|
-
lastConfig = await createAggregationConfig(context
|
|
83
|
+
lastConfig = await createAggregationConfig(context);
|
|
149
84
|
}
|
|
150
85
|
else if (hookType === HookType.ROUTING) {
|
|
151
|
-
lastConfig = await createRoutingConfig(context
|
|
86
|
+
lastConfig = await createRoutingConfig(context);
|
|
152
87
|
}
|
|
153
88
|
else {
|
|
154
89
|
throw new Error(`Invalid hook type: ${hookType}`);
|
|
155
90
|
}
|
|
156
91
|
return lastConfig;
|
|
157
92
|
}
|
|
158
|
-
export async function createProtocolFeeConfig(
|
|
93
|
+
export async function createProtocolFeeConfig() {
|
|
159
94
|
const owner = await input({
|
|
160
|
-
message: 'Enter owner address',
|
|
95
|
+
message: 'Enter owner address for protocol fee hook',
|
|
161
96
|
});
|
|
162
97
|
const ownerAddress = normalizeAddressEvm(owner);
|
|
163
98
|
let beneficiary;
|
|
@@ -170,16 +105,16 @@ export async function createProtocolFeeConfig(context, chain) {
|
|
|
170
105
|
}
|
|
171
106
|
else {
|
|
172
107
|
beneficiary = await input({
|
|
173
|
-
message: 'Enter beneficiary address',
|
|
108
|
+
message: 'Enter beneficiary address for protocol fee hook',
|
|
174
109
|
});
|
|
175
110
|
}
|
|
176
111
|
const beneficiaryAddress = normalizeAddressEvm(beneficiary);
|
|
177
112
|
// TODO: input in gwei, wei, etc
|
|
178
113
|
const maxProtocolFee = toWei(await input({
|
|
179
|
-
message: `Enter max protocol fee
|
|
114
|
+
message: `Enter max protocol fee for protocol fee hook`,
|
|
180
115
|
}));
|
|
181
116
|
const protocolFee = toWei(await input({
|
|
182
|
-
message: `Enter protocol fee in
|
|
117
|
+
message: `Enter protocol fee in for protocol fee hook`,
|
|
183
118
|
}));
|
|
184
119
|
if (BigNumberJs(protocolFee).gt(maxProtocolFee)) {
|
|
185
120
|
errorRed('Protocol fee cannot be greater than max protocol fee');
|
|
@@ -193,9 +128,10 @@ export async function createProtocolFeeConfig(context, chain) {
|
|
|
193
128
|
owner: ownerAddress,
|
|
194
129
|
};
|
|
195
130
|
}
|
|
131
|
+
// TODO: make this usable
|
|
196
132
|
export async function createIGPConfig(remotes) {
|
|
197
133
|
const owner = await input({
|
|
198
|
-
message: 'Enter owner address',
|
|
134
|
+
message: 'Enter owner address for IGP hook',
|
|
199
135
|
});
|
|
200
136
|
const ownerAddress = normalizeAddressEvm(owner);
|
|
201
137
|
let beneficiary, oracleKey;
|
|
@@ -209,10 +145,10 @@ export async function createIGPConfig(remotes) {
|
|
|
209
145
|
}
|
|
210
146
|
else {
|
|
211
147
|
beneficiary = await input({
|
|
212
|
-
message: 'Enter beneficiary address',
|
|
148
|
+
message: 'Enter beneficiary address for IGP hook',
|
|
213
149
|
});
|
|
214
150
|
oracleKey = await input({
|
|
215
|
-
message: 'Enter gasOracleKey address',
|
|
151
|
+
message: 'Enter gasOracleKey address for IGP hook',
|
|
216
152
|
});
|
|
217
153
|
}
|
|
218
154
|
const beneficiaryAddress = normalizeAddressEvm(beneficiary);
|
|
@@ -220,7 +156,7 @@ export async function createIGPConfig(remotes) {
|
|
|
220
156
|
const overheads = {};
|
|
221
157
|
for (const chain of remotes) {
|
|
222
158
|
const overhead = parseInt(await input({
|
|
223
|
-
message: `Enter overhead for ${chain} (eg 75000)`,
|
|
159
|
+
message: `Enter overhead for ${chain} (eg 75000) for IGP hook`,
|
|
224
160
|
}));
|
|
225
161
|
overheads[chain] = overhead;
|
|
226
162
|
}
|
|
@@ -230,34 +166,35 @@ export async function createIGPConfig(remotes) {
|
|
|
230
166
|
owner: ownerAddress,
|
|
231
167
|
oracleKey: oracleKeyAddress,
|
|
232
168
|
overhead: overheads,
|
|
233
|
-
|
|
169
|
+
oracleConfig: {},
|
|
234
170
|
};
|
|
235
171
|
}
|
|
236
|
-
export async function createAggregationConfig(context
|
|
172
|
+
export async function createAggregationConfig(context) {
|
|
237
173
|
const hooksNum = parseInt(await input({
|
|
238
174
|
message: 'Enter the number of hooks to aggregate (number)',
|
|
239
175
|
}), 10);
|
|
240
176
|
const hooks = [];
|
|
241
177
|
for (let i = 0; i < hooksNum; i++) {
|
|
242
178
|
logBlue(`Creating hook ${i + 1} of ${hooksNum} ...`);
|
|
243
|
-
hooks.push(await createHookConfig(context
|
|
179
|
+
hooks.push(await createHookConfig(context));
|
|
244
180
|
}
|
|
245
181
|
return {
|
|
246
182
|
type: HookType.AGGREGATION,
|
|
247
183
|
hooks,
|
|
248
184
|
};
|
|
249
185
|
}
|
|
250
|
-
export async function createRoutingConfig(context
|
|
186
|
+
export async function createRoutingConfig(context) {
|
|
251
187
|
const owner = await input({
|
|
252
|
-
message: 'Enter owner address',
|
|
188
|
+
message: 'Enter owner address for routing ISM',
|
|
253
189
|
});
|
|
254
190
|
const ownerAddress = owner;
|
|
191
|
+
const chains = await runMultiChainSelectionStep(context.chainMetadata);
|
|
255
192
|
const domainsMap = {};
|
|
256
|
-
for (const chain of
|
|
193
|
+
for (const chain of chains) {
|
|
257
194
|
await confirm({
|
|
258
195
|
message: `You are about to configure hook for remote chain ${chain}. Continue?`,
|
|
259
196
|
});
|
|
260
|
-
const config = await createHookConfig(context
|
|
197
|
+
const config = await createHookConfig(context);
|
|
261
198
|
domainsMap[chain] = config;
|
|
262
199
|
}
|
|
263
200
|
return {
|
|
@@ -266,7 +203,4 @@ export async function createRoutingConfig(context, origin, remotes) {
|
|
|
266
203
|
domains: domainsMap,
|
|
267
204
|
};
|
|
268
205
|
}
|
|
269
|
-
function nativeTokenAndDecimals(context, chain) {
|
|
270
|
-
return `10^${context.chainMetadata[chain].nativeToken?.decimals ?? '18'} which you cannot exceed (in ${context.chainMetadata[chain].nativeToken?.symbol ?? 'eth'}`;
|
|
271
|
-
}
|
|
272
206
|
//# sourceMappingURL=hooks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/config/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,SAAS,IAAI,WAAW,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/config/hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/src/config/ism.d.ts
CHANGED
|
@@ -1,74 +1,71 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { AggregationIsmConfig, IsmConfig, IsmType, MultisigIsmConfig, TrustedRelayerIsmConfig } from '@hyperlane-xyz/sdk';
|
|
3
3
|
import { CommandContext } from '../context/types.js';
|
|
4
|
-
declare
|
|
5
|
-
type: z.ZodUnion<[z.ZodLiteral<IsmType.MERKLE_ROOT_MULTISIG>, z.ZodLiteral<IsmType.MESSAGE_ID_MULTISIG>]>;
|
|
6
|
-
threshold: z.ZodNumber;
|
|
7
|
-
validators: z.ZodArray<z.ZodString, "many">;
|
|
8
|
-
}, "strip", z.ZodTypeAny, {
|
|
9
|
-
type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
|
|
10
|
-
threshold: number;
|
|
11
|
-
validators: string[];
|
|
12
|
-
}, {
|
|
13
|
-
type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
|
|
14
|
-
threshold: number;
|
|
15
|
-
validators: string[];
|
|
16
|
-
}>, z.ZodType<any, z.ZodTypeDef, any>, z.ZodType<any, z.ZodTypeDef, any>, z.ZodObject<{
|
|
17
|
-
type: z.ZodLiteral<IsmType.TEST_ISM>;
|
|
18
|
-
}, "strip", z.ZodTypeAny, {
|
|
4
|
+
export declare function parseIsmConfig(filePath: string): z.SafeParseReturnType<Record<string, string | {
|
|
19
5
|
type: IsmType.TEST_ISM;
|
|
20
|
-
}
|
|
21
|
-
type: IsmType.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}, "strip", z.ZodTypeAny, {
|
|
26
|
-
type: IsmType.TRUSTED_RELAYER;
|
|
27
|
-
relayer: string;
|
|
28
|
-
}, {
|
|
6
|
+
} | {
|
|
7
|
+
type: IsmType.OP_STACK;
|
|
8
|
+
origin: string;
|
|
9
|
+
nativeBridge: string;
|
|
10
|
+
} | {
|
|
29
11
|
type: IsmType.TRUSTED_RELAYER;
|
|
30
12
|
relayer: string;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
threshold: number;
|
|
13
|
+
} | import("@hyperlane-xyz/sdk").RoutingIsmConfig | AggregationIsmConfig | ({
|
|
14
|
+
owner: string;
|
|
15
|
+
paused: boolean;
|
|
16
|
+
ownerOverrides?: Record<string, string> | undefined;
|
|
17
|
+
} & {
|
|
18
|
+
type: IsmType.PAUSABLE;
|
|
19
|
+
}) | ({
|
|
39
20
|
validators: string[];
|
|
40
|
-
}, {
|
|
41
|
-
type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
|
|
42
21
|
threshold: number;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}, "strip", z.ZodTypeAny, {
|
|
47
|
-
type: IsmType.TEST_ISM;
|
|
48
|
-
}, {
|
|
22
|
+
} & {
|
|
23
|
+
type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
|
|
24
|
+
})>, Record<string, string | {
|
|
49
25
|
type: IsmType.TEST_ISM;
|
|
50
|
-
}
|
|
51
|
-
type:
|
|
52
|
-
|
|
53
|
-
|
|
26
|
+
} | {
|
|
27
|
+
type: IsmType.OP_STACK;
|
|
28
|
+
origin: string;
|
|
29
|
+
nativeBridge: string;
|
|
30
|
+
} | {
|
|
54
31
|
type: IsmType.TRUSTED_RELAYER;
|
|
55
32
|
relayer: string;
|
|
56
|
-
}
|
|
33
|
+
} | import("@hyperlane-xyz/sdk").RoutingIsmConfig | AggregationIsmConfig | ({
|
|
34
|
+
owner: string;
|
|
35
|
+
paused: boolean;
|
|
36
|
+
ownerOverrides?: Record<string, string> | undefined;
|
|
37
|
+
} & {
|
|
38
|
+
type: IsmType.PAUSABLE;
|
|
39
|
+
}) | ({
|
|
40
|
+
validators: string[];
|
|
41
|
+
threshold: number;
|
|
42
|
+
} & {
|
|
43
|
+
type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
|
|
44
|
+
})>>;
|
|
45
|
+
export declare function readIsmConfig(filePath: string): Record<string, string | {
|
|
46
|
+
type: IsmType.TEST_ISM;
|
|
47
|
+
} | {
|
|
48
|
+
type: IsmType.OP_STACK;
|
|
49
|
+
origin: string;
|
|
50
|
+
nativeBridge: string;
|
|
51
|
+
} | {
|
|
57
52
|
type: IsmType.TRUSTED_RELAYER;
|
|
58
53
|
relayer: string;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
export declare function
|
|
72
|
-
export declare function
|
|
73
|
-
export
|
|
54
|
+
} | import("@hyperlane-xyz/sdk").RoutingIsmConfig | AggregationIsmConfig | ({
|
|
55
|
+
owner: string;
|
|
56
|
+
paused: boolean;
|
|
57
|
+
ownerOverrides?: Record<string, string> | undefined;
|
|
58
|
+
} & {
|
|
59
|
+
type: IsmType.PAUSABLE;
|
|
60
|
+
}) | ({
|
|
61
|
+
validators: string[];
|
|
62
|
+
threshold: number;
|
|
63
|
+
} & {
|
|
64
|
+
type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
|
|
65
|
+
})>;
|
|
66
|
+
export declare function createIsmConfig(context: CommandContext): Promise<IsmConfig>;
|
|
67
|
+
export declare function createMultisigConfig(type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG): Promise<MultisigIsmConfig>;
|
|
68
|
+
export declare function createTrustedRelayerConfig(context: CommandContext): Promise<TrustedRelayerIsmConfig>;
|
|
69
|
+
export declare function createAggregationConfig(context: CommandContext): Promise<AggregationIsmConfig>;
|
|
70
|
+
export declare function createRoutingConfig(context: CommandContext, type: IsmType.ROUTING | IsmType.FALLBACK_ROUTING): Promise<IsmConfig>;
|
|
74
71
|
//# sourceMappingURL=ism.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ism.d.ts","sourceRoot":"","sources":["../../../src/config/ism.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,
|
|
1
|
+
{"version":3,"file":"ism.d.ts","sourceRoot":"","sources":["../../../src/config/ism.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,oBAAoB,EAEpB,SAAS,EAET,OAAO,EACP,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AA6BrD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAI9C;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;IAU7C;AAmBD,wBAAsB,eAAe,CACnC,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,SAAS,CAAC,CA6BpB;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,OAAO,CAAC,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,GAC/D,OAAO,CAAC,iBAAiB,CAAC,CAgB5B;AAED,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,uBAAuB,CAAC,CAUlC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,oBAAoB,CAAC,CAwB/B;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,gBAAgB,GAC/C,OAAO,CAAC,SAAS,CAAC,CAyBpB"}
|