@hyperlane-xyz/cli 3.1.9 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/cli.js +2 -2
  2. package/dist/cli.js.map +1 -1
  3. package/dist/logger.d.ts +1 -0
  4. package/dist/logger.d.ts.map +1 -1
  5. package/dist/logger.js +1 -0
  6. package/dist/logger.js.map +1 -1
  7. package/dist/src/commands/chains.js.map +1 -1
  8. package/dist/src/commands/config.d.ts.map +1 -1
  9. package/dist/src/commands/config.js +40 -10
  10. package/dist/src/commands/config.js.map +1 -1
  11. package/dist/src/commands/deploy.js +1 -1
  12. package/dist/src/commands/deploy.js.map +1 -1
  13. package/dist/src/config/artifacts.js.map +1 -1
  14. package/dist/src/config/chain.d.ts.map +1 -1
  15. package/dist/src/config/chain.js +13 -9
  16. package/dist/src/config/chain.js.map +1 -1
  17. package/dist/src/config/chain.test.d.ts +2 -0
  18. package/dist/src/config/chain.test.d.ts.map +1 -0
  19. package/dist/src/config/chain.test.js +13 -0
  20. package/dist/src/config/chain.test.js.map +1 -0
  21. package/dist/src/config/hooks.js +2 -2
  22. package/dist/src/config/hooks.js.map +1 -1
  23. package/dist/src/config/ism.d.ts +57 -0
  24. package/dist/src/config/ism.d.ts.map +1 -0
  25. package/dist/src/config/ism.js +201 -0
  26. package/dist/src/config/ism.js.map +1 -0
  27. package/dist/src/config/multisig.d.ts +1 -10
  28. package/dist/src/config/multisig.d.ts.map +1 -1
  29. package/dist/src/config/multisig.js +19 -21
  30. package/dist/src/config/multisig.js.map +1 -1
  31. package/dist/src/config/warp.js +1 -1
  32. package/dist/src/config/warp.js.map +1 -1
  33. package/dist/src/context.d.ts +16 -0
  34. package/dist/src/context.d.ts.map +1 -1
  35. package/dist/src/deploy/TestRecipientDeployer.js.map +1 -1
  36. package/dist/src/deploy/agent.js.map +1 -1
  37. package/dist/src/deploy/core.d.ts.map +1 -1
  38. package/dist/src/deploy/core.js +64 -26
  39. package/dist/src/deploy/core.js.map +1 -1
  40. package/dist/src/deploy/utils.d.ts +3 -1
  41. package/dist/src/deploy/utils.d.ts.map +1 -1
  42. package/dist/src/deploy/utils.js +9 -0
  43. package/dist/src/deploy/utils.js.map +1 -1
  44. package/dist/src/deploy/warp.d.ts.map +1 -1
  45. package/dist/src/deploy/warp.js +12 -10
  46. package/dist/src/deploy/warp.js.map +1 -1
  47. package/dist/src/send/message.js.map +1 -1
  48. package/dist/src/send/transfer.js.map +1 -1
  49. package/dist/src/status/message.js.map +1 -1
  50. package/dist/src/tests/ism.test.d.ts +2 -0
  51. package/dist/src/tests/ism.test.d.ts.map +1 -0
  52. package/dist/src/tests/ism.test.js +76 -0
  53. package/dist/src/tests/ism.test.js.map +1 -0
  54. package/dist/src/tests/multisig.test.d.ts +2 -0
  55. package/dist/src/tests/multisig.test.d.ts.map +1 -0
  56. package/dist/src/tests/multisig.test.js +34 -0
  57. package/dist/src/tests/multisig.test.js.map +1 -0
  58. package/dist/src/utils/balances.js.map +1 -1
  59. package/dist/src/utils/chains.d.ts +2 -2
  60. package/dist/src/utils/chains.d.ts.map +1 -1
  61. package/dist/src/utils/chains.js +20 -14
  62. package/dist/src/utils/chains.js.map +1 -1
  63. package/dist/src/utils/files.d.ts +1 -0
  64. package/dist/src/utils/files.d.ts.map +1 -1
  65. package/dist/src/utils/files.js +16 -5
  66. package/dist/src/utils/files.js.map +1 -1
  67. package/dist/src/utils/time.d.ts.map +1 -1
  68. package/dist/src/utils/time.js +8 -1
  69. package/dist/src/utils/time.js.map +1 -1
  70. package/dist/src/utils/time.test.d.ts +2 -0
  71. package/dist/src/utils/time.test.d.ts.map +1 -0
  72. package/dist/src/utils/time.test.js +9 -0
  73. package/dist/src/utils/time.test.js.map +1 -0
  74. package/dist/src/version.d.ts +2 -0
  75. package/dist/src/version.d.ts.map +1 -0
  76. package/dist/src/version.js +2 -0
  77. package/dist/src/version.js.map +1 -0
  78. package/examples/chain-config.yaml +6 -0
  79. package/examples/ism-advanced.yaml +33 -0
  80. package/examples/{multisig-ism.yaml → ism.yaml} +0 -8
  81. package/package.json +14 -7
@@ -1 +1 @@
1
- {"version":3,"file":"time.js","sourceRoot":"","sources":["../../../src/utils/time.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,uBAAuB;IACrC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,OAAO,GAAG,GAAG,CAAC,WAAW,EAAE,IACzB,GAAG,CAAC,QAAQ,EAAE,GAAG,CACnB,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,UAAU,EAAE,IAAI,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC;AAChF,CAAC"}
1
+ {"version":3,"file":"time.js","sourceRoot":"","sources":["../../../src/utils/time.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,uBAAuB;IACrC,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CACxB,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IACtC,OAAO,GAAG,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;AACnE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=time.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time.test.d.ts","sourceRoot":"","sources":["../../../src/utils/time.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { expect } from 'chai';
2
+ import { getTimestampForFilename } from './time.js';
3
+ describe('getTimestampForFilename', () => {
4
+ it('structures timestamp correctly', () => {
5
+ const filename = getTimestampForFilename();
6
+ expect(filename).to.match(/\d{4}-\d{2}-\d{2}-\d{2}-\d{2}-\d{2}/);
7
+ });
8
+ });
9
+ //# sourceMappingURL=time.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time.test.js","sourceRoot":"","sources":["../../../src/utils/time.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;QAC3C,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const VERSION = "3.2.0";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const VERSION = '3.2.0';
2
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
@@ -2,6 +2,7 @@
2
2
  # Consists of a map of chain names to metadata
3
3
  # Schema here: https://github.com/hyperlane-xyz/hyperlane-monorepo/blob/main/typescript/sdk/src/metadata/chainMetadataTypes.ts
4
4
  ---
5
+ # You can define a full config for a new chain
5
6
  mychainname:
6
7
  # Required fields:
7
8
  chainId: 1234567890 # Number: Use EIP-155 for EVM chains
@@ -42,3 +43,8 @@ mychainname:
42
43
  estimateBlockTime: 15 # Number: Rough estimate of time per block in seconds
43
44
  # transactionOverrides: # Object: Properties to include when forming transaction requests
44
45
  # Any tx fields are allowed
46
+
47
+ # Alternatively, you can extend a core chain config with only fields to be overridden
48
+ sepolia:
49
+ rpcUrls:
50
+ - http: https://mycustomrpc.com
@@ -0,0 +1,33 @@
1
+ anvil1:
2
+ type: domainRoutingIsm
3
+ owner: '0xa0ee7a142d267c1f36714e4a8f75612f20a79720'
4
+ domains:
5
+ anvil2:
6
+ type: staticAggregationIsm
7
+ modules:
8
+ - type: messageIdMultisigIsm
9
+ threshold: 1
10
+ validators:
11
+ - '0xa0ee7a142d267c1f36714e4a8f75612f20a79720'
12
+ - type: merkleRootMultisigIsm
13
+ threshold: 1
14
+ validators:
15
+ - '0xa0ee7a142d267c1f36714e4a8f75612f20a79720'
16
+ threshold: 1
17
+
18
+ anvil2:
19
+ type: domainRoutingIsm
20
+ owner: '0xa0ee7a142d267c1f36714e4a8f75612f20a79720'
21
+ domains:
22
+ anvil1:
23
+ type: staticAggregationIsm
24
+ modules:
25
+ - type: messageIdMultisigIsm
26
+ threshold: 1
27
+ validators:
28
+ - '0xa0ee7a142d267c1f36714e4a8f75612f20a79720'
29
+ - type: merkleRootMultisigIsm
30
+ threshold: 1
31
+ validators:
32
+ - '0xa0ee7a142d267c1f36714e4a8f75612f20a79720'
33
+ threshold: 1
@@ -1,21 +1,13 @@
1
1
  # A config for a multisig Interchain Security Module (ISM)
2
2
  # Schema: https://github.com/hyperlane-xyz/hyperlane-monorepo/blob/main/typescript/sdk/src/ism/types.ts
3
3
  #
4
- # Valid module types:
5
- # routing
6
- # aggregation
7
- # merkleRootMultisig
8
- # messageIdMultisigIsm
9
4
 
10
- # ism type don't work currently (sets to messageIdMultisigIsm for all)
11
5
  ---
12
6
  anvil1:
13
- type: 'messageIdMultisigIsm'
14
7
  threshold: 1 # Number: Signatures required to approve a message
15
8
  validators: # Array: List of validator addresses
16
9
  - '0xa0ee7a142d267c1f36714e4a8f75612f20a79720'
17
10
  anvil2:
18
- type: 'messageIdMultisigIsm'
19
11
  threshold: 1
20
12
  validators:
21
13
  - '0xa0ee7a142d267c1f36714e4a8f75612f20a79720'
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "@hyperlane-xyz/cli",
3
- "version": "3.1.9",
3
+ "version": "3.2.0",
4
4
  "description": "A command-line utility for common Hyperlane operations",
5
5
  "dependencies": {
6
- "@hyperlane-xyz/sdk": "3.1.9",
6
+ "@hyperlane-xyz/sdk": "3.2.0",
7
+ "@hyperlane-xyz/utils": "3.2.0",
7
8
  "@inquirer/prompts": "^3.0.0",
8
9
  "bignumber.js": "^9.1.1",
9
10
  "chalk": "^5.3.0",
@@ -14,26 +15,32 @@
14
15
  "zod": "^3.21.2"
15
16
  },
16
17
  "devDependencies": {
18
+ "@types/mocha": "^10.0.1",
17
19
  "@types/node": "^18.14.5",
18
20
  "@types/yargs": "^17.0.24",
19
21
  "@typescript-eslint/eslint-plugin": "^5.62.0",
20
22
  "@typescript-eslint/parser": "^5.62.0",
23
+ "chai": "^4.3.6",
21
24
  "eslint": "^8.43.0",
22
25
  "eslint-config-prettier": "^8.8.0",
26
+ "mocha": "^10.2.0",
23
27
  "prettier": "^2.8.8",
24
28
  "typescript": "^5.1.6"
25
29
  },
26
30
  "scripts": {
27
31
  "hyperlane": "node ./dist/cli.js",
28
- "build": "tsc",
29
- "dev": "tsc --watch",
32
+ "build": "yarn version:update && tsc",
33
+ "dev": "yarn version:update && tsc --watch",
30
34
  "clean": "rm -rf ./dist",
31
35
  "lint": "eslint . --ext .ts",
32
- "prettier": "prettier --write ./src ./examples"
36
+ "prettier": "prettier --write ./src ./examples",
37
+ "test": "mocha --config .mocharc.json",
38
+ "version:update": "echo \"export const VERSION = '$npm_package_version';\" > src/version.ts"
33
39
  },
34
40
  "files": [
35
41
  "./dist",
36
- "./examples"
42
+ "./examples",
43
+ "package.json"
37
44
  ],
38
45
  "main": "./dist/index.js",
39
46
  "types": "./dist/index.d.ts",
@@ -55,4 +62,4 @@
55
62
  "Typescript"
56
63
  ],
57
64
  "packageManager": "yarn@4.0.1"
58
- }
65
+ }