@hyperlane-xyz/sdk 1.0.0-beta4 → 1.0.0-beta5
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 +367 -1301
- package/dist/consts/environments/index.d.ts.map +1 -1
- package/dist/consts/environments/index.js +5 -10
- package/dist/consts/environments/index.js.map +1 -1
- package/dist/consts/environments/mainnet.json +56 -600
- package/dist/consts/environments/mainnet2.json +110 -0
- package/dist/consts/environments/test.json +27 -96
- package/dist/consts/environments/testnet2.json +66 -610
- package/dist/consts/environments/testnet3.json +51 -51
- 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 +372 -1312
- 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/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 +0 -1
- package/dist/deploy/router/HyperlaneRouterChecker.d.ts.map +1 -1
- package/dist/deploy/router/HyperlaneRouterChecker.js +0 -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/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/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"}
|
|
@@ -8,7 +8,6 @@ export declare class HyperlaneRouterChecker<Chain extends ChainName, App extends
|
|
|
8
8
|
checkOwnership(chain: Chain): Promise<void>;
|
|
9
9
|
checkChain(chain: Chain): Promise<void>;
|
|
10
10
|
checkEnrolledRouters(chain: Chain): Promise<void>;
|
|
11
|
-
checkConnectionManager(chain: Chain): Promise<void>;
|
|
12
11
|
ownables(chain: Chain): Ownable[];
|
|
13
12
|
}
|
|
14
13
|
//# sourceMappingURL=HyperlaneRouterChecker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneRouterChecker.d.ts","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":"AAAA,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;
|
|
1
|
+
{"version":3,"file":"HyperlaneRouterChecker.d.ts","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":"AAAA,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;IAKvC,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAavD,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,EAAE;CAGlC"}
|
|
@@ -23,7 +23,6 @@ class HyperlaneRouterChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
23
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
24
24
|
yield this.checkEnrolledRouters(chain);
|
|
25
25
|
yield this.checkOwnership(chain);
|
|
26
|
-
yield this.checkConnectionManager(chain);
|
|
27
26
|
});
|
|
28
27
|
}
|
|
29
28
|
checkEnrolledRouters(chain) {
|
|
@@ -37,14 +36,6 @@ class HyperlaneRouterChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
37
36
|
})));
|
|
38
37
|
});
|
|
39
38
|
}
|
|
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
39
|
ownables(chain) {
|
|
49
40
|
return [this.app.getContracts(chain).router];
|
|
50
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneRouterChecker.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,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,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"HyperlaneRouterChecker.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,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,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnC,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;AAjCD,wDAiCC"}
|
|
@@ -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":"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"}
|
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":"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"}
|
|
@@ -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
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculator.test.js","sourceRoot":"","sources":["../../src/gas/calculator.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"calculator.test.js","sourceRoot":"","sources":["../../src/gas/calculator.test.ts"],"names":[],"mappings":"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"}
|