@hyperlane-xyz/sdk 1.0.0-beta4 → 1.0.0-beta6
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/chainConnectionConfigs.d.ts +13 -24
- package/dist/consts/chainConnectionConfigs.d.ts.map +1 -1
- package/dist/consts/chainConnectionConfigs.js +26 -139
- package/dist/consts/chainConnectionConfigs.js.map +1 -1
- package/dist/consts/chainMetadata.d.ts +80 -26
- package/dist/consts/chainMetadata.d.ts.map +1 -1
- package/dist/consts/chainMetadata.js +482 -97
- package/dist/consts/chainMetadata.js.map +1 -1
- package/dist/consts/chains.d.ts +18 -16
- package/dist/consts/chains.d.ts.map +1 -1
- package/dist/consts/chains.js +30 -16
- package/dist/consts/chains.js.map +1 -1
- package/dist/consts/environments/index.d.ts +69 -1259
- package/dist/consts/environments/index.d.ts.map +1 -1
- package/dist/consts/environments/index.js +7 -14
- package/dist/consts/environments/index.js.map +1 -1
- package/dist/consts/environments/mainnet.json +79 -639
- package/dist/consts/environments/test.json +27 -96
- package/dist/consts/environments/testnet.json +122 -0
- package/dist/contracts.d.ts +2 -1
- package/dist/contracts.d.ts.map +1 -1
- package/dist/contracts.js.map +1 -1
- package/dist/core/HyperlaneCore.d.ts +72 -1268
- package/dist/core/HyperlaneCore.d.ts.map +1 -1
- package/dist/core/HyperlaneCore.js +19 -30
- package/dist/core/HyperlaneCore.js.map +1 -1
- package/dist/core/HyperlaneCore.test.js +2 -2
- package/dist/core/HyperlaneCore.test.js.map +1 -1
- package/dist/core/TestCoreApp.d.ts +6 -12
- package/dist/core/TestCoreApp.d.ts.map +1 -1
- package/dist/core/TestCoreApp.js +7 -9
- package/dist/core/TestCoreApp.js.map +1 -1
- package/dist/core/TestCoreDeployer.d.ts +7 -5
- package/dist/core/TestCoreDeployer.d.ts.map +1 -1
- package/dist/core/TestCoreDeployer.js +17 -42
- package/dist/core/TestCoreDeployer.js.map +1 -1
- package/dist/core/contracts.d.ts +10 -22
- package/dist/core/contracts.d.ts.map +1 -1
- package/dist/core/contracts.js +8 -8
- package/dist/core/contracts.js.map +1 -1
- package/dist/core/events.d.ts +1 -2
- package/dist/core/events.d.ts.map +1 -1
- package/dist/core/message.d.ts +6 -21
- package/dist/core/message.d.ts.map +1 -1
- package/dist/core/message.js +9 -34
- package/dist/core/message.js.map +1 -1
- package/dist/core/testHyperlaneDeploy.hardhat-test.js +6 -6
- package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.d.ts +2 -2
- package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.js +7 -3
- package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
- package/dist/deploy/HyperlaneDeployer.d.ts +7 -12
- package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneDeployer.js +72 -42
- package/dist/deploy/HyperlaneDeployer.js.map +1 -1
- package/dist/deploy/core/HyperlaneCoreChecker.d.ts +3 -7
- package/dist/deploy/core/HyperlaneCoreChecker.d.ts.map +1 -1
- package/dist/deploy/core/HyperlaneCoreChecker.js +41 -127
- package/dist/deploy/core/HyperlaneCoreChecker.js.map +1 -1
- package/dist/deploy/core/HyperlaneCoreDeployer.d.ts +15 -21
- package/dist/deploy/core/HyperlaneCoreDeployer.d.ts.map +1 -1
- package/dist/deploy/core/HyperlaneCoreDeployer.js +61 -81
- package/dist/deploy/core/HyperlaneCoreDeployer.js.map +1 -1
- package/dist/deploy/core/types.d.ts +16 -29
- package/dist/deploy/core/types.d.ts.map +1 -1
- package/dist/deploy/core/types.js +8 -12
- package/dist/deploy/core/types.js.map +1 -1
- package/dist/deploy/middleware/LiquidityLayerApp.d.ts +4 -12
- package/dist/deploy/middleware/LiquidityLayerApp.d.ts.map +1 -1
- package/dist/deploy/middleware/LiquidityLayerApp.js +14 -87
- package/dist/deploy/middleware/LiquidityLayerApp.js.map +1 -1
- package/dist/deploy/middleware/LiquidityLayerRouterDeployer.d.ts +8 -19
- package/dist/deploy/middleware/LiquidityLayerRouterDeployer.d.ts.map +1 -1
- package/dist/deploy/middleware/LiquidityLayerRouterDeployer.js +18 -52
- package/dist/deploy/middleware/LiquidityLayerRouterDeployer.js.map +1 -1
- package/dist/deploy/middleware/deploy.d.ts +7 -2
- package/dist/deploy/middleware/deploy.d.ts.map +1 -1
- package/dist/deploy/middleware/deploy.js +21 -5
- package/dist/deploy/middleware/deploy.js.map +1 -1
- package/dist/deploy/proxy.d.ts +7 -6
- package/dist/deploy/proxy.d.ts.map +1 -1
- package/dist/deploy/proxy.js +18 -10
- package/dist/deploy/proxy.js.map +1 -1
- package/dist/deploy/router/HyperlaneRouterChecker.d.ts +1 -1
- package/dist/deploy/router/HyperlaneRouterChecker.d.ts.map +1 -1
- package/dist/deploy/router/HyperlaneRouterChecker.js +14 -9
- package/dist/deploy/router/HyperlaneRouterChecker.js.map +1 -1
- package/dist/deploy/router/HyperlaneRouterDeployer.d.ts.map +1 -1
- package/dist/deploy/router/HyperlaneRouterDeployer.js +17 -15
- package/dist/deploy/router/HyperlaneRouterDeployer.js.map +1 -1
- package/dist/domains.d.ts +1 -1
- package/dist/domains.d.ts.map +1 -1
- package/dist/events.js +16 -16
- package/dist/events.js.map +1 -1
- package/dist/gas/calculator.d.ts.map +1 -1
- package/dist/gas/calculator.js +11 -6
- package/dist/gas/calculator.js.map +1 -1
- package/dist/gas/calculator.test.js +6 -9
- package/dist/gas/calculator.test.js.map +1 -1
- package/dist/index.d.ts +10 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -8
- package/dist/index.js.map +1 -1
- package/dist/middleware/liquidity-layer.hardhat-test.js +20 -47
- package/dist/middleware/liquidity-layer.hardhat-test.js.map +1 -1
- package/dist/middleware.d.ts +1 -6
- package/dist/middleware.d.ts.map +1 -1
- package/dist/middleware.js +1 -5
- package/dist/middleware.js.map +1 -1
- package/dist/providers/ChainConnection.d.ts +1 -1
- package/dist/providers/ChainConnection.d.ts.map +1 -1
- package/dist/providers/ChainConnection.js +2 -3
- package/dist/providers/ChainConnection.js.map +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/proxy.d.ts +2 -4
- package/dist/proxy.d.ts.map +1 -1
- package/dist/proxy.js +1 -1
- package/dist/proxy.js.map +1 -1
- package/dist/router.d.ts +2 -1
- package/dist/router.d.ts.map +1 -1
- package/dist/test/envSubsetDeployer/app.js +2 -2
- package/dist/test/envSubsetDeployer/app.js.map +1 -1
- package/dist/test/envSubsetDeployer/check-single-chain.js +1 -1
- package/dist/test/envSubsetDeployer/check-single-chain.js.map +1 -1
- package/dist/test/envSubsetDeployer/deploy-single-chain.js +1 -1
- package/dist/test/envSubsetDeployer/deploy-single-chain.js.map +1 -1
- package/dist/types.d.ts +3 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/objects.d.ts +0 -1
- package/dist/utils/objects.d.ts.map +1 -1
- package/dist/utils/objects.js +1 -5
- package/dist/utils/objects.js.map +1 -1
- package/package.json +7 -7
- package/dist/consts/environments/testnet2.json +0 -682
- package/dist/consts/environments/testnet3.json +0 -114
- package/dist/consts/metamask.d.ts +0 -17
- package/dist/consts/metamask.d.ts.map +0 -1
- package/dist/consts/metamask.js +0 -50
- package/dist/consts/metamask.js.map +0 -1
- package/dist/deploy/middleware/TokenBridgeApp.d.ts +0 -26
- package/dist/deploy/middleware/TokenBridgeApp.d.ts.map +0 -1
- package/dist/deploy/middleware/TokenBridgeApp.js +0 -115
- package/dist/deploy/middleware/TokenBridgeApp.js.map +0 -1
- package/dist/deploy/middleware/TokenBridgeRouterDeployer.d.ts +0 -33
- package/dist/deploy/middleware/TokenBridgeRouterDeployer.d.ts.map +0 -1
- package/dist/deploy/middleware/TokenBridgeRouterDeployer.js +0 -93
- package/dist/deploy/middleware/TokenBridgeRouterDeployer.js.map +0 -1
- package/dist/deploy/middleware/V2CompatibilityMiddlewareDeployer.d.ts +0 -17
- package/dist/deploy/middleware/V2CompatibilityMiddlewareDeployer.d.ts.map +0 -1
- package/dist/deploy/middleware/V2CompatibilityMiddlewareDeployer.js +0 -42
- package/dist/deploy/middleware/V2CompatibilityMiddlewareDeployer.js.map +0 -1
- package/dist/middleware/accounts.test.d.ts +0 -2
- package/dist/middleware/accounts.test.d.ts.map +0 -1
- package/dist/middleware/accounts.test.js +0 -61
- package/dist/middleware/accounts.test.js.map +0 -1
- package/dist/middleware/queries.test.d.ts +0 -2
- package/dist/middleware/queries.test.d.ts.map +0 -1
- package/dist/middleware/queries.test.js +0 -69
- package/dist/middleware/queries.test.js.map +0 -1
- package/dist/middleware/tokenbridge.hardhat-test.d.ts +0 -2
- package/dist/middleware/tokenbridge.hardhat-test.d.ts.map +0 -1
- package/dist/middleware/tokenbridge.hardhat-test.js +0 -89
- package/dist/middleware/tokenbridge.hardhat-test.js.map +0 -1
- package/dist/tokenBridge.d.ts +0 -10
- package/dist/tokenBridge.d.ts.map +0 -1
- package/dist/tokenBridge.js +0 -9
- package/dist/tokenBridge.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/deploy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/deploy.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EAGzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,oBAAY,uBAAuB,GAAG,YAAY,CAAC;AAEnD,8BAAsB,wBAAwB,CAC5C,KAAK,SAAS,SAAS,EACvB,sBAAsB,SAAS,YAAY,EAC3C,yBAAyB,SAAS,eAAe,EACjD,mBAAmB,SAAS,eAAe,CAC3C,SAAQ,uBAAuB,CAC/B,KAAK,EACL,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,CACpB;IACC,WAAW,CACT,MAAM,EAAE,sBAAsB,EAC9B,eAAe,EAAE,eAAe,GAC/B,MAAM;CAcV;AAED,qBAAa,yBAAyB,CACpC,KAAK,SAAS,SAAS,CACvB,SAAQ,wBAAwB,CAChC,KAAK,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,CAC3B;IAIG,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC;IACpC,SAAS,CAAC,WAAW;gBAHrB,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC,EACzC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAC1B,WAAW,SAAa;IAO9B,eAAe,CACnB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,0BAA0B,CAAC;CAavC;AAED,oBAAY,qBAAqB,GAAG,YAAY,CAAC;AAEjD,qBAAa,uBAAuB,CAClC,KAAK,SAAS,SAAS,CACvB,SAAQ,wBAAwB,CAChC,KAAK,EACL,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,CACzB;IAIG,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC;IAEpC,SAAS,CAAC,WAAW;gBAJrB,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC,EACvC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAE1B,WAAW,SAAa;IAO9B,eAAe,CACnB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,wBAAwB,CAAC;CAarC"}
|
|
@@ -9,11 +9,27 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.InterchainQueryDeployer = exports.InterchainAccountDeployer = void 0;
|
|
12
|
+
exports.InterchainQueryDeployer = exports.InterchainAccountDeployer = exports.MiddlewareRouterDeployer = void 0;
|
|
13
13
|
const core_1 = require("@hyperlane-xyz/core");
|
|
14
14
|
const middleware_1 = require("../../middleware");
|
|
15
15
|
const HyperlaneRouterDeployer_1 = require("../router/HyperlaneRouterDeployer");
|
|
16
|
-
class
|
|
16
|
+
class MiddlewareRouterDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterDeployer {
|
|
17
|
+
getInitArgs(config, routerInterface) {
|
|
18
|
+
const initArgs = [
|
|
19
|
+
config.mailbox,
|
|
20
|
+
config.interchainGasPaymaster,
|
|
21
|
+
];
|
|
22
|
+
let functionName = 'initialize(address,address)';
|
|
23
|
+
if (config.interchainSecurityModule) {
|
|
24
|
+
functionName = 'initialize(address,address,address)';
|
|
25
|
+
initArgs.push(config.interchainSecurityModule);
|
|
26
|
+
}
|
|
27
|
+
// @ts-ignore Compiler can't infer correct signature
|
|
28
|
+
return routerInterface.encodeFunctionData(functionName, initArgs);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.MiddlewareRouterDeployer = MiddlewareRouterDeployer;
|
|
32
|
+
class InterchainAccountDeployer extends MiddlewareRouterDeployer {
|
|
17
33
|
constructor(multiProvider, configMap, core, create2salt = 'asdasdsd') {
|
|
18
34
|
super(multiProvider, configMap, middleware_1.interchainAccountFactories, {});
|
|
19
35
|
this.core = core;
|
|
@@ -23,7 +39,7 @@ class InterchainAccountDeployer extends HyperlaneRouterDeployer_1.HyperlaneRoute
|
|
|
23
39
|
// If no custom logic is needed, call deployContract for the router
|
|
24
40
|
deployContracts(chain, config) {
|
|
25
41
|
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
-
const initCalldata =
|
|
42
|
+
const initCalldata = this.getInitArgs(config, core_1.InterchainAccountRouter__factory.createInterface());
|
|
27
43
|
const router = yield this.deployContract(chain, 'router', [], {
|
|
28
44
|
create2Salt: this.create2salt + 'router',
|
|
29
45
|
initCalldata,
|
|
@@ -35,7 +51,7 @@ class InterchainAccountDeployer extends HyperlaneRouterDeployer_1.HyperlaneRoute
|
|
|
35
51
|
}
|
|
36
52
|
}
|
|
37
53
|
exports.InterchainAccountDeployer = InterchainAccountDeployer;
|
|
38
|
-
class InterchainQueryDeployer extends
|
|
54
|
+
class InterchainQueryDeployer extends MiddlewareRouterDeployer {
|
|
39
55
|
constructor(multiProvider, configMap, core,
|
|
40
56
|
// TODO replace salt with 'hyperlane' before next redeploy
|
|
41
57
|
create2salt = 'asdasdsd') {
|
|
@@ -47,7 +63,7 @@ class InterchainQueryDeployer extends HyperlaneRouterDeployer_1.HyperlaneRouterD
|
|
|
47
63
|
// If no custom logic is needed, call deployContract for the router
|
|
48
64
|
deployContracts(chain, config) {
|
|
49
65
|
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
-
const initCalldata =
|
|
66
|
+
const initCalldata = this.getInitArgs(config, core_1.InterchainQueryRouter__factory.createInterface());
|
|
51
67
|
const router = yield this.deployContract(chain, 'router', [], {
|
|
52
68
|
create2Salt: this.create2salt + 'router',
|
|
53
69
|
initCalldata,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/deploy/middleware/deploy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAG6B;
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/deploy/middleware/deploy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAG6B;AAI7B,iDAO0B;AAI1B,+EAA4E;AAK5E,MAAsB,wBAKpB,SAAQ,iDAKT;IACC,WAAW,CACT,MAA8B,EAC9B,eAAgC;QAEhC,MAAM,QAAQ,GAAgD;YAC5D,MAAM,CAAC,OAAO;YACd,MAAM,CAAC,sBAAsB;SAC9B,CAAC;QACF,IAAI,YAAY,GAAG,6BAA6B,CAAC;QACjD,IAAI,MAAM,CAAC,wBAAwB,EAAE;YACnC,YAAY,GAAG,qCAAqC,CAAC;YACrD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;SAChD;QAED,oDAAoD;QACpD,OAAO,eAAe,CAAC,kBAAkB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACpE,CAAC;CACF;AA5BD,4DA4BC;AAED,MAAa,yBAEX,SAAQ,wBAKT;IACC,YACE,aAAmC,EACnC,SAAmD,EACzC,IAA0B,EAC1B,cAAc,UAAU;QAElC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,uCAA0B,EAAE,EAAE,CAAC,CAAC;QAHtD,SAAI,GAAJ,IAAI,CAAsB;QAC1B,gBAAW,GAAX,WAAW,CAAa;IAGpC,CAAC;IAED,+CAA+C;IAC/C,mEAAmE;IAC7D,eAAe,CACnB,KAAY,EACZ,MAA+B;;YAE/B,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CACnC,MAAM,EACN,uCAAgC,CAAC,eAAe,EAAE,CACnD,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;gBAC5D,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,QAAQ;gBACxC,YAAY;aACb,CAAC,CAAC;YACH,OAAO;gBACL,MAAM;aACP,CAAC;QACJ,CAAC;KAAA;CACF;AAnCD,8DAmCC;AAID,MAAa,uBAEX,SAAQ,wBAKT;IACC,YACE,aAAmC,EACnC,SAAiD,EACvC,IAA0B;IACpC,0DAA0D;IAChD,cAAc,UAAU;QAElC,KAAK,CAAC,aAAa,EAAE,SAAS,EAAE,qCAAwB,EAAE,EAAE,CAAC,CAAC;QAJpD,SAAI,GAAJ,IAAI,CAAsB;QAE1B,gBAAW,GAAX,WAAW,CAAa;IAGpC,CAAC;IAED,+CAA+C;IAC/C,mEAAmE;IAC7D,eAAe,CACnB,KAAY,EACZ,MAA6B;;YAE7B,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CACnC,MAAM,EACN,qCAA8B,CAAC,eAAe,EAAE,CACjD,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;gBAC5D,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,QAAQ;gBACxC,YAAY;aACb,CAAC,CAAC;YACH,OAAO;gBACL,MAAM;aACP,CAAC;QACJ,CAAC;KAAA;CACF;AApCD,0DAoCC"}
|
package/dist/deploy/proxy.d.ts
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
2
|
import type { types } from '@hyperlane-xyz/utils';
|
|
3
|
-
import {
|
|
3
|
+
import { TransparentProxyAddresses } from '../proxy';
|
|
4
4
|
import { ChainName } from '../types';
|
|
5
5
|
import { CheckerViolation } from './types';
|
|
6
|
-
export interface
|
|
7
|
-
type:
|
|
6
|
+
export interface ProxyViolation extends CheckerViolation {
|
|
7
|
+
type: TransparentProxyAddresses['kind'];
|
|
8
8
|
data: {
|
|
9
|
-
|
|
9
|
+
proxyAddresses: TransparentProxyAddresses;
|
|
10
10
|
name: string;
|
|
11
11
|
};
|
|
12
12
|
actual: string;
|
|
13
13
|
expected: string;
|
|
14
14
|
}
|
|
15
|
-
export declare function
|
|
16
|
-
export declare function
|
|
15
|
+
export declare function proxyImplementation(provider: ethers.providers.Provider, proxy: types.Address): Promise<types.Address>;
|
|
16
|
+
export declare function proxyAdmin(provider: ethers.providers.Provider, proxy: types.Address): Promise<types.Address>;
|
|
17
|
+
export declare function proxyViolation<Chain extends ChainName>(chain: Chain, name: string, proxyAddresses: TransparentProxyAddresses, actual: types.Address): ProxyViolation;
|
|
17
18
|
//# sourceMappingURL=proxy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,IAAI,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,EAAE;QACJ,cAAc,EAAE,yBAAyB,CAAC;QAC1C,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,KAAK,CAAC,OAAO,GACnB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAOxB;AAED,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,KAAK,CAAC,OAAO,GACnB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAOxB;AAED,wBAAgB,cAAc,CAAC,KAAK,SAAS,SAAS,EACpD,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,yBAAyB,EACzC,MAAM,EAAE,KAAK,CAAC,OAAO,GACpB,cAAc,CAWhB"}
|
package/dist/deploy/proxy.js
CHANGED
|
@@ -9,27 +9,35 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.proxyViolation = exports.proxyAdmin = exports.proxyImplementation = void 0;
|
|
13
13
|
const ethers_1 = require("ethers");
|
|
14
|
-
function
|
|
14
|
+
function proxyImplementation(provider, proxy) {
|
|
15
15
|
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
-
//
|
|
17
|
-
const storageValue = yield provider.getStorageAt(
|
|
16
|
+
// Hardcoded storage slot for implementation per EIP-1967
|
|
17
|
+
const storageValue = yield provider.getStorageAt(proxy, '0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc');
|
|
18
18
|
return ethers_1.ethers.utils.getAddress(storageValue.slice(26));
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
|
-
exports.
|
|
22
|
-
function
|
|
21
|
+
exports.proxyImplementation = proxyImplementation;
|
|
22
|
+
function proxyAdmin(provider, proxy) {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
// Hardcoded storage slot for admin per EIP-1967
|
|
25
|
+
const storageValue = yield provider.getStorageAt(proxy, '0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103');
|
|
26
|
+
return ethers_1.ethers.utils.getAddress(storageValue.slice(26));
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
exports.proxyAdmin = proxyAdmin;
|
|
30
|
+
function proxyViolation(chain, name, proxyAddresses, actual) {
|
|
23
31
|
return {
|
|
24
32
|
chain,
|
|
25
|
-
type:
|
|
33
|
+
type: proxyAddresses.kind,
|
|
26
34
|
actual,
|
|
27
|
-
expected:
|
|
35
|
+
expected: proxyAddresses.implementation,
|
|
28
36
|
data: {
|
|
29
37
|
name,
|
|
30
|
-
|
|
38
|
+
proxyAddresses,
|
|
31
39
|
},
|
|
32
40
|
};
|
|
33
41
|
}
|
|
34
|
-
exports.
|
|
42
|
+
exports.proxyViolation = proxyViolation;
|
|
35
43
|
//# sourceMappingURL=proxy.js.map
|
package/dist/deploy/proxy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAmBhC,SAAsB,
|
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAmBhC,SAAsB,mBAAmB,CACvC,QAAmC,EACnC,KAAoB;;QAEpB,yDAAyD;QACzD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;QACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CAAA;AAVD,kDAUC;AAED,SAAsB,UAAU,CAC9B,QAAmC,EACnC,KAAoB;;QAEpB,gDAAgD;QAChD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;QACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CAAA;AAVD,gCAUC;AAED,SAAgB,cAAc,CAC5B,KAAY,EACZ,IAAY,EACZ,cAAyC,EACzC,MAAqB;IAErB,OAAO;QACL,KAAK;QACL,IAAI,EAAE,cAAc,CAAC,IAAI;QACzB,MAAM;QACN,QAAQ,EAAE,cAAc,CAAC,cAAc;QACvC,IAAI,EAAE;YACJ,IAAI;YACJ,cAAc;SACf;KACF,CAAC;AACJ,CAAC;AAhBD,wCAgBC"}
|
|
@@ -7,8 +7,8 @@ import { RouterConfig } from './types';
|
|
|
7
7
|
export declare class HyperlaneRouterChecker<Chain extends ChainName, App extends HyperlaneApp<Contracts, Chain>, Config extends RouterConfig, Contracts extends RouterContracts> extends HyperlaneAppChecker<Chain, App, Config> {
|
|
8
8
|
checkOwnership(chain: Chain): Promise<void>;
|
|
9
9
|
checkChain(chain: Chain): Promise<void>;
|
|
10
|
+
checkHyperlaneConnectionClient(chain: Chain): Promise<void>;
|
|
10
11
|
checkEnrolledRouters(chain: Chain): Promise<void>;
|
|
11
|
-
checkConnectionManager(chain: Chain): Promise<void>;
|
|
12
12
|
ownables(chain: Chain): Ownable[];
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=HyperlaneRouterChecker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneRouterChecker.d.ts","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HyperlaneRouterChecker.d.ts","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG9C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAa,sBAAsB,CACjC,KAAK,SAAS,SAAS,EACvB,GAAG,SAAS,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,EAC1C,MAAM,SAAS,YAAY,EAC3B,SAAS,SAAS,eAAe,CACjC,SAAQ,mBAAmB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC;IAC/C,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrC,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvC,8BAA8B,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3D,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAavD,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,EAAE;CAGlC"}
|
|
@@ -10,6 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.HyperlaneRouterChecker = void 0;
|
|
13
|
+
const ethers_1 = require("ethers");
|
|
13
14
|
const utils_1 = require("@hyperlane-xyz/utils");
|
|
14
15
|
const chainMetadata_1 = require("../../consts/chainMetadata");
|
|
15
16
|
const HyperlaneAppChecker_1 = require("../HyperlaneAppChecker");
|
|
@@ -21,9 +22,21 @@ class HyperlaneRouterChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
21
22
|
}
|
|
22
23
|
checkChain(chain) {
|
|
23
24
|
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
yield this.checkHyperlaneConnectionClient(chain);
|
|
24
26
|
yield this.checkEnrolledRouters(chain);
|
|
25
27
|
yield this.checkOwnership(chain);
|
|
26
|
-
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
checkHyperlaneConnectionClient(chain) {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
const router = this.app.getContracts(chain).router;
|
|
33
|
+
const mailbox = yield router.mailbox();
|
|
34
|
+
const igp = yield router.interchainGasPaymaster();
|
|
35
|
+
const ism = yield router.interchainSecurityModule();
|
|
36
|
+
utils_1.utils.assert(mailbox, this.configMap[chain].mailbox);
|
|
37
|
+
utils_1.utils.assert(igp, this.configMap[chain].interchainGasPaymaster);
|
|
38
|
+
utils_1.utils.assert(ism, this.configMap[chain].interchainSecurityModule ||
|
|
39
|
+
ethers_1.ethers.constants.AddressZero);
|
|
27
40
|
});
|
|
28
41
|
}
|
|
29
42
|
checkEnrolledRouters(chain) {
|
|
@@ -37,14 +50,6 @@ class HyperlaneRouterChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
37
50
|
})));
|
|
38
51
|
});
|
|
39
52
|
}
|
|
40
|
-
checkConnectionManager(chain) {
|
|
41
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
-
const router = this.app.getContracts(chain).router;
|
|
43
|
-
const expectedConnectionManager = this.configMap[chain].connectionManager;
|
|
44
|
-
const routerConnectionManager = yield router.abacusConnectionManager();
|
|
45
|
-
utils_1.utils.assert(expectedConnectionManager === routerConnectionManager, `Incorrect ConnectionManager for ${chain}. Expected ${expectedConnectionManager}, found ${routerConnectionManager}`);
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
53
|
ownables(chain) {
|
|
49
54
|
return [this.app.getContracts(chain).router];
|
|
50
55
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneRouterChecker.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"HyperlaneRouterChecker.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAGhC,gDAA6C;AAG7C,8DAA2D;AAG3D,gEAA6D;AAI7D,MAAa,sBAKX,SAAQ,yCAAuC;IAC/C,cAAc,CAAC,KAAY;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC;IAEK,UAAU,CAAC,KAAY;;YAC3B,MAAM,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;YACjD,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;KAAA;IAEK,8BAA8B,CAAC,KAAY;;YAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;YACnD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,sBAAsB,EAAE,CAAC;YAClD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,wBAAwB,EAAE,CAAC;YACpD,aAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;YACrD,aAAK,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,CAAC;YAChE,aAAK,CAAC,MAAM,CACV,GAAG,EACH,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,wBAAwB;gBAC5C,eAAM,CAAC,SAAS,CAAC,WAAW,CAC/B,CAAC;QACJ,CAAC;KAAA;IAEK,oBAAoB,CAAC,KAAY;;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;YAEnD,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAO,WAAW,EAAE,EAAE;gBACrD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;gBAC/D,MAAM,aAAa,GAAG,6BAAa,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;gBACpD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBACpD,aAAK,CAAC,MAAM,CAAC,OAAO,KAAK,aAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;YACzE,CAAC,CAAA,CAAC,CACH,CAAC;QACJ,CAAC;KAAA;IAED,QAAQ,CAAC,KAAY;QACnB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;CACF;AAhDD,wDAgDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneRouterDeployer.d.ts","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterDeployer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HyperlaneRouterDeployer.d.ts","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterDeployer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE1E,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,8BAAsB,uBAAuB,CAC3C,KAAK,SAAS,SAAS,EACvB,MAAM,SAAS,YAAY,EAC3B,SAAS,SAAS,eAAe,EACjC,SAAS,SAAS,eAAe,CACjC,SAAQ,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;gBAE5D,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,EAClC,SAAS,EAAE,SAAS,EACpB,OAAO,CAAC,EAAE,eAAe;IAQrB,oBAAoB,CACxB,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,GACvC,OAAO,CAAC,IAAI,CAAC;IAgCV,mBAAmB,CACvB,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,GAC7C,OAAO,CAAC,IAAI,CAAC;IAiDV,iBAAiB,CACrB,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,GACvC,OAAO,CAAC,IAAI,CAAC;IAsBV,MAAM,CACV,iBAAiB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,GACpD,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;CASvC"}
|
|
@@ -14,6 +14,7 @@ const debug_1 = require("debug");
|
|
|
14
14
|
const ethers_1 = require("ethers");
|
|
15
15
|
const utils_1 = require("@hyperlane-xyz/utils");
|
|
16
16
|
const chainMetadata_1 = require("../../consts/chainMetadata");
|
|
17
|
+
const domains_1 = require("../../domains");
|
|
17
18
|
const objects_1 = require("../../utils/objects");
|
|
18
19
|
const HyperlaneDeployer_1 = require("../HyperlaneDeployer");
|
|
19
20
|
class HyperlaneRouterDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
@@ -25,13 +26,12 @@ class HyperlaneRouterDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
|
25
26
|
this.logger(`Initializing connection clients (if not already)...`);
|
|
26
27
|
yield (0, objects_1.promiseObjAll)((0, objects_1.objMap)(contractsMap, (local, contracts) => __awaiter(this, void 0, void 0, function* () {
|
|
27
28
|
const chainConnection = this.multiProvider.getChainConnection(local);
|
|
28
|
-
// set
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
yield chainConnection.handleTx(contracts.router.setAbacusConnectionManager(this.configMap[local].connectionManager));
|
|
29
|
+
// set mailbox if not already set (and configured)
|
|
30
|
+
const mailbox = this.configMap[local].mailbox;
|
|
31
|
+
if (mailbox &&
|
|
32
|
+
(yield contracts.router.mailbox()) === ethers_1.ethers.constants.AddressZero) {
|
|
33
|
+
this.logger(`Set mailbox on ${local}`);
|
|
34
|
+
yield chainConnection.handleTx(contracts.router.setMailbox(mailbox));
|
|
35
35
|
}
|
|
36
36
|
// set interchain gas paymaster if not already set (and configured)
|
|
37
37
|
const interchainGasPaymaster = this.configMap[local].interchainGasPaymaster;
|
|
@@ -54,26 +54,28 @@ class HyperlaneRouterDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
|
54
54
|
const deployedChains = Object.keys(contractsMap);
|
|
55
55
|
for (const [chain, contracts] of Object.entries(contractsMap)) {
|
|
56
56
|
const local = chain;
|
|
57
|
+
this.logger({ local });
|
|
57
58
|
const chainConnection = this.multiProvider.getChainConnection(local);
|
|
58
59
|
// only enroll chains which are deployed
|
|
59
60
|
const deployedRemoteChains = this.multiProvider
|
|
60
61
|
.remoteChains(local)
|
|
61
62
|
.filter((c) => deployedChains.includes(c));
|
|
63
|
+
this.logger({ deployedRemoteChains });
|
|
62
64
|
const enrollEntries = yield Promise.all(deployedRemoteChains.map((remote) => __awaiter(this, void 0, void 0, function* () {
|
|
63
65
|
const remoteDomain = chainMetadata_1.chainMetadata[remote].id;
|
|
64
66
|
const current = yield contracts.router.routers(remoteDomain);
|
|
65
67
|
const expected = utils_1.utils.addressToBytes32(contractsMap[remote].router.address);
|
|
66
|
-
return current !== expected ? [
|
|
68
|
+
return current !== expected ? [remoteDomain, expected] : undefined;
|
|
67
69
|
})));
|
|
68
70
|
const entries = enrollEntries.filter((entry) => entry !== undefined);
|
|
69
|
-
|
|
71
|
+
this.logger({ entries });
|
|
72
|
+
const domains = entries.map(([id]) => id);
|
|
70
73
|
const addresses = entries.map(([, address]) => address);
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
}
|
|
74
|
+
yield _super.runIfOwner.call(this, local, contracts.router, () => __awaiter(this, void 0, void 0, function* () {
|
|
75
|
+
const chains = domains.map((id) => domains_1.DomainIdToChainName[id]);
|
|
76
|
+
this.logger(`Enroll remote (${chains}) routers on ${local}`);
|
|
77
|
+
yield chainConnection.handleTx(contracts.router.enrollRemoteRouters(domains, addresses, chainConnection.overrides));
|
|
78
|
+
}));
|
|
77
79
|
}
|
|
78
80
|
});
|
|
79
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterDeployer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iCAA8B;AAC9B,mCAAgC;AAEhC,gDAA6C;AAE7C,8DAA2D;
|
|
1
|
+
{"version":3,"file":"HyperlaneRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterDeployer.ts"],"names":[],"mappings":"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"}
|
package/dist/domains.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { LooseChainMap } from './types';
|
|
2
|
-
export declare const DomainIdToChainName: Record<number, "polygon" | "
|
|
2
|
+
export declare const DomainIdToChainName: Record<number, "polygon" | "alfajores" | "arbitrum" | "arbitrumgoerli" | "avalanche" | "bsc" | "bsctestnet" | "celo" | "ethereum" | "fuji" | "goerli" | "moonbasealpha" | "moonbeam" | "mumbai" | "optimism" | "optimismgoerli" | "test1" | "test2" | "test3">;
|
|
3
3
|
export declare const ChainNameToDomainId: LooseChainMap<number>;
|
|
4
4
|
//# sourceMappingURL=domains.d.ts.map
|
package/dist/domains.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../src/domains.ts"],"names":[],"mappings":"AAEA,OAAO,EAAa,aAAa,EAAE,MAAM,SAAS,CAAC;AAEnD,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../src/domains.ts"],"names":[],"mappings":"AAEA,OAAO,EAAa,aAAa,EAAE,MAAM,SAAS,CAAC;AAEnD,eAAO,MAAM,mBAAmB,gQAMF,CAAC;AAE/B,eAAO,MAAM,mBAAmB,uBAEN,CAAC"}
|
package/dist/events.js
CHANGED
|
@@ -68,8 +68,8 @@ function findAnnotatedSingleEvent(multiprovider, chain, contract, filter, startB
|
|
|
68
68
|
exports.findAnnotatedSingleEvent = findAnnotatedSingleEvent;
|
|
69
69
|
function getEvents(multiprovider, chain, contract, filter, startBlock, endBlock) {
|
|
70
70
|
return __awaiter(this, void 0, void 0, function* () {
|
|
71
|
-
const
|
|
72
|
-
if (
|
|
71
|
+
const mustPaginate = !!chainMetadata_1.chainMetadata[chain].publicRpcUrls[0].pagination;
|
|
72
|
+
if (mustPaginate) {
|
|
73
73
|
return getPaginatedEvents(multiprovider, chain, contract, filter, startBlock, endBlock);
|
|
74
74
|
}
|
|
75
75
|
return contract.queryFilter(filter, startBlock, endBlock);
|
|
@@ -78,8 +78,8 @@ function getEvents(multiprovider, chain, contract, filter, startBlock, endBlock)
|
|
|
78
78
|
exports.getEvents = getEvents;
|
|
79
79
|
function findEvent(multiprovider, chain, contract, filter, startBlock) {
|
|
80
80
|
return __awaiter(this, void 0, void 0, function* () {
|
|
81
|
-
const
|
|
82
|
-
if (
|
|
81
|
+
const mustPaginate = !!chainMetadata_1.chainMetadata[chain].publicRpcUrls[0].pagination;
|
|
82
|
+
if (mustPaginate) {
|
|
83
83
|
return findFromPaginatedEvents(multiprovider, chain, contract, filter, startBlock);
|
|
84
84
|
}
|
|
85
85
|
return contract.queryFilter(filter, startBlock);
|
|
@@ -88,15 +88,15 @@ function findEvent(multiprovider, chain, contract, filter, startBlock) {
|
|
|
88
88
|
exports.findEvent = findEvent;
|
|
89
89
|
function getPaginatedEvents(multiprovider, chain, contract, filter, startBlock, endBlock) {
|
|
90
90
|
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
const
|
|
92
|
-
if (!
|
|
91
|
+
const pagination = chainMetadata_1.chainMetadata[chain].publicRpcUrls[0].pagination;
|
|
92
|
+
if (!pagination) {
|
|
93
93
|
throw new Error('Domain need not be paginated');
|
|
94
94
|
}
|
|
95
95
|
// get the first block by params
|
|
96
96
|
// or domain deployment block
|
|
97
97
|
const firstBlock = startBlock
|
|
98
|
-
? Math.max(startBlock,
|
|
99
|
-
:
|
|
98
|
+
? Math.max(startBlock, pagination.from)
|
|
99
|
+
: pagination.from;
|
|
100
100
|
// get the last block by params
|
|
101
101
|
// or current block number
|
|
102
102
|
let lastBlock;
|
|
@@ -109,8 +109,8 @@ function getPaginatedEvents(multiprovider, chain, contract, filter, startBlock,
|
|
|
109
109
|
}
|
|
110
110
|
// query domain pagination limit at a time, concurrently
|
|
111
111
|
const eventArrayPromises = [];
|
|
112
|
-
for (let from = firstBlock; from <= lastBlock; from +=
|
|
113
|
-
const nextFrom = from +
|
|
112
|
+
for (let from = firstBlock; from <= lastBlock; from += pagination.blocks) {
|
|
113
|
+
const nextFrom = from + pagination.blocks;
|
|
114
114
|
const to = Math.min(nextFrom, lastBlock);
|
|
115
115
|
const eventArrayPromise = contract.queryFilter(filter, from, to);
|
|
116
116
|
eventArrayPromises.push(eventArrayPromise);
|
|
@@ -126,15 +126,15 @@ function getPaginatedEvents(multiprovider, chain, contract, filter, startBlock,
|
|
|
126
126
|
}
|
|
127
127
|
function findFromPaginatedEvents(multiprovider, chain, contract, filter, startBlock, endBlock) {
|
|
128
128
|
return __awaiter(this, void 0, void 0, function* () {
|
|
129
|
-
const
|
|
130
|
-
if (!
|
|
129
|
+
const pagination = chainMetadata_1.chainMetadata[chain].publicRpcUrls[0].pagination;
|
|
130
|
+
if (!pagination) {
|
|
131
131
|
throw new Error('Domain need not be paginated');
|
|
132
132
|
}
|
|
133
133
|
// get the first block by params
|
|
134
134
|
// or domain deployment block
|
|
135
135
|
const firstBlock = startBlock
|
|
136
|
-
? Math.max(startBlock,
|
|
137
|
-
:
|
|
136
|
+
? Math.max(startBlock, pagination.from)
|
|
137
|
+
: pagination.from;
|
|
138
138
|
// get the last block by params
|
|
139
139
|
// or current block number
|
|
140
140
|
let lastBlock;
|
|
@@ -147,8 +147,8 @@ function findFromPaginatedEvents(multiprovider, chain, contract, filter, startBl
|
|
|
147
147
|
}
|
|
148
148
|
// query domain pagination limit at a time, concurrently
|
|
149
149
|
// eslint-disable-next-line for-direction
|
|
150
|
-
for (let end = lastBlock; end > firstBlock; end -=
|
|
151
|
-
const nextEnd = end -
|
|
150
|
+
for (let end = lastBlock; end > firstBlock; end -= pagination.blocks) {
|
|
151
|
+
const nextEnd = end - pagination.blocks;
|
|
152
152
|
const from = Math.max(nextEnd, firstBlock);
|
|
153
153
|
const queriedEvents = yield contract.queryFilter(filter, from, end);
|
|
154
154
|
if (queriedEvents.length > 0) {
|
package/dist/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":";;;;;;;;;;;;AAOA,0DAAuD;AAIvD,MAAa,SAAS;IAKpB,YACE,MAAc,EACd,OAAqC,EACrC,KAAQ,EACR,2BAA2B,GAAG,KAAK;;QAEnC,IAAI,CAAC,2BAA2B,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;SACrE;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,MAAA,KAAK,CAAC,cAAc,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,MAAM,CAAO,SAAS,CACpB,MAAc,EACd,KAAQ;;YAER,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,qBAAqB,EAAE,CAAC;YACpD,OAAO,IAAI,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;IAED,MAAM,CAAO,UAAU,CACrB,MAAc,EACd,MAAW;;YAEX,OAAO,OAAO,CAAC,GAAG,CAChB,MAAM,CAAC,GAAG,CAAC,CAAO,KAAK,EAAE,EAAE,gDAAC,OAAA,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA,GAAA,CAAC,CAChE,CAAC;QACJ,CAAC;KAAA;IAED,IAAI,eAAe;;QACjB,2EAA2E;QAC3E,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CACpC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAC9C,0CAAE,OAAO,CAAC;QACX,IAAI,CAAC,OAAO;YACV,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;IACtC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;IAClC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IAChC,CAAC;CACF;AA3DD,8BA2DC;AAWD,SAAsB,oBAAoB,CACxC,aAAiC,EACjC,KAAgB,EAChB,QAAuB,EACvB,MAA2B,EAC3B,UAAmB,EACnB,QAAiB;;QAEjB,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,aAAa,EACb,KAAK,EACL,QAAQ,EACR,MAAM,EACN,UAAU,EACV,QAAQ,CACT,CAAC;QACF,OAAO,SAAS,CAAC,UAAU,CAAC,6BAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CAAA;AAjBD,oDAiBC;AAED,SAAsB,wBAAwB,CAC5C,aAAiC,EACjC,KAAgB,EAChB,QAAuB,EACvB,MAA2B,EAC3B,UAAmB;;QAEnB,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,aAAa,EACb,KAAK,EACL,QAAQ,EACR,MAAM,EACN,UAAU,CACX,CAAC;QACF,OAAO,SAAS,CAAC,UAAU,CAAC,6BAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CAAA;AAfD,4DAeC;AAED,SAAsB,SAAS,CAC7B,aAAiC,EACjC,KAAgB,EAChB,QAAuB,EACvB,MAA2B,EAC3B,UAAmB,EACnB,QAAiB;;QAEjB,MAAM,
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../src/gas/calculator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAuB,MAAM,QAAQ,CAAC;AAKxD,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,aAAa,EACd,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../src/gas/calculator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAuB,MAAM,QAAQ,CAAC;AAKxD,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,aAAa,EACd,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAG9C,OAAO,EAA6B,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAiC7E,MAAM,WAAW,6BAA6B;IAC5C;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,oBAAY,aAAa,CACvB,KAAK,SAAS,SAAS,EACvB,WAAW,SAAS,KAAK,IACvB;IACF,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,qBAAa,uBAAuB,CAAC,KAAK,SAAS,SAAS;IAC1D,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,aAAa,CAAuB;IAE5C,OAAO,CAAC,gBAAgB,CAAmB;IAE3C,OAAO,CAAC,yBAAyB,CAAqB;IACtD,OAAO,CAAC,wBAAwB,CAAmB;IAEnD,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,eAAe,EAChD,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,EACvD,MAAM,CAAC,EAAE,6BAA6B,GACrC,uBAAuB,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBAMnD,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,EACnC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAC1B,MAAM,CAAC,EAAE,6BAA6B;IAoBxC;;;;;;;;;;OAUG;IACG,qBAAqB,CAAC,WAAW,SAAS,KAAK,EACnD,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,EACnC,WAAW,EAAE,WAAW,EACxB,GAAG,EAAE,SAAS,GACb,OAAO,CAAC,SAAS,CAAC;IAgBrB;;;;;;;;;;;;;;OAcG;IACG,2BAA2B,CAAC,WAAW,SAAS,KAAK,EACzD,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,EACnC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,SAAS,CAAC;IAOrB;;;;;;;;;;OAUG;cACa,yBAAyB,CAAC,WAAW,SAAS,KAAK,EACjE,OAAO,EAAE,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,GACzC,OAAO,CAAC,SAAS,CAAC;IASrB;;;;;;;;;OASG;cACa,oBAAoB,CAClC,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,KAAK,EACd,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,SAAS,CAAC;IAiBrB;;;;OAIG;cACa,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC;IAQ7D;;;;OAIG;IACH,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAI7C;;;;;;;;;;;;;OAaG;cACa,oBAAoB,CAAC,UAAU,SAAS,KAAK,EAC3D,OAAO,EAAE,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,GACxC,OAAO,CAAC,SAAS,CAAC;IAgCrB;;;;OAIG;cACa,qBAAqB,CAAC,WAAW,SAAS,KAAK,EAC7D,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,EACnC,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,SAAS,CAAC;IASrB;;;OAGG;IACH,SAAS,CAAC,YAAY,IAAI,SAAS;CAGpC"}
|
package/dist/gas/calculator.js
CHANGED
|
@@ -18,6 +18,7 @@ const ethers_1 = require("ethers");
|
|
|
18
18
|
const utils_1 = require("@hyperlane-xyz/utils");
|
|
19
19
|
const chainMetadata_1 = require("../consts/chainMetadata");
|
|
20
20
|
const HyperlaneCore_1 = require("../core/HyperlaneCore");
|
|
21
|
+
const domains_1 = require("../domains");
|
|
21
22
|
const number_1 = require("../utils/number");
|
|
22
23
|
const token_prices_1 = require("./token-prices");
|
|
23
24
|
/**
|
|
@@ -166,7 +167,7 @@ class InterchainGasCalculator {
|
|
|
166
167
|
*/
|
|
167
168
|
tokenDecimals(chain) {
|
|
168
169
|
var _a;
|
|
169
|
-
return (_a = chainMetadata_1.chainMetadata[chain].
|
|
170
|
+
return (_a = chainMetadata_1.chainMetadata[chain].nativeToken.decimals) !== null && _a !== void 0 ? _a : DEFAULT_TOKEN_DECIMALS;
|
|
170
171
|
}
|
|
171
172
|
/**
|
|
172
173
|
* Estimates the amount of gas used by message's recipient `handle` function
|
|
@@ -186,7 +187,8 @@ class InterchainGasCalculator {
|
|
|
186
187
|
return __awaiter(this, void 0, void 0, function* () {
|
|
187
188
|
const provider = this.multiProvider.getChainConnection(message.destination)
|
|
188
189
|
.provider;
|
|
189
|
-
const
|
|
190
|
+
const mailbox = this.core.getContracts(message.destination).mailbox
|
|
191
|
+
.contract;
|
|
190
192
|
const handlerInterface = new ethers_1.ethers.utils.Interface([
|
|
191
193
|
'function handle(uint32,bytes32,bytes)',
|
|
192
194
|
]);
|
|
@@ -195,7 +197,7 @@ class InterchainGasCalculator {
|
|
|
195
197
|
// This includes intrinsic gas.
|
|
196
198
|
const directHandleCallGas = yield provider.estimateGas({
|
|
197
199
|
to: utils_1.utils.bytes32ToAddress(message.recipient),
|
|
198
|
-
from:
|
|
200
|
+
from: mailbox.address,
|
|
199
201
|
data: handlerInterface.encodeFunctionData('handle', [
|
|
200
202
|
chainMetadata_1.chainMetadata[message.origin].id,
|
|
201
203
|
utils_1.utils.addressToBytes32(message.sender),
|
|
@@ -218,9 +220,12 @@ class InterchainGasCalculator {
|
|
|
218
220
|
*/
|
|
219
221
|
estimateGasForProcess(origin, destination) {
|
|
220
222
|
return __awaiter(this, void 0, void 0, function* () {
|
|
221
|
-
|
|
222
|
-
const
|
|
223
|
-
|
|
223
|
+
// TODO: Check the recipient module
|
|
224
|
+
const module = this.core.getContracts(destination).multisigIsm;
|
|
225
|
+
const threshold = yield module.threshold(domains_1.ChainNameToDomainId[origin]);
|
|
226
|
+
return ethers_1.BigNumber.from(threshold)
|
|
227
|
+
.mul(GAS_OVERHEAD_PER_SIGNATURE)
|
|
228
|
+
.add(GAS_OVERHEAD_BASE);
|
|
224
229
|
});
|
|
225
230
|
}
|
|
226
231
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../src/gas/calculator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kEAAsC;AACtC,mCAAwD;AAExD,gDAA6C;AAE7C,2DAAwD;AACxD,yDAI+B;
|
|
1
|
+
{"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../src/gas/calculator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kEAAsC;AACtC,mCAAwD;AAExD,gDAA6C;AAE7C,2DAAwD;AACxD,yDAI+B;AAC/B,wCAAiD;AAGjD,4CAAsE;AAEtE,iDAA6E;AAE7E;;;;;;;;;;GAUG;AAEH,mFAAmF;AACnF,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAElC,sFAAsF;AACtF,sCAAsC;AACtC,MAAM,aAAa,GAAG,KAAM,CAAC;AAE7B,kEAAkE;AAClE,wEAAwE;AACxE,kEAAkE;AAClE,mFAAmF;AACnF,kDAAkD;AAClD,MAAM,iBAAiB,GAAG,KAAM,CAAC;AAEjC,qEAAqE;AACrE,iCAAiC;AACjC,gEAAgE;AAChE,MAAM,0BAA0B,GAAG,IAAK,CAAC;AAkCzC;;GAEG;AACH,MAAa,uBAAuB;IAkBlC,YACE,aAAmC,EACnC,IAA0B,EAC1B,MAAsC;;QAEtC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,EAAE;YAC5B,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;SACjD;aAAM;YACL,MAAM,SAAS,GAAG,IAAI,uBAAS,EAAE,CAAC;YAClC,IAAI,CAAC,gBAAgB,GAAG,IAAI,wCAAyB,CAAC,SAAS,CAAC,CAAC;SAClE;QAED,IAAI,CAAC,yBAAyB,GAAG,oBAAW,CAAC,IAAI,CAC/C,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,yBAAyB,mCAAI,MAAM,CAC5C,CAAC;QACF,IAAI,CAAC,wBAAwB,GAAG,kBAAS,CAAC,IAAI,CAC5C,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,wBAAwB,mCAAI,KAAM,CAC3C,CAAC;IACJ,CAAC;IA9BD,MAAM,CAAC,eAAe,CACpB,GAAQ,EACR,aAAuD,EACvD,MAAsC;QAEtC,MAAM,IAAI,GAAG,6BAAa,CAAC,eAAe,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAC/D,OAAO,IAAI,uBAAuB,CAAC,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAyBD;;;;;;;;;;OAUG;IACG,qBAAqB,CACzB,MAAmC,EACnC,WAAwB,EACxB,GAAc;;YAEd,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAChE,MAAM,kBAAkB,GAAG,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACxD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CACnD,WAAW,EACX,MAAM,EACN,kBAAkB,CACnB,CAAC;YACF,uBAAuB;YACvB,OAAO,IAAA,uBAAc,EACnB,aAAa,EACb,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CACL,CAAC;QACJ,CAAC;KAAA;IAED;;;;;;;;;;;;;;OAcG;IACG,2BAA2B,CAC/B,MAAmC,EACnC,WAAwB,EACxB,SAAoB;;YAEpB,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAClC,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,WAAW,CAAC,CACtD,CAAC;YACF,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;QACzE,CAAC;KAAA;IAED;;;;;;;;;;OAUG;IACa,yBAAyB,CACvC,OAA0C;;YAE1C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,2BAA2B,CACrC,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,WAAW,EACnB,SAAS,CACV,CAAC;QACJ,CAAC;KAAA;IAED;;;;;;;;;OASG;IACa,oBAAoB,CAClC,SAAgB,EAChB,OAAc,EACd,KAAgB;;YAEhB,+CAA+C;YAC/C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CACnE,SAAS,EACT,OAAO,CACR,CAAC;YAEF,oBAAoB;YACpB,MAAM,SAAS,GAAG,IAAI,CAAC;YAEvB,OAAO,IAAA,4BAAmB,EACxB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAC9D,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAC7B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAC5B,CAAC;QACJ,CAAC;KAAA;IAED;;;;OAIG;IACa,WAAW,CAAC,KAAY;;YACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,QAAS,CAAC;YACxE,IAAI,QAAQ,IAAI,SAAS,EAAE;gBACzB,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,EAAE,CAAC,CAAC;aAClD;YACD,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;QAChC,CAAC;KAAA;IAED;;;;OAIG;IACO,aAAa,CAAC,KAAY;;QAClC,OAAO,MAAA,6BAAa,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,QAAQ,mCAAI,sBAAsB,CAAC;IAC7E,CAAC;IAED;;;;;;;;;;;;;OAaG;IACa,oBAAoB,CAClC,OAAyC;;YAEzC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC;iBACxE,QAAS,CAAC;YAEb,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO;iBAChE,QAAQ,CAAC;YAEZ,MAAM,gBAAgB,GAAG,IAAI,eAAM,CAAC,KAAK,CAAC,SAAS,CAAC;gBAClD,uCAAuC;aACxC,CAAC,CAAC;YACH,oEAAoE;YACpE,4CAA4C;YAC5C,+BAA+B;YAC/B,MAAM,mBAAmB,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC;gBACrD,EAAE,EAAE,aAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC7C,IAAI,EAAE,OAAO,CAAC,OAAO;gBACrB,IAAI,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,QAAQ,EAAE;oBAClD,6BAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE;oBAChC,aAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC;oBACtC,OAAO,CAAC,IAAI;iBACb,CAAC;aACH,CAAC,CAAC;YAEH,oEAAoE;YACpE,6EAA6E;YAC7E,iFAAiF;YACjF,mEAAmE;YACnE,OAAO,mBAAmB;iBACvB,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC;iBAClC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC9B,CAAC;KAAA;IAED;;;;OAIG;IACa,qBAAqB,CACnC,MAAmC,EACnC,WAAwB;;YAExB,mCAAmC;YACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC;YAC/D,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,6BAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;YACtE,OAAO,kBAAS,CAAC,IAAI,CAAC,SAAS,CAAC;iBAC7B,GAAG,CAAC,0BAA0B,CAAC;iBAC/B,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC5B,CAAC;KAAA;IAED;;;OAGG;IACO,YAAY;QACpB,OAAO,kBAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;CACF;AArPD,0DAqPC"}
|
|
@@ -173,9 +173,9 @@ describe('InterchainGasCalculator', () => {
|
|
|
173
173
|
});
|
|
174
174
|
describe('estimateGasForProcess', () => {
|
|
175
175
|
let threshold;
|
|
176
|
-
// Mock the return value of
|
|
176
|
+
// Mock the return value of MultisigIsm.threshold
|
|
177
177
|
// to return `threshold`. Because the mocking involves a closure,
|
|
178
|
-
// changing `threshold` will change the return value of
|
|
178
|
+
// changing `threshold` will change the return value of MultisigIsm.threshold.
|
|
179
179
|
before(() => {
|
|
180
180
|
const getContractsStub = sinon_1.default.stub(core, 'getContracts');
|
|
181
181
|
let thresholdStub;
|
|
@@ -184,17 +184,14 @@ describe('InterchainGasCalculator', () => {
|
|
|
184
184
|
const contracts = getContractsStub.wrappedMethod.bind(core)(chain);
|
|
185
185
|
// Ethers contracts are frozen using Object.freeze, so we make a copy
|
|
186
186
|
// of the object so we can stub `threshold`.
|
|
187
|
-
const
|
|
188
|
-
// @ts-ignore
|
|
189
|
-
contracts.inboxes[origin].inboxValidatorManager);
|
|
187
|
+
const multisigIsm = Object.assign({}, contracts.multisigIsm);
|
|
190
188
|
// Because we are stubbing vaidatorManager.threshold when core.getContracts gets called,
|
|
191
189
|
// we must ensure we don't try to stub more than once or sinon will complain.
|
|
192
190
|
if (!thresholdStub) {
|
|
193
191
|
thresholdStub = sinon_1.default
|
|
194
|
-
.stub(
|
|
195
|
-
.callsFake(() => Promise.resolve(
|
|
196
|
-
|
|
197
|
-
contracts.inboxes[origin].inboxValidatorManager = validatorManager;
|
|
192
|
+
.stub(multisigIsm, 'threshold')
|
|
193
|
+
.callsFake(() => Promise.resolve(threshold));
|
|
194
|
+
contracts.multisigIsm = multisigIsm;
|
|
198
195
|
}
|
|
199
196
|
return contracts;
|
|
200
197
|
});
|