@hyperlane-xyz/sdk 1.5.7-beta1 → 3.0.0-beta0
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/consts/chainMetadata.d.ts +3 -0
- package/dist/consts/chainMetadata.d.ts.map +1 -1
- package/dist/consts/chainMetadata.js +99 -11
- package/dist/consts/chainMetadata.js.map +1 -1
- package/dist/consts/chains.d.ts +3 -0
- package/dist/consts/chains.d.ts.map +1 -1
- package/dist/consts/chains.js +8 -0
- package/dist/consts/chains.js.map +1 -1
- package/dist/consts/environments/index.d.ts +1135 -407
- package/dist/consts/environments/index.d.ts.map +1 -1
- package/dist/consts/environments/index.js +1 -6
- package/dist/consts/environments/index.js.map +1 -1
- package/dist/consts/environments/mainnet.json +827 -131
- package/dist/consts/environments/testnet.json +362 -19
- package/dist/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +73 -59
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/contracts/contracts.d.ts +8 -3
- package/dist/contracts/contracts.d.ts.map +1 -1
- package/dist/contracts/contracts.js +39 -9
- package/dist/contracts/contracts.js.map +1 -1
- package/dist/core/CoreDeployer.hardhat-test.js +62 -10
- package/dist/core/CoreDeployer.hardhat-test.js.map +1 -1
- package/dist/core/HyperlaneCore.d.ts.map +1 -1
- package/dist/core/HyperlaneCore.js +1 -0
- package/dist/core/HyperlaneCore.js.map +1 -1
- package/dist/core/HyperlaneCoreChecker.js +1 -1
- package/dist/core/HyperlaneCoreChecker.js.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.js +19 -16
- package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
- package/dist/core/MultiProtocolCore.test.js +53 -2
- package/dist/core/MultiProtocolCore.test.js.map +1 -1
- package/dist/core/TestCoreDeployer.d.ts +1 -5
- package/dist/core/TestCoreDeployer.d.ts.map +1 -1
- package/dist/core/TestCoreDeployer.js +0 -20
- package/dist/core/TestCoreDeployer.js.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.d.ts +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.d.ts.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.js +9 -4
- package/dist/core/adapters/SealevelCoreAdapter.js.map +1 -1
- package/dist/core/testHyperlaneDeploy.hardhat-test.js +5 -1
- package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
- package/dist/core/types.d.ts +1 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.d.ts +1 -0
- package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.js +25 -2
- package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
- package/dist/deploy/HyperlaneDeployer.d.ts +9 -4
- package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneDeployer.js +85 -66
- package/dist/deploy/HyperlaneDeployer.js.map +1 -1
- package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneProxyFactoryDeployer.js +8 -4
- package/dist/deploy/HyperlaneProxyFactoryDeployer.js.map +1 -1
- package/dist/deploy/proxy.d.ts +1 -0
- package/dist/deploy/proxy.d.ts.map +1 -1
- package/dist/deploy/proxy.js +8 -1
- package/dist/deploy/proxy.js.map +1 -1
- package/dist/deploy/verify/ContractVerifier.d.ts.map +1 -1
- package/dist/deploy/verify/ContractVerifier.js +7 -2
- package/dist/deploy/verify/ContractVerifier.js.map +1 -1
- package/dist/gas/HyperlaneIgp.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgp.js +1 -0
- package/dist/gas/HyperlaneIgp.js.map +1 -1
- package/dist/gas/HyperlaneIgpChecker.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgpChecker.js +15 -5
- package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
- package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgpDeployer.js +2 -1
- package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.d.ts +12 -2
- package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.js +99 -13
- 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 +24 -2
- package/dist/hook/types.d.ts.map +1 -1
- package/dist/hook/types.js +3 -0
- package/dist/hook/types.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -5
- package/dist/index.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.d.ts +3 -1
- package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +3 -3
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.js +87 -26
- package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
- package/dist/ism/types.d.ts +24 -7
- package/dist/ism/types.d.ts.map +1 -1
- package/dist/ism/types.js +33 -1
- package/dist/ism/types.js.map +1 -1
- package/dist/metadata/agentConfig.d.ts +92 -92
- package/dist/metadata/matchingList.d.ts +12 -12
- package/dist/metadata/matchingList.d.ts.map +1 -1
- package/dist/metadata/matchingList.js +1 -5
- package/dist/metadata/matchingList.js.map +1 -1
- package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccount.js +4 -1
- package/dist/middleware/account/InterchainAccount.js.map +1 -1
- package/dist/middleware/account/accounts.hardhat-test.js +5 -1
- package/dist/middleware/account/accounts.hardhat-test.js.map +1 -1
- package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js +5 -1
- package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js.map +1 -1
- package/dist/middleware/query/InterchainQuery.d.ts.map +1 -1
- package/dist/middleware/query/InterchainQuery.js +1 -0
- package/dist/middleware/query/InterchainQuery.js.map +1 -1
- package/dist/middleware/query/queries.hardhat-test.js +5 -1
- package/dist/middleware/query/queries.hardhat-test.js.map +1 -1
- package/dist/providers/MultiProvider.d.ts +1 -1
- package/dist/providers/MultiProvider.d.ts.map +1 -1
- package/dist/providers/MultiProvider.js +1 -1
- package/dist/providers/MultiProvider.js.map +1 -1
- package/dist/router/HyperlaneRouterChecker.d.ts +5 -1
- package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
- package/dist/router/HyperlaneRouterChecker.js +41 -6
- package/dist/router/HyperlaneRouterChecker.js.map +1 -1
- package/dist/router/RouterApps.d.ts +7 -1
- package/dist/router/RouterApps.d.ts.map +1 -1
- package/dist/router/RouterApps.js +17 -0
- package/dist/router/RouterApps.js.map +1 -1
- package/dist/router/types.d.ts +12 -1
- package/dist/router/types.d.ts.map +1 -1
- package/dist/router/types.js +5 -1
- package/dist/router/types.js.map +1 -1
- package/dist/test/testUtils.d.ts +1 -1
- package/dist/test/testUtils.d.ts.map +1 -1
- package/dist/test/testUtils.js +15 -37
- package/dist/test/testUtils.js.map +1 -1
- package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/SealevelTokenAdapter.js +13 -1
- package/dist/token/adapters/SealevelTokenAdapter.js.map +1 -1
- package/dist/token/config.d.ts +6 -3
- package/dist/token/config.d.ts.map +1 -1
- package/dist/token/config.js +11 -3
- package/dist/token/config.js.map +1 -1
- package/dist/token/contracts.d.ts +2 -2
- package/dist/token/contracts.d.ts.map +1 -1
- package/dist/token/deploy.d.ts +1 -1
- package/dist/token/deploy.d.ts.map +1 -1
- package/dist/token/deploy.js +21 -2
- package/dist/token/deploy.js.map +1 -1
- package/package.json +3 -3
- package/dist/consts/environments/testnet-sealevel.json +0 -19
- package/logos/black/base.svg +0 -12
- package/logos/black/polygonzkevm.svg +0 -49
- package/logos/black/scroll.svg +0 -66
- package/logos/color/base.svg +0 -18
- package/logos/color/polygonzkevm.svg +0 -22
- package/logos/color/scroll.svg +0 -36
package/dist/hook/contracts.d.ts
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import { InterchainGasPaymaster__factory, MerkleTreeHook__factory, StaticAggregationHook__factory, StaticProtocolFee__factory } from '@hyperlane-xyz/core';
|
|
1
|
+
import { DomainRoutingHook__factory, FallbackDomainRoutingHook__factory, InterchainGasPaymaster__factory, MerkleTreeHook__factory, OPStackHook__factory, StaticAggregationHook__factory, StaticProtocolFee__factory } from '@hyperlane-xyz/core';
|
|
2
2
|
export declare const hookFactories: {
|
|
3
3
|
merkleTreeHook: MerkleTreeHook__factory;
|
|
4
4
|
protocolFee: StaticProtocolFee__factory;
|
|
5
5
|
interchainGasPaymaster: InterchainGasPaymaster__factory;
|
|
6
6
|
aggregationHook: StaticAggregationHook__factory;
|
|
7
|
+
opStackHook: OPStackHook__factory;
|
|
8
|
+
domainRoutingHook: DomainRoutingHook__factory;
|
|
9
|
+
fallbackRoutingHook: FallbackDomainRoutingHook__factory;
|
|
7
10
|
};
|
|
8
11
|
export type HookFactories = typeof hookFactories;
|
|
9
12
|
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/hook/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,uBAAuB,EACvB,8BAA8B,EAC9B,0BAA0B,EAC3B,MAAM,qBAAqB,CAAC;AAI7B,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/hook/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,kCAAkC,EAClC,+BAA+B,EAC/B,uBAAuB,EACvB,oBAAoB,EACpB,8BAA8B,EAC9B,0BAA0B,EAC3B,MAAM,qBAAqB,CAAC;AAI7B,eAAO,MAAM,aAAa;;;;;;;;CAQzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC"}
|
package/dist/hook/contracts.js
CHANGED
|
@@ -7,6 +7,9 @@ exports.hookFactories = {
|
|
|
7
7
|
[types_1.HookType.MERKLE_TREE]: new core_1.MerkleTreeHook__factory(),
|
|
8
8
|
[types_1.HookType.PROTOCOL_FEE]: new core_1.StaticProtocolFee__factory(),
|
|
9
9
|
[types_1.HookType.INTERCHAIN_GAS_PAYMASTER]: new core_1.InterchainGasPaymaster__factory(),
|
|
10
|
-
[types_1.HookType.AGGREGATION]: new core_1.StaticAggregationHook__factory(),
|
|
10
|
+
[types_1.HookType.AGGREGATION]: new core_1.StaticAggregationHook__factory(),
|
|
11
|
+
[types_1.HookType.OP_STACK]: new core_1.OPStackHook__factory(),
|
|
12
|
+
[types_1.HookType.ROUTING]: new core_1.DomainRoutingHook__factory(),
|
|
13
|
+
[types_1.HookType.FALLBACK_ROUTING]: new core_1.FallbackDomainRoutingHook__factory(),
|
|
11
14
|
};
|
|
12
15
|
//# sourceMappingURL=contracts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/hook/contracts.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/hook/contracts.ts"],"names":[],"mappings":";;;AAAA,8CAQ6B;AAE7B,mCAAmC;AAEtB,QAAA,aAAa,GAAG;IAC3B,CAAC,gBAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,8BAAuB,EAAE;IACrD,CAAC,gBAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,iCAA0B,EAAE;IACzD,CAAC,gBAAQ,CAAC,wBAAwB,CAAC,EAAE,IAAI,sCAA+B,EAAE;IAC1E,CAAC,gBAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,qCAA8B,EAAE;IAC5D,CAAC,gBAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,2BAAoB,EAAE;IAC/C,CAAC,gBAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,iCAA0B,EAAE;IACpD,CAAC,gBAAQ,CAAC,gBAAgB,CAAC,EAAE,IAAI,yCAAkC,EAAE;CACtE,CAAC"}
|
package/dist/hook/types.d.ts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { BigNumber } from 'ethers';
|
|
2
2
|
import { Address } from '@hyperlane-xyz/utils';
|
|
3
3
|
import { IgpConfig } from '../gas/types';
|
|
4
|
+
import { ChainMap, ChainName } from '../types';
|
|
4
5
|
export declare enum HookType {
|
|
5
6
|
MERKLE_TREE = "merkleTreeHook",
|
|
6
7
|
INTERCHAIN_GAS_PAYMASTER = "interchainGasPaymaster",
|
|
7
8
|
AGGREGATION = "aggregationHook",
|
|
8
|
-
PROTOCOL_FEE = "protocolFee"
|
|
9
|
+
PROTOCOL_FEE = "protocolFee",
|
|
10
|
+
OP_STACK = "opStackHook",
|
|
11
|
+
ROUTING = "domainRoutingHook",
|
|
12
|
+
FALLBACK_ROUTING = "fallbackRoutingHook"
|
|
9
13
|
}
|
|
10
14
|
export type MerkleTreeHookConfig = {
|
|
11
15
|
type: HookType.MERKLE_TREE;
|
|
@@ -24,5 +28,23 @@ export type ProtocolFeeHookConfig = {
|
|
|
24
28
|
beneficiary: Address;
|
|
25
29
|
owner: Address;
|
|
26
30
|
};
|
|
27
|
-
export type
|
|
31
|
+
export type OpStackHookConfig = {
|
|
32
|
+
type: HookType.OP_STACK;
|
|
33
|
+
nativeBridge: Address;
|
|
34
|
+
destinationDomain: BigNumber;
|
|
35
|
+
destinationChain: ChainName;
|
|
36
|
+
};
|
|
37
|
+
export type DomainRoutingHookConfig = {
|
|
38
|
+
type: HookType.ROUTING;
|
|
39
|
+
owner: Address;
|
|
40
|
+
domains: ChainMap<HookConfig>;
|
|
41
|
+
};
|
|
42
|
+
export type FallbackRoutingHookConfig = {
|
|
43
|
+
type: HookType.FALLBACK_ROUTING;
|
|
44
|
+
owner: Address;
|
|
45
|
+
fallback: HookConfig;
|
|
46
|
+
domains: ChainMap<HookConfig>;
|
|
47
|
+
};
|
|
48
|
+
export type RoutingHookConfig = DomainRoutingHookConfig | FallbackRoutingHookConfig;
|
|
49
|
+
export type HookConfig = MerkleTreeHookConfig | AggregationHookConfig | IgpHookConfig | ProtocolFeeHookConfig | OpStackHookConfig | RoutingHookConfig;
|
|
28
50
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/hook/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hook/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hook/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,oBAAY,QAAQ;IAClB,WAAW,mBAAmB;IAC9B,wBAAwB,2BAA2B;IACnD,WAAW,oBAAoB;IAC/B,YAAY,gBAAgB;IAC5B,QAAQ,gBAAgB;IACxB,OAAO,sBAAsB;IAC7B,gBAAgB,wBAAwB;CACzC;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG;IACtC,IAAI,EAAE,QAAQ,CAAC,wBAAwB,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC;IAC5B,cAAc,EAAE,SAAS,CAAC;IAC1B,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,SAAS,CAAC;IAC7B,gBAAgB,EAAE,SAAS,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,CAAC;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,UAAU,CAAC;IACrB,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB,uBAAuB,GACvB,yBAAyB,CAAC;AAE9B,MAAM,MAAM,UAAU,GAClB,oBAAoB,GACpB,qBAAqB,GACrB,aAAa,GACb,qBAAqB,GACrB,iBAAiB,GACjB,iBAAiB,CAAC"}
|
package/dist/hook/types.js
CHANGED
|
@@ -7,5 +7,8 @@ var HookType;
|
|
|
7
7
|
HookType["INTERCHAIN_GAS_PAYMASTER"] = "interchainGasPaymaster";
|
|
8
8
|
HookType["AGGREGATION"] = "aggregationHook";
|
|
9
9
|
HookType["PROTOCOL_FEE"] = "protocolFee";
|
|
10
|
+
HookType["OP_STACK"] = "opStackHook";
|
|
11
|
+
HookType["ROUTING"] = "domainRoutingHook";
|
|
12
|
+
HookType["FALLBACK_ROUTING"] = "fallbackRoutingHook";
|
|
10
13
|
})(HookType || (exports.HookType = HookType = {}));
|
|
11
14
|
//# sourceMappingURL=types.js.map
|
package/dist/hook/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hook/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/hook/types.ts"],"names":[],"mappings":";;;AAOA,IAAY,QAQX;AARD,WAAY,QAAQ;IAClB,0CAA8B,CAAA;IAC9B,+DAAmD,CAAA;IACnD,2CAA+B,CAAA;IAC/B,wCAA4B,CAAA;IAC5B,oCAAwB,CAAA;IACxB,yCAA6B,CAAA;IAC7B,oDAAwC,CAAA;AAC1C,CAAC,EARW,QAAQ,wBAAR,QAAQ,QAQnB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,10 +2,10 @@ export { HyperlaneApp } from './app/HyperlaneApp';
|
|
|
2
2
|
export { AdapterClassType, BaseAppAdapter, BaseEvmAdapter, BaseSealevelAdapter, MultiProtocolApp, } from './app/MultiProtocolApp';
|
|
3
3
|
export { chainIdToMetadata, chainMetadata, mainnetChainsMetadata, solanaChainToClusterName, testnetChainsMetadata, } from './consts/chainMetadata';
|
|
4
4
|
export { AllChains, AllDeprecatedChains, Chains, CoreChainName, DeprecatedChains, Mainnets, TestChains, Testnets, } from './consts/chains';
|
|
5
|
-
export { HyperlaneEnvironment, HyperlaneEnvironmentChain, hyperlaneContractAddresses, hyperlaneEnvironments,
|
|
5
|
+
export { HyperlaneEnvironment, HyperlaneEnvironmentChain, hyperlaneContractAddresses, hyperlaneEnvironments, } from './consts/environments';
|
|
6
6
|
export { defaultMultisigIsmConfigs } from './consts/multisigIsm';
|
|
7
7
|
export { SEALEVEL_SPL_NOOP_ADDRESS } from './consts/sealevel';
|
|
8
|
-
export { attachContracts, attachContractsMap, connectContracts, connectContractsMap, filterAddressesMap,
|
|
8
|
+
export { attachContracts, attachContractsMap, attachContractsMapAndGetForeignDeployments, connectContracts, connectContractsMap, filterAddressesMap, filterChainMapExcludeProtocol, filterChainMapToProtocol, filterOwnableContracts, serializeContracts, serializeContractsMap, } from './contracts/contracts';
|
|
9
9
|
export { AddressesMap, HyperlaneAddresses, HyperlaneAddressesMap, HyperlaneContracts, HyperlaneContractsMap, HyperlaneFactories, } from './contracts/types';
|
|
10
10
|
export { HyperlaneCore } from './core/HyperlaneCore';
|
|
11
11
|
export { HyperlaneCoreChecker } from './core/HyperlaneCoreChecker';
|
|
@@ -35,9 +35,9 @@ export { IgpFactories, igpFactories } from './gas/contracts';
|
|
|
35
35
|
export { CoinGeckoTokenPriceGetter } from './gas/token-prices';
|
|
36
36
|
export { GasOracleContractType, IgpBeneficiaryViolation, IgpConfig, IgpGasOraclesViolation, IgpOverheadViolation, IgpViolation, IgpViolationType, } from './gas/types';
|
|
37
37
|
export { HyperlaneHookDeployer } from './hook/HyperlaneHookDeployer';
|
|
38
|
-
export { AggregationHookConfig, HookConfig, HookType, IgpHookConfig, MerkleTreeHookConfig, ProtocolFeeHookConfig, } from './hook/types';
|
|
39
|
-
export { HyperlaneIsmFactory, collectValidators, } from './ism/HyperlaneIsmFactory';
|
|
40
|
-
export { AggregationIsmConfig, DeployedIsm, IsmConfig, ModuleType, MultisigConfig, MultisigIsmConfig, RoutingIsmConfig, } from './ism/types';
|
|
38
|
+
export { AggregationHookConfig, DomainRoutingHookConfig, FallbackRoutingHookConfig, HookConfig, HookType, IgpHookConfig, MerkleTreeHookConfig, OpStackHookConfig, ProtocolFeeHookConfig, RoutingHookConfig, } from './hook/types';
|
|
39
|
+
export { HyperlaneIsmFactory, collectValidators, moduleCanCertainlyVerify, } from './ism/HyperlaneIsmFactory';
|
|
40
|
+
export { AggregationIsmConfig, DeployedIsm, IsmConfig, IsmType, ModuleType, MultisigConfig, MultisigIsmConfig, RoutingIsmConfig, } from './ism/types';
|
|
41
41
|
export { ChainMetadataManager, ChainMetadataManagerOptions, } from './metadata/ChainMetadataManager';
|
|
42
42
|
export { AgentChainMetadata, AgentChainMetadataSchema, AgentConfig, AgentConfigSchema, AgentLogFormat, AgentLogLevel, AgentSigner, AgentSignerAwsKey, AgentSignerHexKey, AgentSignerKeyType, AgentSignerNode, GasPaymentEnforcement, GasPaymentEnforcementPolicyType, RelayerConfig, RpcConsensusType, ScraperConfig, ValidatorConfig, buildAgentConfig, } from './metadata/agentConfig';
|
|
43
43
|
export { ChainMetadata, ChainMetadataSchema, ExplorerFamily, ExplorerFamilyValue, RpcUrl, RpcUrlSchema, getDomainId, isValidChainMetadata, } from './metadata/chainMetadataTypes';
|
|
@@ -67,7 +67,7 @@ export { GasRouterApp, Router, RouterApp } from './router/RouterApps';
|
|
|
67
67
|
export { EvmGasRouterAdapter, EvmRouterAdapter, } from './router/adapters/EvmRouterAdapter';
|
|
68
68
|
export { SealevelGasRouterAdapter, SealevelRouterAdapter, } from './router/adapters/SealevelRouterAdapter';
|
|
69
69
|
export { IGasRouterAdapter, IRouterAdapter } from './router/adapters/types';
|
|
70
|
-
export { ClientViolation as ConnectionClientViolation, ClientViolationType as ConnectionClientViolationType, ForeignDeploymentConfig, GasConfig, GasRouterConfig, MailboxClientConfig, OwnableConfig, ProxiedFactories, ProxiedRouterConfig, RouterAddress, RouterConfig, proxiedFactories, } from './router/types';
|
|
70
|
+
export { MailboxClientConfig as ConnectionClientConfig, ClientViolation as ConnectionClientViolation, ClientViolationType as ConnectionClientViolationType, ForeignDeploymentConfig, GasConfig, GasRouterConfig, MailboxClientConfig, OwnableConfig, ProxiedFactories, ProxiedRouterConfig, RouterAddress, RouterConfig, RouterViolation, RouterViolationType, proxiedFactories, } from './router/types';
|
|
71
71
|
export { EvmHypCollateralAdapter, EvmHypSyntheticAdapter, EvmNativeTokenAdapter, EvmTokenAdapter, } from './token/adapters/EvmTokenAdapter';
|
|
72
72
|
export { IHypTokenAdapter, ITokenAdapter, TransferParams, TransferRemoteParams, } from './token/adapters/ITokenAdapter';
|
|
73
73
|
export { SealevelHypCollateralAdapter, SealevelHypNativeAdapter, SealevelHypSyntheticAdapter, SealevelHypTokenAdapter, SealevelNativeTokenAdapter, SealevelTokenAdapter, } from './token/adapters/SealevelTokenAdapter';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,MAAM,EACN,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,QAAQ,GACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -23,9 +23,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
27
|
-
exports.
|
|
28
|
-
exports.wagmiChainMetadata = exports.chainMetadataToWagmiChain = exports.getSealevelAccountDataSchema = exports.SealevelInstructionWrapper = exports.SealevelAccountDataWrapper = exports.multisigIsmVerificationCost = exports.filterByChains = exports.MultiGeneric = exports.HypERC721Deployer = exports.HypERC20Deployer = exports.isUriConfig = exports.isCollateralConfig = exports.TokenType = exports.SealevelTransferRemoteSchema = exports.SealevelTransferRemoteInstruction = exports.SealevelHyperlaneTokenDataSchema = exports.SealevelHyperlaneTokenData = exports.SealevelHypTokenInstruction = exports.SealevelTokenAdapter = exports.SealevelNativeTokenAdapter = exports.SealevelHypTokenAdapter = exports.SealevelHypSyntheticAdapter = exports.SealevelHypNativeAdapter = exports.SealevelHypCollateralAdapter = exports.EvmTokenAdapter = exports.EvmNativeTokenAdapter = exports.EvmHypSyntheticAdapter = exports.EvmHypCollateralAdapter = exports.proxiedFactories = exports.ConnectionClientViolationType = exports.SealevelRouterAdapter = exports.SealevelGasRouterAdapter = exports.EvmRouterAdapter = exports.EvmGasRouterAdapter = exports.RouterApp = exports.GasRouterApp = exports.MultiProtocolRouterApp = exports.MultiProtocolGasRouterApp = exports.HyperlaneRouterDeployer = exports.HyperlaneRouterChecker = exports.GasRouterDeployer = exports.protocolToDefaultProviderBuilder = exports.defaultViemProviderBuilder = exports.defaultSolProviderBuilder = exports.defaultProviderBuilderMap = exports.defaultProviderBuilder = void 0;
|
|
26
|
+
exports.HyperlaneIgp = exports.verificationUtils = exports.ContractVerifier = exports.ViolationType = exports.HyperlaneProxyFactoryDeployer = exports.HyperlaneDeployer = exports.HyperlaneAppChecker = exports.MailboxViolationType = exports.CoreViolationType = exports.coreFactories = exports.SealevelCoreAdapter = exports.EvmCoreAdapter = exports.TestCoreDeployer = exports.TestCoreApp = exports.MultiProtocolCore = exports.HyperlaneCoreDeployer = exports.HyperlaneCoreChecker = exports.HyperlaneCore = exports.serializeContractsMap = exports.serializeContracts = exports.filterOwnableContracts = exports.filterChainMapToProtocol = exports.filterChainMapExcludeProtocol = exports.filterAddressesMap = exports.connectContractsMap = exports.connectContracts = exports.attachContractsMapAndGetForeignDeployments = exports.attachContractsMap = exports.attachContracts = exports.SEALEVEL_SPL_NOOP_ADDRESS = exports.defaultMultisigIsmConfigs = exports.hyperlaneEnvironments = exports.hyperlaneContractAddresses = exports.Testnets = exports.TestChains = exports.Mainnets = exports.DeprecatedChains = exports.Chains = exports.AllDeprecatedChains = exports.AllChains = exports.testnetChainsMetadata = exports.solanaChainToClusterName = exports.mainnetChainsMetadata = exports.chainMetadata = exports.chainIdToMetadata = exports.MultiProtocolApp = exports.BaseSealevelAdapter = exports.BaseEvmAdapter = exports.BaseAppAdapter = exports.HyperlaneApp = void 0;
|
|
27
|
+
exports.RetryJsonRpcProvider = exports.ProviderType = exports.MultiProvider = exports.MultiProtocolProvider = exports.interchainQueryFactories = exports.InterchainQueryDeployer = exports.InterchainQueryChecker = exports.InterchainQuery = exports.liquidityLayerFactories = exports.LiquidityLayerDeployer = exports.BridgeAdapterType = exports.LiquidityLayerApp = exports.interchainAccountFactories = exports.InterchainAccountDeployer = exports.InterchainAccountChecker = exports.InterchainAccount = exports.HyperlaneDeploymentArtifactsSchema = exports.isValidChainMetadata = exports.getDomainId = exports.RpcUrlSchema = exports.ExplorerFamily = exports.ChainMetadataSchema = exports.buildAgentConfig = exports.RpcConsensusType = exports.GasPaymentEnforcementPolicyType = exports.AgentSignerKeyType = exports.AgentLogLevel = exports.AgentLogFormat = exports.AgentConfigSchema = exports.AgentChainMetadataSchema = exports.ChainMetadataManager = exports.ModuleType = exports.IsmType = exports.moduleCanCertainlyVerify = exports.collectValidators = exports.HyperlaneIsmFactory = exports.HookType = exports.HyperlaneHookDeployer = exports.IgpViolationType = exports.GasOracleContractType = exports.CoinGeckoTokenPriceGetter = exports.igpFactories = exports.SealevelOverheadIgpDataSchema = exports.SealevelOverheadIgpData = exports.SealevelInterchainGasPaymasterType = exports.SealevelInterchainGasPaymasterConfigSchema = exports.SealevelInterchainGasPaymasterConfig = exports.SealevelOverheadIgpAdapter = exports.HyperlaneIgpDeployer = exports.HyperlaneIgpChecker = void 0;
|
|
28
|
+
exports.wagmiChainMetadata = exports.chainMetadataToWagmiChain = exports.getSealevelAccountDataSchema = exports.SealevelInstructionWrapper = exports.SealevelAccountDataWrapper = exports.multisigIsmVerificationCost = exports.filterByChains = exports.MultiGeneric = exports.HypERC721Deployer = exports.HypERC20Deployer = exports.isUriConfig = exports.isCollateralConfig = exports.TokenType = exports.SealevelTransferRemoteSchema = exports.SealevelTransferRemoteInstruction = exports.SealevelHyperlaneTokenDataSchema = exports.SealevelHyperlaneTokenData = exports.SealevelHypTokenInstruction = exports.SealevelTokenAdapter = exports.SealevelNativeTokenAdapter = exports.SealevelHypTokenAdapter = exports.SealevelHypSyntheticAdapter = exports.SealevelHypNativeAdapter = exports.SealevelHypCollateralAdapter = exports.EvmTokenAdapter = exports.EvmNativeTokenAdapter = exports.EvmHypSyntheticAdapter = exports.EvmHypCollateralAdapter = exports.proxiedFactories = exports.RouterViolationType = exports.ConnectionClientViolationType = exports.SealevelRouterAdapter = exports.SealevelGasRouterAdapter = exports.EvmRouterAdapter = exports.EvmGasRouterAdapter = exports.RouterApp = exports.GasRouterApp = exports.MultiProtocolRouterApp = exports.MultiProtocolGasRouterApp = exports.HyperlaneRouterDeployer = exports.HyperlaneRouterChecker = exports.GasRouterDeployer = exports.protocolToDefaultProviderBuilder = exports.defaultViemProviderBuilder = exports.defaultSolProviderBuilder = exports.defaultProviderBuilderMap = exports.defaultProviderBuilder = exports.defaultFuelProviderBuilder = exports.defaultEthersV5ProviderBuilder = exports.DEFAULT_RETRY_OPTIONS = void 0;
|
|
29
29
|
var HyperlaneApp_1 = require("./app/HyperlaneApp");
|
|
30
30
|
Object.defineProperty(exports, "HyperlaneApp", { enumerable: true, get: function () { return HyperlaneApp_1.HyperlaneApp; } });
|
|
31
31
|
var MultiProtocolApp_1 = require("./app/MultiProtocolApp");
|
|
@@ -50,7 +50,6 @@ Object.defineProperty(exports, "Testnets", { enumerable: true, get: function ()
|
|
|
50
50
|
var environments_1 = require("./consts/environments");
|
|
51
51
|
Object.defineProperty(exports, "hyperlaneContractAddresses", { enumerable: true, get: function () { return environments_1.hyperlaneContractAddresses; } });
|
|
52
52
|
Object.defineProperty(exports, "hyperlaneEnvironments", { enumerable: true, get: function () { return environments_1.hyperlaneEnvironments; } });
|
|
53
|
-
Object.defineProperty(exports, "hyperlaneEnvironmentsWithSealevel", { enumerable: true, get: function () { return environments_1.hyperlaneEnvironmentsWithSealevel; } });
|
|
54
53
|
var multisigIsm_1 = require("./consts/multisigIsm");
|
|
55
54
|
Object.defineProperty(exports, "defaultMultisigIsmConfigs", { enumerable: true, get: function () { return multisigIsm_1.defaultMultisigIsmConfigs; } });
|
|
56
55
|
var sealevel_1 = require("./consts/sealevel");
|
|
@@ -58,10 +57,12 @@ Object.defineProperty(exports, "SEALEVEL_SPL_NOOP_ADDRESS", { enumerable: true,
|
|
|
58
57
|
var contracts_1 = require("./contracts/contracts");
|
|
59
58
|
Object.defineProperty(exports, "attachContracts", { enumerable: true, get: function () { return contracts_1.attachContracts; } });
|
|
60
59
|
Object.defineProperty(exports, "attachContractsMap", { enumerable: true, get: function () { return contracts_1.attachContractsMap; } });
|
|
60
|
+
Object.defineProperty(exports, "attachContractsMapAndGetForeignDeployments", { enumerable: true, get: function () { return contracts_1.attachContractsMapAndGetForeignDeployments; } });
|
|
61
61
|
Object.defineProperty(exports, "connectContracts", { enumerable: true, get: function () { return contracts_1.connectContracts; } });
|
|
62
62
|
Object.defineProperty(exports, "connectContractsMap", { enumerable: true, get: function () { return contracts_1.connectContractsMap; } });
|
|
63
63
|
Object.defineProperty(exports, "filterAddressesMap", { enumerable: true, get: function () { return contracts_1.filterAddressesMap; } });
|
|
64
|
-
Object.defineProperty(exports, "
|
|
64
|
+
Object.defineProperty(exports, "filterChainMapExcludeProtocol", { enumerable: true, get: function () { return contracts_1.filterChainMapExcludeProtocol; } });
|
|
65
|
+
Object.defineProperty(exports, "filterChainMapToProtocol", { enumerable: true, get: function () { return contracts_1.filterChainMapToProtocol; } });
|
|
65
66
|
Object.defineProperty(exports, "filterOwnableContracts", { enumerable: true, get: function () { return contracts_1.filterOwnableContracts; } });
|
|
66
67
|
Object.defineProperty(exports, "serializeContracts", { enumerable: true, get: function () { return contracts_1.serializeContracts; } });
|
|
67
68
|
Object.defineProperty(exports, "serializeContractsMap", { enumerable: true, get: function () { return contracts_1.serializeContractsMap; } });
|
|
@@ -125,7 +126,9 @@ Object.defineProperty(exports, "HookType", { enumerable: true, get: function ()
|
|
|
125
126
|
var HyperlaneIsmFactory_1 = require("./ism/HyperlaneIsmFactory");
|
|
126
127
|
Object.defineProperty(exports, "HyperlaneIsmFactory", { enumerable: true, get: function () { return HyperlaneIsmFactory_1.HyperlaneIsmFactory; } });
|
|
127
128
|
Object.defineProperty(exports, "collectValidators", { enumerable: true, get: function () { return HyperlaneIsmFactory_1.collectValidators; } });
|
|
129
|
+
Object.defineProperty(exports, "moduleCanCertainlyVerify", { enumerable: true, get: function () { return HyperlaneIsmFactory_1.moduleCanCertainlyVerify; } });
|
|
128
130
|
var types_5 = require("./ism/types");
|
|
131
|
+
Object.defineProperty(exports, "IsmType", { enumerable: true, get: function () { return types_5.IsmType; } });
|
|
129
132
|
Object.defineProperty(exports, "ModuleType", { enumerable: true, get: function () { return types_5.ModuleType; } });
|
|
130
133
|
var ChainMetadataManager_1 = require("./metadata/ChainMetadataManager");
|
|
131
134
|
Object.defineProperty(exports, "ChainMetadataManager", { enumerable: true, get: function () { return ChainMetadataManager_1.ChainMetadataManager; } });
|
|
@@ -206,6 +209,7 @@ Object.defineProperty(exports, "SealevelGasRouterAdapter", { enumerable: true, g
|
|
|
206
209
|
Object.defineProperty(exports, "SealevelRouterAdapter", { enumerable: true, get: function () { return SealevelRouterAdapter_1.SealevelRouterAdapter; } });
|
|
207
210
|
var types_6 = require("./router/types");
|
|
208
211
|
Object.defineProperty(exports, "ConnectionClientViolationType", { enumerable: true, get: function () { return types_6.ClientViolationType; } });
|
|
212
|
+
Object.defineProperty(exports, "RouterViolationType", { enumerable: true, get: function () { return types_6.RouterViolationType; } });
|
|
209
213
|
Object.defineProperty(exports, "proxiedFactories", { enumerable: true, get: function () { return types_6.proxiedFactories; } });
|
|
210
214
|
var EvmTokenAdapter_1 = require("./token/adapters/EvmTokenAdapter");
|
|
211
215
|
Object.defineProperty(exports, "EvmHypCollateralAdapter", { enumerable: true, get: function () { return EvmTokenAdapter_1.EvmHypCollateralAdapter; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAkD;AAAzC,4GAAA,YAAY,OAAA;AACrB,2DAMgC;AAJ9B,kHAAA,cAAc,OAAA;AACd,kHAAA,cAAc,OAAA;AACd,uHAAA,mBAAmB,OAAA;AACnB,oHAAA,gBAAgB,OAAA;AAElB,wDAMgC;AAL9B,kHAAA,iBAAiB,OAAA;AACjB,8GAAA,aAAa,OAAA;AACb,sHAAA,qBAAqB,OAAA;AACrB,yHAAA,wBAAwB,OAAA;AACxB,sHAAA,qBAAqB,OAAA;AAEvB,0CASyB;AARvB,mGAAA,SAAS,OAAA;AACT,6GAAA,mBAAmB,OAAA;AACnB,gGAAA,MAAM,OAAA;AAEN,0GAAA,gBAAgB,OAAA;AAChB,kGAAA,QAAQ,OAAA;AACR,oGAAA,UAAU,OAAA;AACV,kGAAA,QAAQ,OAAA;AAEV,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,16 +4,18 @@ import { HyperlaneApp } from '../app/HyperlaneApp';
|
|
|
4
4
|
import { HyperlaneEnvironment } from '../consts/environments';
|
|
5
5
|
import { HyperlaneAddressesMap, HyperlaneContracts } from '../contracts/types';
|
|
6
6
|
import { MultiProvider } from '../providers/MultiProvider';
|
|
7
|
-
import { ChainName } from '../types';
|
|
7
|
+
import { ChainMap, ChainName } from '../types';
|
|
8
8
|
import { FactoryFactories } from './contracts';
|
|
9
9
|
import { DeployedIsm, IsmConfig } from './types';
|
|
10
10
|
export declare class HyperlaneIsmFactory extends HyperlaneApp<FactoryFactories> {
|
|
11
|
+
deployedIsms: ChainMap<any>;
|
|
11
12
|
static fromEnvironment<Env extends HyperlaneEnvironment>(env: Env, multiProvider: MultiProvider): HyperlaneIsmFactory;
|
|
12
13
|
static fromAddressesMap(addressesMap: HyperlaneAddressesMap<any>, multiProvider: MultiProvider): HyperlaneIsmFactory;
|
|
13
14
|
deploy(chain: ChainName, config: IsmConfig, origin?: ChainName): Promise<DeployedIsm>;
|
|
14
15
|
private deployMultisigIsm;
|
|
15
16
|
private deployRoutingIsm;
|
|
16
17
|
private deployAggregationIsm;
|
|
18
|
+
private deployOpStackIsm;
|
|
17
19
|
deployStaticAddressSet(chain: ChainName, factory: StaticThresholdAddressSetFactory | StaticAddressSetFactory, values: Address[], threshold?: number): Promise<Address>;
|
|
18
20
|
}
|
|
19
21
|
export declare function moduleCanCertainlyVerify(destModule: Address | IsmConfig, multiProvider: MultiProvider, origin: ChainName, destination: ChainName): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneIsmFactory.d.ts","sourceRoot":"","sources":["../../src/ism/HyperlaneIsmFactory.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"HyperlaneIsmFactory.d.ts","sourceRoot":"","sources":["../../src/ism/HyperlaneIsmFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAOL,uBAAuB,EAEvB,gCAAgC,EAEjC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAkC,MAAM,sBAAsB,CAAC;AAE/E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EACL,oBAAoB,EAErB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAoB,MAAM,aAAa,CAAC;AACjE,OAAO,EAEL,WAAW,EACX,SAAS,EAOV,MAAM,SAAS,CAAC;AAEjB,qBAAa,mBAAoB,SAAQ,YAAY,CAAC,gBAAgB,CAAC;IAI9D,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAM;IAExC,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,oBAAoB,EACrD,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,GAC3B,mBAAmB;IAStB,MAAM,CAAC,gBAAgB,CACrB,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,aAAa,EAAE,aAAa,GAC3B,mBAAmB;IAahB,MAAM,CACV,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,SAAS,EACjB,MAAM,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,WAAW,CAAC;YAsET,iBAAiB;YAiBjB,gBAAgB;YA8ChB,oBAAoB;YAqBpB,gBAAgB;IASxB,sBAAsB,CAC1B,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,gCAAgC,GAAG,uBAAuB,EACnE,MAAM,EAAE,OAAO,EAAE,EACjB,SAAS,SAAgB,GACxB,OAAO,CAAC,OAAO,CAAC;CA2BpB;AAOD,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,CA4GlB;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,EAC/C,OAAO,CAAC,EAAE,SAAS,GAClB,OAAO,CAAC,OAAO,CAAC,CAqHlB;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,SAAS,GAChB,GAAG,CAAC,MAAM,CAAC,CAsCb"}
|
|
@@ -21,7 +21,7 @@ const randomMultisigIsmConfig = (m, n) => {
|
|
|
21
21
|
const emptyArray = new Array(n).fill(0);
|
|
22
22
|
const validators = emptyArray.map(() => (0, testUtils_1.randomAddress)());
|
|
23
23
|
return {
|
|
24
|
-
type: types_1.
|
|
24
|
+
type: types_1.IsmType.MERKLE_ROOT_MULTISIG,
|
|
25
25
|
validators,
|
|
26
26
|
threshold: m,
|
|
27
27
|
};
|
|
@@ -34,7 +34,7 @@ const randomIsmConfig = (depth = 0, maxDepth = 2) => {
|
|
|
34
34
|
}
|
|
35
35
|
else if (moduleType === types_1.ModuleType.ROUTING) {
|
|
36
36
|
const config = {
|
|
37
|
-
type: types_1.
|
|
37
|
+
type: types_1.IsmType.ROUTING,
|
|
38
38
|
owner: (0, testUtils_1.randomAddress)(),
|
|
39
39
|
domains: Object.fromEntries(chains_1.TestChains.map((c) => [c, randomIsmConfig(depth + 1)])),
|
|
40
40
|
};
|
|
@@ -46,7 +46,7 @@ const randomIsmConfig = (depth = 0, maxDepth = 2) => {
|
|
|
46
46
|
.fill(0)
|
|
47
47
|
.map(() => randomIsmConfig(depth + 1));
|
|
48
48
|
const config = {
|
|
49
|
-
type: types_1.
|
|
49
|
+
type: types_1.IsmType.AGGREGATION,
|
|
50
50
|
threshold: (0, testUtils_1.randomInt)(n, 1),
|
|
51
51
|
modules,
|
|
52
52
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneIsmFactory.hardhat-test.js","sourceRoot":"","sources":["../../src/ism/HyperlaneIsmFactory.hardhat-test.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,qCAAiC;AAEjC,gDAA6C;AAE7C,6CAA8C;AAC9C,2FAAwF;AACxF,8DAA2D;AAC3D,iDAA6D;AAE7D,+DAG+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"HyperlaneIsmFactory.hardhat-test.js","sourceRoot":"","sources":["../../src/ism/HyperlaneIsmFactory.hardhat-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,11 +11,19 @@ const contracts_1 = require("../contracts/contracts");
|
|
|
11
11
|
const contracts_2 = require("./contracts");
|
|
12
12
|
const types_1 = require("./types");
|
|
13
13
|
class HyperlaneIsmFactory extends HyperlaneApp_1.HyperlaneApp {
|
|
14
|
+
constructor() {
|
|
15
|
+
super(...arguments);
|
|
16
|
+
// The shape of this object is `ChainMap<Address | ChainMap<Address>`,
|
|
17
|
+
// although `any` is use here because that type breaks a lot of signatures.
|
|
18
|
+
// TODO: fix this in the next refactoring
|
|
19
|
+
this.deployedIsms = {};
|
|
20
|
+
}
|
|
14
21
|
static fromEnvironment(env, multiProvider) {
|
|
15
22
|
const envAddresses = environments_1.hyperlaneEnvironments[env];
|
|
16
23
|
if (!envAddresses) {
|
|
17
24
|
throw new Error(`No addresses found for ${env}`);
|
|
18
25
|
}
|
|
26
|
+
/// @ts-ignore
|
|
19
27
|
return HyperlaneIsmFactory.fromAddressesMap(envAddresses, multiProvider);
|
|
20
28
|
}
|
|
21
29
|
static fromAddressesMap(addressesMap, multiProvider) {
|
|
@@ -23,37 +31,63 @@ class HyperlaneIsmFactory extends HyperlaneApp_1.HyperlaneApp {
|
|
|
23
31
|
return new HyperlaneIsmFactory(helper.contractsMap, helper.multiProvider, (0, debug_1.debug)('hyperlane:IsmFactoryApp'));
|
|
24
32
|
}
|
|
25
33
|
async deploy(chain, config, origin) {
|
|
34
|
+
let contract;
|
|
26
35
|
if (typeof config === 'string') {
|
|
27
36
|
// TODO: return the appropriate ISM type
|
|
28
37
|
return core_1.IInterchainSecurityModule__factory.connect(config, this.multiProvider.getSignerOrProvider(chain));
|
|
29
38
|
}
|
|
30
|
-
if (config.type === types_1.
|
|
31
|
-
config.type === types_1.
|
|
39
|
+
if (config.type === types_1.IsmType.MERKLE_ROOT_MULTISIG ||
|
|
40
|
+
config.type === types_1.IsmType.MESSAGE_ID_MULTISIG) {
|
|
32
41
|
switch (config.type) {
|
|
33
|
-
case types_1.
|
|
42
|
+
case types_1.IsmType.MERKLE_ROOT_MULTISIG:
|
|
34
43
|
this.logger(`Deploying Merkle Root Multisig ISM to ${chain} for verifying ${origin}`);
|
|
35
44
|
break;
|
|
36
|
-
case types_1.
|
|
45
|
+
case types_1.IsmType.MESSAGE_ID_MULTISIG:
|
|
37
46
|
this.logger(`Deploying Message ID Multisig ISM to ${chain} for verifying ${origin}`);
|
|
38
47
|
break;
|
|
39
48
|
}
|
|
40
|
-
|
|
49
|
+
contract = await this.deployMultisigIsm(chain, config);
|
|
41
50
|
}
|
|
42
|
-
else if (config.type === types_1.
|
|
51
|
+
else if (config.type === types_1.IsmType.ROUTING) {
|
|
43
52
|
this.logger(`Deploying Routing ISM to ${chain} for verifying ${Object.keys(config.domains)}`);
|
|
44
|
-
|
|
53
|
+
contract = await this.deployRoutingIsm(chain, config);
|
|
45
54
|
}
|
|
46
|
-
else if (config.type === types_1.
|
|
55
|
+
else if (config.type === types_1.IsmType.AGGREGATION) {
|
|
47
56
|
this.logger(`Deploying Aggregation ISM to ${chain}`);
|
|
48
|
-
|
|
57
|
+
contract = await this.deployAggregationIsm(chain, config, origin);
|
|
58
|
+
}
|
|
59
|
+
else if (config.type === types_1.IsmType.OP_STACK) {
|
|
60
|
+
this.logger(`Deploying Op Stack ISM to ${chain} for verifying ${origin}`);
|
|
61
|
+
contract = await this.deployOpStackIsm(chain, config);
|
|
62
|
+
}
|
|
63
|
+
else if (config.type === types_1.IsmType.TEST_ISM) {
|
|
64
|
+
this.logger(`Deploying Test ISM to ${chain}`);
|
|
65
|
+
contract = await this.multiProvider.handleDeploy(chain, new core_1.TestIsm__factory(), []);
|
|
49
66
|
}
|
|
50
67
|
else {
|
|
51
68
|
throw new Error(`Unsupported ISM type`);
|
|
52
69
|
}
|
|
70
|
+
const ismType = config.type;
|
|
71
|
+
if (!this.deployedIsms[chain]) {
|
|
72
|
+
this.deployedIsms[chain] = {};
|
|
73
|
+
}
|
|
74
|
+
if (origin) {
|
|
75
|
+
// if we're deploying network-specific contracts (e.g. ISMs), store them as sub-entry
|
|
76
|
+
// under that network's key (`origin`)
|
|
77
|
+
if (!this.deployedIsms[chain][origin]) {
|
|
78
|
+
this.deployedIsms[chain][origin] = {};
|
|
79
|
+
}
|
|
80
|
+
this.deployedIsms[chain][origin][ismType] = contract;
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
// otherwise store the entry directly
|
|
84
|
+
this.deployedIsms[chain][ismType] = contract;
|
|
85
|
+
}
|
|
86
|
+
return contract;
|
|
53
87
|
}
|
|
54
88
|
async deployMultisigIsm(chain, config) {
|
|
55
89
|
const signer = this.multiProvider.getSigner(chain);
|
|
56
|
-
const multisigIsmFactory = config.type === types_1.
|
|
90
|
+
const multisigIsmFactory = config.type === types_1.IsmType.MERKLE_ROOT_MULTISIG
|
|
57
91
|
? this.getContracts(chain).merkleRootMultisigIsmFactory
|
|
58
92
|
: this.getContracts(chain).messageIdMultisigIsmFactory;
|
|
59
93
|
const address = await this.deployStaticAddressSet(chain, multisigIsmFactory, config.validators, config.threshold);
|
|
@@ -90,16 +124,20 @@ class HyperlaneIsmFactory extends HyperlaneApp_1.HyperlaneApp {
|
|
|
90
124
|
const address = dispatchLogs[0].args['module'];
|
|
91
125
|
return core_1.IRoutingIsm__factory.connect(address, signer);
|
|
92
126
|
}
|
|
93
|
-
async deployAggregationIsm(chain, config) {
|
|
127
|
+
async deployAggregationIsm(chain, config, origin) {
|
|
94
128
|
const signer = this.multiProvider.getSigner(chain);
|
|
95
129
|
const aggregationIsmFactory = this.getContracts(chain).aggregationIsmFactory;
|
|
96
130
|
const addresses = [];
|
|
97
131
|
for (const module of config.modules) {
|
|
98
|
-
addresses.push((await this.deploy(chain, module)).address);
|
|
132
|
+
addresses.push((await this.deploy(chain, module, origin)).address);
|
|
99
133
|
}
|
|
100
134
|
const address = await this.deployStaticAddressSet(chain, aggregationIsmFactory, addresses, config.threshold);
|
|
101
135
|
return core_1.IAggregationIsm__factory.connect(address, signer);
|
|
102
136
|
}
|
|
137
|
+
async deployOpStackIsm(chain, config) {
|
|
138
|
+
const deployedIsm = await this.multiProvider.handleDeploy(chain, new core_1.OPStackIsm__factory(), [config.nativeBridge]);
|
|
139
|
+
return deployedIsm;
|
|
140
|
+
}
|
|
103
141
|
async deployStaticAddressSet(chain, factory, values, threshold = values.length) {
|
|
104
142
|
const sorted = [...values].sort();
|
|
105
143
|
const address = await factory['getAddress(address[],uint8)'](sorted, threshold);
|
|
@@ -165,12 +203,14 @@ async function moduleCanCertainlyVerify(destModule, multiProvider, origin, desti
|
|
|
165
203
|
else {
|
|
166
204
|
// destModule is an IsmConfig
|
|
167
205
|
switch (destModule.type) {
|
|
168
|
-
case types_1.
|
|
169
|
-
case types_1.
|
|
206
|
+
case types_1.IsmType.MERKLE_ROOT_MULTISIG:
|
|
207
|
+
case types_1.IsmType.MESSAGE_ID_MULTISIG:
|
|
170
208
|
return destModule.threshold > 0;
|
|
171
|
-
case types_1.
|
|
172
|
-
|
|
173
|
-
|
|
209
|
+
case types_1.IsmType.ROUTING: {
|
|
210
|
+
const checking = moduleCanCertainlyVerify(destModule.domains[destination], multiProvider, origin, destination);
|
|
211
|
+
return checking;
|
|
212
|
+
}
|
|
213
|
+
case types_1.IsmType.AGGREGATION: {
|
|
174
214
|
let verified = 0;
|
|
175
215
|
for (const subModule of destModule.modules) {
|
|
176
216
|
const canVerify = await moduleCanCertainlyVerify(subModule, multiProvider, origin, destination);
|
|
@@ -180,6 +220,13 @@ async function moduleCanCertainlyVerify(destModule, multiProvider, origin, desti
|
|
|
180
220
|
}
|
|
181
221
|
return verified >= destModule.threshold;
|
|
182
222
|
}
|
|
223
|
+
case types_1.IsmType.OP_STACK:
|
|
224
|
+
return destModule.nativeBridge !== ethers_1.ethers.constants.AddressZero;
|
|
225
|
+
case types_1.IsmType.TEST_ISM: {
|
|
226
|
+
return true;
|
|
227
|
+
}
|
|
228
|
+
default:
|
|
229
|
+
throw new Error(`Unsupported module type: ${destModule.type}`);
|
|
183
230
|
}
|
|
184
231
|
}
|
|
185
232
|
}
|
|
@@ -188,26 +235,31 @@ async function moduleMatchesConfig(chain, moduleAddress, config, multiProvider,
|
|
|
188
235
|
if (typeof config === 'string') {
|
|
189
236
|
return (0, utils_1.eqAddress)(moduleAddress, config);
|
|
190
237
|
}
|
|
238
|
+
// If the module address is zero, it can't match any object-based config.
|
|
239
|
+
// The subsequent check of what moduleType it is will throw, so we fail here.
|
|
240
|
+
if ((0, utils_1.eqAddress)(moduleAddress, ethers_1.ethers.constants.AddressZero)) {
|
|
241
|
+
return false;
|
|
242
|
+
}
|
|
191
243
|
const provider = multiProvider.getProvider(chain);
|
|
192
244
|
const module = core_1.IInterchainSecurityModule__factory.connect(moduleAddress, provider);
|
|
193
245
|
const actualType = await module.moduleType();
|
|
194
|
-
if (actualType !== config.type)
|
|
246
|
+
if (actualType !== (0, types_1.ismTypeToModuleType)(config.type))
|
|
195
247
|
return false;
|
|
196
248
|
let matches = true;
|
|
197
249
|
switch (config.type) {
|
|
198
|
-
case types_1.
|
|
250
|
+
case types_1.IsmType.MERKLE_ROOT_MULTISIG: {
|
|
199
251
|
// A MerkleRootMultisigIsm matches if validators and threshold match the config
|
|
200
252
|
const expectedAddress = await contracts.merkleRootMultisigIsmFactory.getAddress(config.validators.sort(), config.threshold);
|
|
201
253
|
matches = (0, utils_1.eqAddress)(expectedAddress, module.address);
|
|
202
254
|
break;
|
|
203
255
|
}
|
|
204
|
-
case types_1.
|
|
256
|
+
case types_1.IsmType.MESSAGE_ID_MULTISIG: {
|
|
205
257
|
// A MessageIdMultisigIsm matches if validators and threshold match the config
|
|
206
258
|
const expectedAddress = await contracts.messageIdMultisigIsmFactory.getAddress(config.validators.sort(), config.threshold);
|
|
207
259
|
matches = (0, utils_1.eqAddress)(expectedAddress, module.address);
|
|
208
260
|
break;
|
|
209
261
|
}
|
|
210
|
-
case types_1.
|
|
262
|
+
case types_1.IsmType.ROUTING: {
|
|
211
263
|
// A RoutingIsm matches if:
|
|
212
264
|
// 1. The set of domains in the config equals those on-chain
|
|
213
265
|
// 2. The modules for each domain match the config
|
|
@@ -225,7 +277,7 @@ async function moduleMatchesConfig(chain, moduleAddress, config, multiProvider,
|
|
|
225
277
|
}
|
|
226
278
|
break;
|
|
227
279
|
}
|
|
228
|
-
case types_1.
|
|
280
|
+
case types_1.IsmType.AGGREGATION: {
|
|
229
281
|
// An AggregationIsm matches if:
|
|
230
282
|
// 1. The threshold matches the config
|
|
231
283
|
// 2. There is a bijection between on and off-chain configured modules
|
|
@@ -250,6 +302,11 @@ async function moduleMatchesConfig(chain, moduleAddress, config, multiProvider,
|
|
|
250
302
|
}
|
|
251
303
|
break;
|
|
252
304
|
}
|
|
305
|
+
case types_1.IsmType.TEST_ISM: {
|
|
306
|
+
// This is just a TestISM
|
|
307
|
+
matches = true;
|
|
308
|
+
break;
|
|
309
|
+
}
|
|
253
310
|
default: {
|
|
254
311
|
throw new Error('Unsupported ModuleType');
|
|
255
312
|
}
|
|
@@ -264,22 +321,26 @@ function collectValidators(origin, config) {
|
|
|
264
321
|
return new Set([]);
|
|
265
322
|
}
|
|
266
323
|
let validators = [];
|
|
267
|
-
if (config.type === types_1.
|
|
268
|
-
config.type === types_1.
|
|
324
|
+
if (config.type === types_1.IsmType.MERKLE_ROOT_MULTISIG ||
|
|
325
|
+
config.type === types_1.IsmType.MESSAGE_ID_MULTISIG) {
|
|
269
326
|
validators = config.validators;
|
|
270
327
|
}
|
|
271
|
-
else if (config.type === types_1.
|
|
328
|
+
else if (config.type === types_1.IsmType.ROUTING) {
|
|
272
329
|
if (Object.keys(config.domains).includes(origin)) {
|
|
273
330
|
const domainValidators = collectValidators(origin, config.domains[origin]);
|
|
274
331
|
validators = [...domainValidators];
|
|
275
332
|
}
|
|
276
333
|
}
|
|
277
|
-
else if (config.type === types_1.
|
|
334
|
+
else if (config.type === types_1.IsmType.AGGREGATION) {
|
|
278
335
|
const aggregatedValidators = config.modules.map((c) => collectValidators(origin, c));
|
|
279
336
|
aggregatedValidators.forEach((set) => {
|
|
280
337
|
validators = validators.concat([...set]);
|
|
281
338
|
});
|
|
282
339
|
}
|
|
340
|
+
else if (config.type === types_1.IsmType.TEST_ISM) {
|
|
341
|
+
// This is just a TestISM
|
|
342
|
+
return new Set([]);
|
|
343
|
+
}
|
|
283
344
|
else {
|
|
284
345
|
throw new Error('Unsupported ModuleType');
|
|
285
346
|
}
|