@hyperlane-xyz/cli 4.0.0-alpha → 4.0.0-alpha.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.
Files changed (85) hide show
  1. package/dist/cli.js +6 -6
  2. package/dist/cli.js.map +1 -1
  3. package/dist/src/avs/stakeRegistry.js +1 -1
  4. package/dist/src/avs/stakeRegistry.js.map +1 -1
  5. package/dist/src/commands/chains.d.ts +6 -0
  6. package/dist/src/commands/chains.d.ts.map +1 -0
  7. package/dist/src/commands/{registry.js → chains.js} +3 -3
  8. package/dist/src/commands/chains.js.map +1 -0
  9. package/dist/src/commands/config.d.ts.map +1 -1
  10. package/dist/src/commands/config.js +55 -5
  11. package/dist/src/commands/config.js.map +1 -1
  12. package/dist/src/commands/deploy.d.ts +0 -13
  13. package/dist/src/commands/deploy.d.ts.map +1 -1
  14. package/dist/src/commands/deploy.js +17 -15
  15. package/dist/src/commands/deploy.js.map +1 -1
  16. package/dist/src/commands/{warp.d.ts → hook.d.ts} +2 -6
  17. package/dist/src/commands/hook.d.ts.map +1 -0
  18. package/dist/src/commands/hook.js +34 -0
  19. package/dist/src/commands/hook.js.map +1 -0
  20. package/dist/src/commands/ism.d.ts +12 -0
  21. package/dist/src/commands/ism.d.ts.map +1 -0
  22. package/dist/src/commands/ism.js +36 -0
  23. package/dist/src/commands/ism.js.map +1 -0
  24. package/dist/src/commands/options.d.ts +1 -1
  25. package/dist/src/commands/options.d.ts.map +1 -1
  26. package/dist/src/commands/options.js +2 -3
  27. package/dist/src/commands/options.js.map +1 -1
  28. package/dist/src/commands/send.d.ts.map +1 -1
  29. package/dist/src/commands/send.js +42 -2
  30. package/dist/src/commands/send.js.map +1 -1
  31. package/dist/src/config/hooks.d.ts +87 -4525
  32. package/dist/src/config/hooks.d.ts.map +1 -1
  33. package/dist/src/config/hooks.js +97 -31
  34. package/dist/src/config/hooks.js.map +1 -1
  35. package/dist/src/config/ism.d.ts +61 -58
  36. package/dist/src/config/ism.d.ts.map +1 -1
  37. package/dist/src/config/ism.js +128 -40
  38. package/dist/src/config/ism.js.map +1 -1
  39. package/dist/src/config/warp.d.ts +1 -2
  40. package/dist/src/config/warp.d.ts.map +1 -1
  41. package/dist/src/config/warp.js +3 -24
  42. package/dist/src/config/warp.js.map +1 -1
  43. package/dist/src/context/context.d.ts.map +1 -1
  44. package/dist/src/context/context.js +3 -3
  45. package/dist/src/context/context.js.map +1 -1
  46. package/dist/src/deploy/core.d.ts +8 -4
  47. package/dist/src/deploy/core.d.ts.map +1 -1
  48. package/dist/src/deploy/core.js +234 -28
  49. package/dist/src/deploy/core.js.map +1 -1
  50. package/dist/src/deploy/dry-run.d.ts +1 -1
  51. package/dist/src/deploy/dry-run.d.ts.map +1 -1
  52. package/dist/src/deploy/dry-run.js +0 -1
  53. package/dist/src/deploy/dry-run.js.map +1 -1
  54. package/dist/src/deploy/utils.d.ts +0 -4
  55. package/dist/src/deploy/utils.d.ts.map +1 -1
  56. package/dist/src/deploy/utils.js +1 -18
  57. package/dist/src/deploy/utils.js.map +1 -1
  58. package/dist/src/send/message.d.ts.map +1 -1
  59. package/dist/src/send/message.js +24 -11
  60. package/dist/src/send/message.js.map +1 -1
  61. package/dist/src/submit/submit.js +1 -1
  62. package/dist/src/submit/submit.js.map +1 -1
  63. package/dist/src/tests/hooks.test.js +8 -14
  64. package/dist/src/tests/hooks.test.js.map +1 -1
  65. package/dist/src/tests/ism.test.js +1 -1
  66. package/dist/src/tests/ism.test.js.map +1 -1
  67. package/dist/src/utils/keys.js +2 -2
  68. package/dist/src/utils/keys.js.map +1 -1
  69. package/dist/src/validator/address.js +3 -3
  70. package/dist/src/validator/address.js.map +1 -1
  71. package/dist/src/version.d.ts +1 -1
  72. package/dist/src/version.d.ts.map +1 -1
  73. package/dist/src/version.js +1 -1
  74. package/dist/src/version.js.map +1 -1
  75. package/package.json +3 -3
  76. package/dist/src/commands/core.d.ts +0 -16
  77. package/dist/src/commands/core.d.ts.map +0 -1
  78. package/dist/src/commands/core.js +0 -88
  79. package/dist/src/commands/core.js.map +0 -1
  80. package/dist/src/commands/registry.d.ts +0 -6
  81. package/dist/src/commands/registry.d.ts.map +0 -1
  82. package/dist/src/commands/registry.js.map +0 -1
  83. package/dist/src/commands/warp.d.ts.map +0 -1
  84. package/dist/src/commands/warp.js +0 -101
  85. package/dist/src/commands/warp.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,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"}
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,qBAAqB,EACrB,QAAQ,EACR,WAAW,EACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,OAAO,EAIR,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAyCrD,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0EAMpB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAM1D,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA8B,CAAC;AACzD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,GAAG,WAE/C;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAa7D;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,qCAoBlD;AAED,wBAAsB,oBAAoB,CAAC,EACzC,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB,iBAwBA;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,SAAS,EAAE,GACnB,OAAO,CAAC,UAAU,CAAC,CAmDrB;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,UAAU,CAAC,CA+CrB;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,SAAS,EAAE,GACnB,OAAO,CAAC,UAAU,CAAC,CA2CrB;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,SAAS,EAAE,GACnB,OAAO,CAAC,UAAU,CAAC,CAgBrB;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,SAAS,EAAE,GACnB,OAAO,CAAC,UAAU,CAAC,CAmBrB"}
@@ -2,17 +2,53 @@ 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 { HookConfigSchema, HookType, } from '@hyperlane-xyz/sdk';
5
+ import { GasOracleContractType, HookType, } from '@hyperlane-xyz/sdk';
6
6
  import { normalizeAddressEvm, objMap, toWei, } from '@hyperlane-xyz/utils';
7
- import { errorRed, logBlue, logGreen, logRed } from '../logger.js';
7
+ import { errorRed, log, logBlue, logGreen, logRed } from '../logger.js';
8
8
  import { runMultiChainSelectionStep } from '../utils/chains.js';
9
- import { readYamlOrJson } from '../utils/files.js';
10
- // TODO: deprecate in favor of CoreConfigSchema
9
+ import { mergeYamlOrJson, readYamlOrJson } from '../utils/files.js';
10
+ const ProtocolFeeSchema = z.object({
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
+ ]);
11
44
  const HooksConfigSchema = z.object({
12
- default: HookConfigSchema,
13
45
  required: HookConfigSchema,
46
+ default: HookConfigSchema,
14
47
  });
15
48
  const HooksConfigMapSchema = z.record(HooksConfigSchema);
49
+ export function isValidHookConfigMap(config) {
50
+ return HooksConfigMapSchema.safeParse(config).success;
51
+ }
16
52
  export function presetHookConfigs(owner) {
17
53
  return {
18
54
  required: {
@@ -33,15 +69,43 @@ export function readHooksConfigMap(filePath) {
33
69
  logRed(`No hook config found at ${filePath}`);
34
70
  return;
35
71
  }
36
- const parsedConfig = HooksConfigMapSchema.parse(config);
72
+ const result = HooksConfigMapSchema.safeParse(config);
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;
37
78
  const hooks = objMap(parsedConfig, (_, config) => config);
38
79
  logGreen(`All hook configs in ${filePath} are valid for ${hooks}`);
39
80
  return hooks;
40
81
  }
41
- export async function createHookConfig(context, selectMessage = 'Select hook type') {
82
+ export async function createHooksConfigMap({ context, outPath, }) {
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) {
42
106
  let lastConfig;
43
107
  const hookType = await select({
44
- message: selectMessage,
108
+ message: 'Select hook type',
45
109
  choices: [
46
110
  {
47
111
  value: HookType.MERKLE_TREE,
@@ -75,24 +139,25 @@ export async function createHookConfig(context, selectMessage = 'Select hook typ
75
139
  lastConfig = { type: HookType.MERKLE_TREE };
76
140
  }
77
141
  else if (hookType === HookType.PROTOCOL_FEE) {
78
- lastConfig = await createProtocolFeeConfig();
79
- // } else if (hookType === HookType.INTERCHAIN_GAS_PAYMASTER) {
80
- // lastConfig = await createIGPConfig(remotes);
142
+ lastConfig = await createProtocolFeeConfig(context, chain);
143
+ }
144
+ else if (hookType === HookType.INTERCHAIN_GAS_PAYMASTER) {
145
+ lastConfig = await createIGPConfig(remotes);
81
146
  }
82
147
  else if (hookType === HookType.AGGREGATION) {
83
- lastConfig = await createAggregationConfig(context);
148
+ lastConfig = await createAggregationConfig(context, chain, remotes);
84
149
  }
85
150
  else if (hookType === HookType.ROUTING) {
86
- lastConfig = await createRoutingConfig(context);
151
+ lastConfig = await createRoutingConfig(context, chain, remotes);
87
152
  }
88
153
  else {
89
154
  throw new Error(`Invalid hook type: ${hookType}`);
90
155
  }
91
156
  return lastConfig;
92
157
  }
93
- export async function createProtocolFeeConfig() {
158
+ export async function createProtocolFeeConfig(context, chain) {
94
159
  const owner = await input({
95
- message: 'Enter owner address for protocol fee hook',
160
+ message: 'Enter owner address',
96
161
  });
97
162
  const ownerAddress = normalizeAddressEvm(owner);
98
163
  let beneficiary;
@@ -105,16 +170,16 @@ export async function createProtocolFeeConfig() {
105
170
  }
106
171
  else {
107
172
  beneficiary = await input({
108
- message: 'Enter beneficiary address for protocol fee hook',
173
+ message: 'Enter beneficiary address',
109
174
  });
110
175
  }
111
176
  const beneficiaryAddress = normalizeAddressEvm(beneficiary);
112
177
  // TODO: input in gwei, wei, etc
113
178
  const maxProtocolFee = toWei(await input({
114
- message: `Enter max protocol fee for protocol fee hook`,
179
+ message: `Enter max protocol fee ${nativeTokenAndDecimals(context, chain)} e.g. 1.0)`,
115
180
  }));
116
181
  const protocolFee = toWei(await input({
117
- message: `Enter protocol fee in for protocol fee hook`,
182
+ message: `Enter protocol fee in ${nativeTokenAndDecimals(context, chain)} e.g. 0.01)`,
118
183
  }));
119
184
  if (BigNumberJs(protocolFee).gt(maxProtocolFee)) {
120
185
  errorRed('Protocol fee cannot be greater than max protocol fee');
@@ -128,10 +193,9 @@ export async function createProtocolFeeConfig() {
128
193
  owner: ownerAddress,
129
194
  };
130
195
  }
131
- // TODO: make this usable
132
196
  export async function createIGPConfig(remotes) {
133
197
  const owner = await input({
134
- message: 'Enter owner address for IGP hook',
198
+ message: 'Enter owner address',
135
199
  });
136
200
  const ownerAddress = normalizeAddressEvm(owner);
137
201
  let beneficiary, oracleKey;
@@ -145,10 +209,10 @@ export async function createIGPConfig(remotes) {
145
209
  }
146
210
  else {
147
211
  beneficiary = await input({
148
- message: 'Enter beneficiary address for IGP hook',
212
+ message: 'Enter beneficiary address',
149
213
  });
150
214
  oracleKey = await input({
151
- message: 'Enter gasOracleKey address for IGP hook',
215
+ message: 'Enter gasOracleKey address',
152
216
  });
153
217
  }
154
218
  const beneficiaryAddress = normalizeAddressEvm(beneficiary);
@@ -156,7 +220,7 @@ export async function createIGPConfig(remotes) {
156
220
  const overheads = {};
157
221
  for (const chain of remotes) {
158
222
  const overhead = parseInt(await input({
159
- message: `Enter overhead for ${chain} (eg 75000) for IGP hook`,
223
+ message: `Enter overhead for ${chain} (eg 75000)`,
160
224
  }));
161
225
  overheads[chain] = overhead;
162
226
  }
@@ -166,35 +230,34 @@ export async function createIGPConfig(remotes) {
166
230
  owner: ownerAddress,
167
231
  oracleKey: oracleKeyAddress,
168
232
  overhead: overheads,
169
- oracleConfig: {},
233
+ gasOracleType: objMap(overheads, () => GasOracleContractType.StorageGasOracle),
170
234
  };
171
235
  }
172
- export async function createAggregationConfig(context) {
236
+ export async function createAggregationConfig(context, chain, remotes) {
173
237
  const hooksNum = parseInt(await input({
174
238
  message: 'Enter the number of hooks to aggregate (number)',
175
239
  }), 10);
176
240
  const hooks = [];
177
241
  for (let i = 0; i < hooksNum; i++) {
178
242
  logBlue(`Creating hook ${i + 1} of ${hooksNum} ...`);
179
- hooks.push(await createHookConfig(context));
243
+ hooks.push(await createHookConfig(context, chain, remotes));
180
244
  }
181
245
  return {
182
246
  type: HookType.AGGREGATION,
183
247
  hooks,
184
248
  };
185
249
  }
186
- export async function createRoutingConfig(context) {
250
+ export async function createRoutingConfig(context, origin, remotes) {
187
251
  const owner = await input({
188
- message: 'Enter owner address for routing ISM',
252
+ message: 'Enter owner address',
189
253
  });
190
254
  const ownerAddress = owner;
191
- const chains = await runMultiChainSelectionStep(context.chainMetadata);
192
255
  const domainsMap = {};
193
- for (const chain of chains) {
256
+ for (const chain of remotes) {
194
257
  await confirm({
195
258
  message: `You are about to configure hook for remote chain ${chain}. Continue?`,
196
259
  });
197
- const config = await createHookConfig(context);
260
+ const config = await createHookConfig(context, origin, remotes);
198
261
  domainsMap[chain] = config;
199
262
  }
200
263
  return {
@@ -203,4 +266,7 @@ export async function createRoutingConfig(context) {
203
266
  domains: domainsMap,
204
267
  };
205
268
  }
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
+ }
206
272
  //# sourceMappingURL=hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/config/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/config/hooks.ts"],"names":[],"mappings":"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"}
@@ -1,71 +1,74 @@
1
1
  import { z } from 'zod';
2
- import { AggregationIsmConfig, IsmConfig, IsmType, MultisigIsmConfig, TrustedRelayerIsmConfig } from '@hyperlane-xyz/sdk';
2
+ import { ChainName, IsmType } from '@hyperlane-xyz/sdk';
3
3
  import { CommandContext } from '../context/types.js';
4
- export declare function parseIsmConfig(filePath: string): z.SafeParseReturnType<Record<string, string | {
5
- type: IsmType.TEST_ISM;
6
- } | {
7
- type: IsmType.OP_STACK;
8
- origin: string;
9
- nativeBridge: string;
10
- } | {
11
- type: IsmType.TRUSTED_RELAYER;
12
- relayer: string;
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
- }) | ({
20
- validators: string[];
4
+ declare const IsmConfigSchema: z.ZodUnion<[z.ZodObject<{
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;
21
10
  threshold: number;
22
- } & {
11
+ validators: string[];
12
+ }, {
23
13
  type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
24
- })>, Record<string, string | {
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, {
19
+ type: IsmType.TEST_ISM;
20
+ }, {
25
21
  type: IsmType.TEST_ISM;
26
- } | {
27
- type: IsmType.OP_STACK;
28
- origin: string;
29
- nativeBridge: string;
30
- } | {
22
+ }>, z.ZodObject<{
23
+ type: z.ZodLiteral<IsmType.TRUSTED_RELAYER>;
24
+ relayer: z.ZodString;
25
+ }, "strip", z.ZodTypeAny, {
31
26
  type: IsmType.TRUSTED_RELAYER;
32
27
  relayer: string;
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[];
28
+ }, {
29
+ type: IsmType.TRUSTED_RELAYER;
30
+ relayer: string;
31
+ }>]>;
32
+ declare const IsmConfigMapSchema: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
33
+ type: z.ZodUnion<[z.ZodLiteral<IsmType.MERKLE_ROOT_MULTISIG>, z.ZodLiteral<IsmType.MESSAGE_ID_MULTISIG>]>;
34
+ threshold: z.ZodNumber;
35
+ validators: z.ZodArray<z.ZodString, "many">;
36
+ }, "strip", z.ZodTypeAny, {
37
+ type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
41
38
  threshold: number;
42
- } & {
39
+ validators: string[];
40
+ }, {
43
41
  type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG;
44
- })>>;
45
- export declare function readIsmConfig(filePath: string): Record<string, string | {
42
+ threshold: number;
43
+ validators: string[];
44
+ }>, z.ZodType<any, z.ZodTypeDef, any>, z.ZodType<any, z.ZodTypeDef, any>, z.ZodObject<{
45
+ type: z.ZodLiteral<IsmType.TEST_ISM>;
46
+ }, "strip", z.ZodTypeAny, {
47
+ type: IsmType.TEST_ISM;
48
+ }, {
46
49
  type: IsmType.TEST_ISM;
47
- } | {
48
- type: IsmType.OP_STACK;
49
- origin: string;
50
- nativeBridge: string;
51
- } | {
50
+ }>, z.ZodObject<{
51
+ type: z.ZodLiteral<IsmType.TRUSTED_RELAYER>;
52
+ relayer: z.ZodString;
53
+ }, "strip", z.ZodTypeAny, {
52
54
  type: IsmType.TRUSTED_RELAYER;
53
55
  relayer: string;
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>;
56
+ }, {
57
+ type: IsmType.TRUSTED_RELAYER;
58
+ relayer: string;
59
+ }>]>>, Record<string, any>, Record<string, any>>;
60
+ export type ZodIsmConfig = z.infer<typeof IsmConfigSchema>;
61
+ export type ZodIsmConfigMap = z.infer<typeof IsmConfigMapSchema>;
62
+ export declare function parseIsmConfig(filePath: string): z.SafeParseReturnType<Record<string, any>, Record<string, any>>;
63
+ export declare function readIsmConfig(filePath: string): Record<string, any>;
64
+ export declare function isValildIsmConfig(config: any): boolean;
65
+ export declare function createIsmConfigMap({ context, outPath, }: {
66
+ context: CommandContext;
67
+ outPath: string;
68
+ }): Promise<void>;
69
+ export declare function createIsmConfig(remote: ChainName, origins: ChainName[]): Promise<ZodIsmConfig>;
70
+ export declare function createMultisigConfig(type: IsmType.MERKLE_ROOT_MULTISIG | IsmType.MESSAGE_ID_MULTISIG): Promise<ZodIsmConfig>;
71
+ export declare function createAggregationConfig(remote: ChainName, chains: ChainName[]): Promise<ZodIsmConfig>;
72
+ export declare function createRoutingConfig(type: IsmType.ROUTING | IsmType.FALLBACK_ROUTING, remote: ChainName, chains: ChainName[]): Promise<ZodIsmConfig>;
73
+ export {};
71
74
  //# 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,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"}
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,EAAY,SAAS,EAAE,OAAO,EAAS,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AA2DrD,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMnB,CAAC;AACH,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;gDAgBvB,CAAC;AACF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAC3D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEjE,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,mEAI9C;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,uBAU7C;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,WAE5C;AAED,wBAAsB,kBAAkB,CAAC,EACvC,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB,iBAgCA;AAED,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,SAAS,EAAE,GACnB,OAAO,CAAC,YAAY,CAAC,CA6DvB;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,OAAO,CAAC,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,GAC/D,OAAO,CAAC,YAAY,CAAC,CAevB;AAYD,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,SAAS,EAAE,GAClB,OAAO,CAAC,YAAY,CAAC,CAwBvB;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,gBAAgB,EAChD,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,SAAS,EAAE,GAClB,OAAO,CAAC,YAAY,CAAC,CAoBvB"}