@hyperlane-xyz/sdk 8.8.1 → 8.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/block-explorer/etherscan.d.ts +41 -0
- package/dist/block-explorer/etherscan.d.ts.map +1 -0
- package/dist/block-explorer/etherscan.js +53 -0
- package/dist/block-explorer/etherscan.js.map +1 -0
- package/dist/ccip/HyperlaneCCIPDeployer.d.ts +18 -0
- package/dist/ccip/HyperlaneCCIPDeployer.d.ts.map +1 -0
- package/dist/ccip/HyperlaneCCIPDeployer.js +122 -0
- package/dist/ccip/HyperlaneCCIPDeployer.js.map +1 -0
- package/dist/ccip/consts.d.ts +24 -0
- package/dist/ccip/consts.d.ts.map +1 -0
- package/dist/ccip/consts.js +691 -0
- package/dist/ccip/consts.js.map +1 -0
- package/dist/ccip/utils.d.ts +46 -0
- package/dist/ccip/utils.d.ts.map +1 -0
- package/dist/ccip/utils.js +95 -0
- package/dist/ccip/utils.js.map +1 -0
- package/dist/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +27 -9
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/contracts/contracts.d.ts +2 -2
- package/dist/contracts/contracts.d.ts.map +1 -1
- package/dist/contracts/contracts.js +4 -13
- package/dist/contracts/contracts.js.map +1 -1
- package/dist/core/HyperlaneRelayer.d.ts +43 -3
- package/dist/core/HyperlaneRelayer.d.ts.map +1 -1
- package/dist/core/types.d.ts +3558 -2040
- package/dist/core/types.d.ts.map +1 -1
- package/dist/deploy/proxy.d.ts.map +1 -1
- package/dist/deploy/proxy.js +4 -0
- package/dist/deploy/proxy.js.map +1 -1
- package/dist/deploy/verify/utils.d.ts.map +1 -1
- package/dist/deploy/verify/utils.js +3 -9
- package/dist/deploy/verify/utils.js.map +1 -1
- package/dist/hook/EvmHookModule.d.ts +12 -4
- package/dist/hook/EvmHookModule.d.ts.map +1 -1
- package/dist/hook/EvmHookModule.hardhat-test.js +2 -106
- package/dist/hook/EvmHookModule.hardhat-test.js.map +1 -1
- package/dist/hook/EvmHookModule.js +38 -10
- package/dist/hook/EvmHookModule.js.map +1 -1
- package/dist/hook/EvmHookReader.d.ts +7 -1
- package/dist/hook/EvmHookReader.d.ts.map +1 -1
- package/dist/hook/EvmHookReader.js +69 -4
- package/dist/hook/EvmHookReader.js.map +1 -1
- package/dist/hook/EvmHookReader.test.js +50 -1
- package/dist/hook/EvmHookReader.test.js.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.d.ts +4 -2
- package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.js +34 -5
- package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
- package/dist/hook/contracts.d.ts +4 -1
- package/dist/hook/contracts.d.ts.map +1 -1
- package/dist/hook/contracts.js +4 -1
- package/dist/hook/contracts.js.map +1 -1
- package/dist/hook/types.d.ts +2012 -3
- package/dist/hook/types.d.ts.map +1 -1
- package/dist/hook/types.js +28 -0
- package/dist/hook/types.js.map +1 -1
- package/dist/index.d.ts +11 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -4
- package/dist/index.js.map +1 -1
- package/dist/ism/EvmIsmModule.d.ts +4 -2
- package/dist/ism/EvmIsmModule.d.ts.map +1 -1
- package/dist/ism/EvmIsmModule.hardhat-test.js +10 -71
- package/dist/ism/EvmIsmModule.hardhat-test.js.map +1 -1
- package/dist/ism/EvmIsmModule.js +4 -4
- package/dist/ism/EvmIsmModule.js.map +1 -1
- package/dist/ism/EvmIsmReader.d.ts +1 -0
- package/dist/ism/EvmIsmReader.d.ts.map +1 -1
- package/dist/ism/EvmIsmReader.js +45 -7
- package/dist/ism/EvmIsmReader.js.map +1 -1
- package/dist/ism/EvmIsmReader.test.js +4 -1
- package/dist/ism/EvmIsmReader.test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.d.ts +9 -4
- package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +15 -0
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.js +43 -4
- package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
- package/dist/ism/metadata/builder.d.ts.map +1 -1
- package/dist/ism/metadata/builder.js +1 -0
- package/dist/ism/metadata/builder.js.map +1 -1
- package/dist/ism/metadata/routing.d.ts.map +1 -1
- package/dist/ism/metadata/routing.js +8 -2
- package/dist/ism/metadata/routing.js.map +1 -1
- package/dist/ism/types.d.ts +34 -5
- package/dist/ism/types.d.ts.map +1 -1
- package/dist/ism/types.js +15 -0
- package/dist/ism/types.js.map +1 -1
- package/dist/ism/utils.d.ts.map +1 -1
- package/dist/ism/utils.js +30 -2
- package/dist/ism/utils.js.map +1 -1
- package/dist/metadata/agentConfig.d.ts +276 -276
- package/dist/metadata/deploymentArtifacts.d.ts +2 -2
- package/dist/router/types.d.ts +129 -9
- package/dist/router/types.d.ts.map +1 -1
- package/dist/test/testUtils.d.ts +8 -0
- package/dist/test/testUtils.d.ts.map +1 -1
- package/dist/test/testUtils.js +191 -1
- package/dist/test/testUtils.js.map +1 -1
- package/dist/token/EvmERC20WarpModule.d.ts +4 -1
- package/dist/token/EvmERC20WarpModule.d.ts.map +1 -1
- package/dist/token/EvmERC20WarpModule.js +12 -8
- package/dist/token/EvmERC20WarpModule.js.map +1 -1
- package/dist/token/EvmERC20WarpRouteReader.d.ts +4 -3
- package/dist/token/EvmERC20WarpRouteReader.d.ts.map +1 -1
- package/dist/token/EvmERC20WarpRouteReader.hardhat-test.js +72 -3
- package/dist/token/EvmERC20WarpRouteReader.hardhat-test.js.map +1 -1
- package/dist/token/EvmERC20WarpRouteReader.js +84 -15
- package/dist/token/EvmERC20WarpRouteReader.js.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.d.ts +49 -15
- package/dist/token/adapters/EvmTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.js +152 -42
- package/dist/token/adapters/EvmTokenAdapter.js.map +1 -1
- package/dist/token/adapters/ITokenAdapter.d.ts +19 -0
- package/dist/token/adapters/ITokenAdapter.d.ts.map +1 -1
- package/dist/token/checker.d.ts +4 -1
- package/dist/token/checker.d.ts.map +1 -1
- package/dist/token/checker.js +33 -5
- package/dist/token/checker.js.map +1 -1
- package/dist/token/config.d.ts +1 -0
- package/dist/token/config.d.ts.map +1 -1
- package/dist/token/config.js +1 -0
- package/dist/token/config.js.map +1 -1
- package/dist/token/configUtils.d.ts +10 -0
- package/dist/token/configUtils.d.ts.map +1 -0
- package/dist/token/configUtils.js +48 -0
- package/dist/token/configUtils.js.map +1 -0
- package/dist/token/deploy.d.ts.map +1 -1
- package/dist/token/deploy.hardhat-test.js +69 -6
- package/dist/token/deploy.hardhat-test.js.map +1 -1
- package/dist/token/deploy.js +6 -4
- package/dist/token/deploy.js.map +1 -1
- package/dist/token/types.d.ts +1333 -220
- package/dist/token/types.d.ts.map +1 -1
- package/dist/token/types.js +117 -2
- package/dist/token/types.js.map +1 -1
- package/dist/token/xerc20.d.ts +13 -0
- package/dist/token/xerc20.d.ts.map +1 -0
- package/dist/token/xerc20.js +174 -0
- package/dist/token/xerc20.js.map +1 -0
- package/dist/warp/types.d.ts +14 -14
- package/package.json +3 -3
|
@@ -36,7 +36,8 @@ export class RoutingMetadataBuilder {
|
|
|
36
36
|
export class DefaultFallbackRoutingMetadataBuilder extends RoutingMetadataBuilder {
|
|
37
37
|
async build(context, maxDepth = 10) {
|
|
38
38
|
const originChain = this.baseMetadataBuilder.multiProvider.getChainName(context.message.parsed.origin);
|
|
39
|
-
const isRouted = context.ism.type === IsmType.ICA_ROUTING
|
|
39
|
+
const isRouted = context.ism.type === IsmType.ICA_ROUTING ||
|
|
40
|
+
context.ism.type === IsmType.AMOUNT_ROUTING
|
|
40
41
|
? false
|
|
41
42
|
: !!context.ism.domains[originChain];
|
|
42
43
|
// If the chain is routed then we are 100% sure that the ism is not an ICA ISM
|
|
@@ -47,7 +48,8 @@ export class DefaultFallbackRoutingMetadataBuilder extends RoutingMetadataBuilde
|
|
|
47
48
|
context, maxDepth);
|
|
48
49
|
}
|
|
49
50
|
if (context.ism.type !== IsmType.FALLBACK_ROUTING &&
|
|
50
|
-
context.ism.type !== IsmType.ICA_ROUTING
|
|
51
|
+
context.ism.type !== IsmType.ICA_ROUTING &&
|
|
52
|
+
context.ism.type !== IsmType.AMOUNT_ROUTING) {
|
|
51
53
|
throw new Error(`Origin domain ${originChain} is not enrolled in DomainRoutingIsm`);
|
|
52
54
|
}
|
|
53
55
|
const destinationProvider = this.baseMetadataBuilder.multiProvider.getProvider(context.message.parsed.destination);
|
|
@@ -56,6 +58,10 @@ export class DefaultFallbackRoutingMetadataBuilder extends RoutingMetadataBuilde
|
|
|
56
58
|
const icaFallbackRoutingIsm = InterchainAccountIsm__factory.connect(context.ism.address, destinationProvider);
|
|
57
59
|
ismAddress = await icaFallbackRoutingIsm.route(context.message.message);
|
|
58
60
|
}
|
|
61
|
+
else if (context.ism.type === IsmType.AMOUNT_ROUTING) {
|
|
62
|
+
const amountFallbackRoutingIsm = DefaultFallbackRoutingIsm__factory.connect(context.ism.address, destinationProvider);
|
|
63
|
+
ismAddress = await amountFallbackRoutingIsm.route(context.message.message);
|
|
64
|
+
}
|
|
59
65
|
else {
|
|
60
66
|
const fallbackIsm = DefaultFallbackRoutingIsm__factory.connect(context.ism.address, destinationProvider);
|
|
61
67
|
ismAddress = await fallbackIsm.module(context.message.parsed.origin);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routing.js","sourceRoot":"","sources":["../../../src/ism/metadata/routing.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kCAAkC,EAClC,6BAA6B,GAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAwB,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGpE,OAAO,EAAoB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAA0B,OAAO,EAAoB,MAAM,aAAa,CAAC;AAGhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAahD,MAAM,OAAO,sBAAsB;IACX;IAAtB,YAAsB,mBAAwC;QAAxC,wBAAmB,GAAnB,mBAAmB,CAAqB;IAAG,CAAC;IAE3D,KAAK,CAAC,KAAK,CAChB,OAA6D,EAC7D,QAAQ,GAAG,EAAE;QAEb,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,YAAY,CACrE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAC9B,CAAC;QACF,MAAM,aAAa,GAAG;YACpB,GAAG,OAAO;YACV,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAqB;SAC1D,CAAC;QAEF,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,CAAC,MAAM,CACX,QAAgB,EAChB,OAA6D;QAE7D,yEAAyE;QACzE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,yBAAyB,CAAC,CAAC;QACtE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEpE,MAAM,cAAc,GAClB,OAAO,GAAG,KAAK,QAAQ;YACrB,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE;gBAC1B,GAAG,OAAO;gBACV,GAAG,EAAE,GAAuB;aAC7B,CAAC,CAAC;QAET,OAAO;YACL,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW;YAC1C,QAAQ,EAAE,cAAc;SACzB,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,qCAAsC,SAAQ,sBAAsB;IACxE,KAAK,CAAC,KAAK,CAChB,OAAuD,EACvD,QAAQ,GAAG,EAAE;QAEb,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,YAAY,CACrE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAC9B,CAAC;QAEF,MAAM,QAAQ,GACZ,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"routing.js","sourceRoot":"","sources":["../../../src/ism/metadata/routing.ts"],"names":[],"mappings":"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"}
|
package/dist/ism/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { ArbL2ToL1Ism, IAggregationIsm, IInterchainSecurityModule, IMultisigIsm, IRoutingIsm, IStaticWeightedMultisigIsm, OPStackIsm, PausableIsm, TestIsm, TrustedRelayerIsm } from '@hyperlane-xyz/core';
|
|
2
|
+
import { ArbL2ToL1Ism, CCIPIsm, IAggregationIsm, IInterchainSecurityModule, IMultisigIsm, IRoutingIsm, IStaticWeightedMultisigIsm, OPStackIsm, PausableIsm, TestIsm, TrustedRelayerIsm } from '@hyperlane-xyz/core';
|
|
3
3
|
import type { Address, Domain, ValueOf } from '@hyperlane-xyz/utils';
|
|
4
4
|
import { ChainMap, OwnableConfig } from '../types.js';
|
|
5
5
|
export declare enum ModuleType {
|
|
@@ -21,6 +21,7 @@ export declare enum IsmType {
|
|
|
21
21
|
ROUTING = "domainRoutingIsm",
|
|
22
22
|
FALLBACK_ROUTING = "defaultFallbackRoutingIsm",
|
|
23
23
|
ICA_ROUTING = "icaRoutingIsm",
|
|
24
|
+
AMOUNT_ROUTING = "amountRoutingIsm",
|
|
24
25
|
AGGREGATION = "staticAggregationIsm",
|
|
25
26
|
STORAGE_AGGREGATION = "storageAggregationIsm",
|
|
26
27
|
MERKLE_ROOT_MULTISIG = "merkleRootMultisigIsm",
|
|
@@ -32,7 +33,8 @@ export declare enum IsmType {
|
|
|
32
33
|
TRUSTED_RELAYER = "trustedRelayerIsm",
|
|
33
34
|
ARB_L2_TO_L1 = "arbL2ToL1Ism",
|
|
34
35
|
WEIGHTED_MERKLE_ROOT_MULTISIG = "weightedMerkleRootMultisigIsm",
|
|
35
|
-
WEIGHTED_MESSAGE_ID_MULTISIG = "weightedMessageIdMultisigIsm"
|
|
36
|
+
WEIGHTED_MESSAGE_ID_MULTISIG = "weightedMessageIdMultisigIsm",
|
|
37
|
+
CCIP = "ccipIsm"
|
|
36
38
|
}
|
|
37
39
|
export declare const MUTABLE_ISM_TYPE: IsmType[];
|
|
38
40
|
export declare function ismTypeToModuleType(ismType: IsmType): ModuleType;
|
|
@@ -50,16 +52,22 @@ export type TestIsmConfig = z.infer<typeof TestIsmConfigSchema>;
|
|
|
50
52
|
export type PausableIsmConfig = z.infer<typeof PausableIsmConfigSchema>;
|
|
51
53
|
export type OpStackIsmConfig = z.infer<typeof OpStackIsmConfigSchema>;
|
|
52
54
|
export type TrustedRelayerIsmConfig = z.infer<typeof TrustedRelayerIsmConfigSchema>;
|
|
55
|
+
export type CCIPIsmConfig = z.infer<typeof CCIPIsmConfigSchema>;
|
|
53
56
|
export type ArbL2ToL1IsmConfig = z.infer<typeof ArbL2ToL1IsmConfigSchema>;
|
|
54
|
-
export type NullIsmConfig = TestIsmConfig | PausableIsmConfig | OpStackIsmConfig | TrustedRelayerIsmConfig;
|
|
55
|
-
type BaseRoutingIsmConfig<T extends IsmType.ROUTING | IsmType.FALLBACK_ROUTING | IsmType.ICA_ROUTING> = {
|
|
57
|
+
export type NullIsmConfig = TestIsmConfig | PausableIsmConfig | OpStackIsmConfig | TrustedRelayerIsmConfig | CCIPIsmConfig;
|
|
58
|
+
type BaseRoutingIsmConfig<T extends IsmType.ROUTING | IsmType.FALLBACK_ROUTING | IsmType.ICA_ROUTING | IsmType.AMOUNT_ROUTING> = {
|
|
56
59
|
type: T;
|
|
57
60
|
};
|
|
58
61
|
export type DomainRoutingIsmConfig = BaseRoutingIsmConfig<IsmType.ROUTING | IsmType.FALLBACK_ROUTING> & OwnableConfig & {
|
|
59
62
|
domains: ChainMap<IsmConfig>;
|
|
60
63
|
};
|
|
61
64
|
export type IcaRoutingIsmConfig = BaseRoutingIsmConfig<IsmType.ICA_ROUTING>;
|
|
62
|
-
export type
|
|
65
|
+
export type AmountRoutingIsmConfig = BaseRoutingIsmConfig<IsmType.AMOUNT_ROUTING> & {
|
|
66
|
+
lowerIsm: IsmConfig;
|
|
67
|
+
upperIsm: IsmConfig;
|
|
68
|
+
threshold: number;
|
|
69
|
+
};
|
|
70
|
+
export type RoutingIsmConfig = IcaRoutingIsmConfig | DomainRoutingIsmConfig | AmountRoutingIsmConfig;
|
|
63
71
|
export type AggregationIsmConfig = {
|
|
64
72
|
type: IsmType.AGGREGATION | IsmType.STORAGE_AGGREGATION;
|
|
65
73
|
modules: Array<IsmConfig>;
|
|
@@ -71,6 +79,7 @@ export type DeployedIsmType = {
|
|
|
71
79
|
[IsmType.ROUTING]: IRoutingIsm;
|
|
72
80
|
[IsmType.FALLBACK_ROUTING]: IRoutingIsm;
|
|
73
81
|
[IsmType.ICA_ROUTING]: IRoutingIsm;
|
|
82
|
+
[IsmType.AMOUNT_ROUTING]: IRoutingIsm;
|
|
74
83
|
[IsmType.AGGREGATION]: IAggregationIsm;
|
|
75
84
|
[IsmType.STORAGE_AGGREGATION]: IAggregationIsm;
|
|
76
85
|
[IsmType.MERKLE_ROOT_MULTISIG]: IMultisigIsm;
|
|
@@ -81,6 +90,7 @@ export type DeployedIsmType = {
|
|
|
81
90
|
[IsmType.TEST_ISM]: TestIsm;
|
|
82
91
|
[IsmType.PAUSABLE]: PausableIsm;
|
|
83
92
|
[IsmType.TRUSTED_RELAYER]: TrustedRelayerIsm;
|
|
93
|
+
[IsmType.CCIP]: CCIPIsm;
|
|
84
94
|
[IsmType.ARB_L2_TO_L1]: ArbL2ToL1Ism;
|
|
85
95
|
[IsmType.WEIGHTED_MERKLE_ROOT_MULTISIG]: IStaticWeightedMultisigIsm;
|
|
86
96
|
[IsmType.WEIGHTED_MESSAGE_ID_MULTISIG]: IStaticWeightedMultisigIsm;
|
|
@@ -144,6 +154,16 @@ export declare const TrustedRelayerIsmConfigSchema: z.ZodObject<{
|
|
|
144
154
|
type: IsmType.TRUSTED_RELAYER;
|
|
145
155
|
relayer: string;
|
|
146
156
|
}>;
|
|
157
|
+
export declare const CCIPIsmConfigSchema: z.ZodObject<{
|
|
158
|
+
type: z.ZodLiteral<IsmType.CCIP>;
|
|
159
|
+
originChain: z.ZodString;
|
|
160
|
+
}, "strip", z.ZodTypeAny, {
|
|
161
|
+
type: IsmType.CCIP;
|
|
162
|
+
originChain: string;
|
|
163
|
+
}, {
|
|
164
|
+
type: IsmType.CCIP;
|
|
165
|
+
originChain: string;
|
|
166
|
+
}>;
|
|
147
167
|
export declare const OpStackIsmConfigSchema: z.ZodObject<{
|
|
148
168
|
type: z.ZodLiteral<IsmType.OP_STACK>;
|
|
149
169
|
origin: z.ZodString;
|
|
@@ -280,6 +300,15 @@ export declare const IsmConfigSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
|
|
|
280
300
|
}, {
|
|
281
301
|
type: IsmType.TRUSTED_RELAYER;
|
|
282
302
|
relayer: string;
|
|
303
|
+
}>, z.ZodObject<{
|
|
304
|
+
type: z.ZodLiteral<IsmType.CCIP>;
|
|
305
|
+
originChain: z.ZodString;
|
|
306
|
+
}, "strip", z.ZodTypeAny, {
|
|
307
|
+
type: IsmType.CCIP;
|
|
308
|
+
originChain: string;
|
|
309
|
+
}, {
|
|
310
|
+
type: IsmType.CCIP;
|
|
311
|
+
originChain: string;
|
|
283
312
|
}>, z.ZodIntersection<z.ZodObject<{
|
|
284
313
|
validators: z.ZodArray<z.ZodString, "many">;
|
|
285
314
|
threshold: z.ZodNumber;
|
package/dist/ism/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ism/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,yBAAyB,EACzB,YAAY,EACZ,WAAW,EACX,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,OAAO,EACP,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EACL,QAAQ,EACR,aAAa,EAGd,MAAM,aAAa,CAAC;AAIrB,oBAAY,UAAU;IACpB,MAAM,IAAA;IACN,OAAO,IAAA;IACP,WAAW,IAAA;IACX,eAAe,IAAA,CAAE,aAAa;IAC9B,oBAAoB,IAAA;IACpB,mBAAmB,IAAA;IACnB,IAAI,IAAA;IACJ,SAAS,IAAA;IACT,YAAY,IAAA;IACZ,6BAA6B,IAAA;IAC7B,4BAA4B,KAAA;CAC7B;AAID,oBAAY,OAAO;IACjB,MAAM,WAAW;IACjB,QAAQ,eAAe;IACvB,OAAO,qBAAqB;IAC5B,gBAAgB,8BAA8B;IAC9C,WAAW,kBAAkB;IAC7B,WAAW,yBAAyB;IACpC,mBAAmB,0BAA0B;IAC7C,oBAAoB,0BAA0B;IAC9C,mBAAmB,yBAAyB;IAC5C,4BAA4B,iCAAiC;IAC7D,2BAA2B,gCAAgC;IAC3D,QAAQ,YAAY;IACpB,QAAQ,gBAAgB;IACxB,eAAe,sBAAsB;IACrC,YAAY,iBAAiB;IAC7B,6BAA6B,kCAAkC;IAC/D,4BAA4B,iCAAiC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ism/types.ts"],"names":[],"mappings":"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"}
|
package/dist/ism/types.js
CHANGED
|
@@ -26,6 +26,7 @@ export var IsmType;
|
|
|
26
26
|
IsmType["ROUTING"] = "domainRoutingIsm";
|
|
27
27
|
IsmType["FALLBACK_ROUTING"] = "defaultFallbackRoutingIsm";
|
|
28
28
|
IsmType["ICA_ROUTING"] = "icaRoutingIsm";
|
|
29
|
+
IsmType["AMOUNT_ROUTING"] = "amountRoutingIsm";
|
|
29
30
|
IsmType["AGGREGATION"] = "staticAggregationIsm";
|
|
30
31
|
IsmType["STORAGE_AGGREGATION"] = "storageAggregationIsm";
|
|
31
32
|
IsmType["MERKLE_ROOT_MULTISIG"] = "merkleRootMultisigIsm";
|
|
@@ -38,6 +39,7 @@ export var IsmType;
|
|
|
38
39
|
IsmType["ARB_L2_TO_L1"] = "arbL2ToL1Ism";
|
|
39
40
|
IsmType["WEIGHTED_MERKLE_ROOT_MULTISIG"] = "weightedMerkleRootMultisigIsm";
|
|
40
41
|
IsmType["WEIGHTED_MESSAGE_ID_MULTISIG"] = "weightedMessageIdMultisigIsm";
|
|
42
|
+
IsmType["CCIP"] = "ccipIsm";
|
|
41
43
|
})(IsmType || (IsmType = {}));
|
|
42
44
|
// ISM types that can be updated in-place
|
|
43
45
|
export const MUTABLE_ISM_TYPE = [
|
|
@@ -51,6 +53,7 @@ export function ismTypeToModuleType(ismType) {
|
|
|
51
53
|
case IsmType.ROUTING:
|
|
52
54
|
case IsmType.FALLBACK_ROUTING:
|
|
53
55
|
case IsmType.ICA_ROUTING:
|
|
56
|
+
case IsmType.AMOUNT_ROUTING:
|
|
54
57
|
return ModuleType.ROUTING;
|
|
55
58
|
case IsmType.AGGREGATION:
|
|
56
59
|
case IsmType.STORAGE_AGGREGATION:
|
|
@@ -66,6 +69,7 @@ export function ismTypeToModuleType(ismType) {
|
|
|
66
69
|
case IsmType.PAUSABLE:
|
|
67
70
|
case IsmType.CUSTOM:
|
|
68
71
|
case IsmType.TRUSTED_RELAYER:
|
|
72
|
+
case IsmType.CCIP:
|
|
69
73
|
return ModuleType.NULL;
|
|
70
74
|
case IsmType.ARB_L2_TO_L1:
|
|
71
75
|
return ModuleType.ARB_L2_TO_L1;
|
|
@@ -94,6 +98,10 @@ export const TrustedRelayerIsmConfigSchema = z.object({
|
|
|
94
98
|
type: z.literal(IsmType.TRUSTED_RELAYER),
|
|
95
99
|
relayer: z.string(),
|
|
96
100
|
});
|
|
101
|
+
export const CCIPIsmConfigSchema = z.object({
|
|
102
|
+
type: z.literal(IsmType.CCIP),
|
|
103
|
+
originChain: z.string(),
|
|
104
|
+
});
|
|
97
105
|
export const OpStackIsmConfigSchema = z.object({
|
|
98
106
|
type: z.literal(IsmType.OP_STACK),
|
|
99
107
|
origin: z.string(),
|
|
@@ -124,6 +132,12 @@ export const RoutingIsmConfigSchema = z.lazy(() => z.discriminatedUnion('type',
|
|
|
124
132
|
z.object({
|
|
125
133
|
type: z.literal(IsmType.ICA_ROUTING),
|
|
126
134
|
}),
|
|
135
|
+
z.object({
|
|
136
|
+
type: z.literal(IsmType.AMOUNT_ROUTING),
|
|
137
|
+
lowerIsm: IsmConfigSchema,
|
|
138
|
+
upperIsm: IsmConfigSchema,
|
|
139
|
+
threshold: z.number(),
|
|
140
|
+
}),
|
|
127
141
|
OwnableSchema.extend({
|
|
128
142
|
type: z.literal(IsmType.ROUTING),
|
|
129
143
|
domains: z.record(IsmConfigSchema),
|
|
@@ -148,6 +162,7 @@ export const IsmConfigSchema = z.union([
|
|
|
148
162
|
OpStackIsmConfigSchema,
|
|
149
163
|
PausableIsmConfigSchema,
|
|
150
164
|
TrustedRelayerIsmConfigSchema,
|
|
165
|
+
CCIPIsmConfigSchema,
|
|
151
166
|
MultisigIsmConfigSchema,
|
|
152
167
|
WeightedMultisigIsmConfigSchema,
|
|
153
168
|
RoutingIsmConfigSchema,
|
package/dist/ism/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ism/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/ism/types.ts"],"names":[],"mappings":"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"}
|
package/dist/ism/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/ism/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/ism/utils.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,OAAO,EAOR,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EACL,sBAAsB,EACtB,SAAS,EAGT,gBAAgB,EAChB,eAAe,EAEhB,MAAM,YAAY,CAAC;AAMpB,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,sBAAsB,EAC/B,MAAM,EAAE,sBAAsB,GAC7B;IAAE,eAAe,EAAE,SAAS,EAAE,CAAC;IAAC,iBAAiB,EAAE,SAAS,EAAE,CAAA;CAAE,CA4BlE;AAYD,wBAAsB,wBAAwB,CAC5C,UAAU,EAAE,OAAO,GAAG,SAAS,EAC/B,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,SAAS,GACrB,OAAO,CAAC,OAAO,CAAC,CAiHlB;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,EACpD,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,OAAO,CAAC,CAuOlB;AAED,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,SAAS,EACtB,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,gBAAgB,EACxB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,EACpD,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,eAAe,CAAC,CAoB1B;AAoED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,SAAS,GAChB,GAAG,CAAC,MAAM,CAAC,CAwCb"}
|
package/dist/ism/utils.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
|
-
import { DomainRoutingIsm__factory, IAggregationIsm__factory, IInterchainSecurityModule__factory, IMultisigIsm__factory, IRoutingIsm__factory, MailboxClient__factory, OPStackIsm__factory, PausableIsm__factory, StaticAggregationIsm__factory, TrustedRelayerIsm__factory, } from '@hyperlane-xyz/core';
|
|
2
|
+
import { AmountRoutingIsm__factory, CCIPIsm__factory, DomainRoutingIsm__factory, IAggregationIsm__factory, IInterchainSecurityModule__factory, IMultisigIsm__factory, IRoutingIsm__factory, MailboxClient__factory, OPStackIsm__factory, PausableIsm__factory, StaticAggregationIsm__factory, TrustedRelayerIsm__factory, } from '@hyperlane-xyz/core';
|
|
3
3
|
import { deepEquals, eqAddress, formatMessage, normalizeAddress, objMap, rootLogger, } from '@hyperlane-xyz/utils';
|
|
4
|
+
import { getChainNameFromCCIPSelector } from '../ccip/utils.js';
|
|
4
5
|
import { IsmType, ModuleType, ismTypeToModuleType, } from './types.js';
|
|
5
6
|
const logger = rootLogger.child({ module: 'IsmUtils' });
|
|
6
7
|
// Determines the domains to enroll and unenroll to update the current ISM config
|
|
@@ -139,6 +140,21 @@ export async function moduleMatchesConfig(chain, moduleAddress, config, multiPro
|
|
|
139
140
|
matches = eqAddress(expectedAddress, module.address);
|
|
140
141
|
break;
|
|
141
142
|
}
|
|
143
|
+
case IsmType.AMOUNT_ROUTING: {
|
|
144
|
+
const amountRoutingIsm = AmountRoutingIsm__factory.connect(moduleAddress, provider);
|
|
145
|
+
const [lowerIsmAddress, upperIsmAddress, threshold] = await Promise.all([
|
|
146
|
+
amountRoutingIsm.lower(),
|
|
147
|
+
amountRoutingIsm.upper(),
|
|
148
|
+
amountRoutingIsm.threshold(),
|
|
149
|
+
]);
|
|
150
|
+
const subModuleMatchesConfig = await Promise.all([
|
|
151
|
+
[lowerIsmAddress, config.lowerIsm],
|
|
152
|
+
[upperIsmAddress, config.upperIsm],
|
|
153
|
+
].map(([ismAddress, ismConfig]) => moduleMatchesConfig(chain, ismAddress, ismConfig, multiProvider, contracts, mailbox)));
|
|
154
|
+
matches &&= threshold.eq(config.threshold);
|
|
155
|
+
matches &&= subModuleMatchesConfig.every(Boolean);
|
|
156
|
+
break;
|
|
157
|
+
}
|
|
142
158
|
case IsmType.FALLBACK_ROUTING:
|
|
143
159
|
case IsmType.ROUTING: {
|
|
144
160
|
// A RoutingIsm matches if:
|
|
@@ -219,6 +235,16 @@ export async function moduleMatchesConfig(chain, moduleAddress, config, multiPro
|
|
|
219
235
|
matches &&= eqAddress(relayer, config.relayer);
|
|
220
236
|
break;
|
|
221
237
|
}
|
|
238
|
+
case IsmType.CCIP: {
|
|
239
|
+
const ccipIsm = CCIPIsm__factory.connect(moduleAddress, provider);
|
|
240
|
+
const type = await ccipIsm.moduleType();
|
|
241
|
+
matches &&= type === ModuleType.NULL;
|
|
242
|
+
// Check that the origin chain selector matches the config
|
|
243
|
+
const originCcipChainSelector = await ccipIsm.ccipOrigin();
|
|
244
|
+
const chainName = getChainNameFromCCIPSelector(originCcipChainSelector.toString());
|
|
245
|
+
matches &&= chainName === config.originChain;
|
|
246
|
+
break;
|
|
247
|
+
}
|
|
222
248
|
case IsmType.PAUSABLE: {
|
|
223
249
|
const pausableIsm = PausableIsm__factory.connect(moduleAddress, provider);
|
|
224
250
|
const owner = await pausableIsm.owner();
|
|
@@ -247,7 +273,9 @@ export async function moduleMatchesConfig(chain, moduleAddress, config, multiPro
|
|
|
247
273
|
return matches;
|
|
248
274
|
}
|
|
249
275
|
export async function routingModuleDelta(destination, moduleAddress, config, multiProvider, contracts, mailbox) {
|
|
250
|
-
|
|
276
|
+
// The ICA_ROUTING and AMOUNT_ROUTING ISMs are immutable routing ISMs.
|
|
277
|
+
if (config.type === IsmType.ICA_ROUTING ||
|
|
278
|
+
config.type === IsmType.AMOUNT_ROUTING) {
|
|
251
279
|
return {
|
|
252
280
|
domainsToEnroll: [],
|
|
253
281
|
domainsToUnenroll: [],
|
package/dist/ism/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ism/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ism/utils.ts"],"names":[],"mappings":"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"}
|