@hyperlane-xyz/sdk 1.0.0-beta8 → 1.0.1-beta0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/consts/chainConnectionConfigs.d.ts +3 -0
- package/dist/consts/chainConnectionConfigs.d.ts.map +1 -1
- package/dist/consts/chainConnectionConfigs.js +7 -5
- package/dist/consts/chainConnectionConfigs.js.map +1 -1
- package/dist/consts/chainMetadata.d.ts.map +1 -1
- package/dist/consts/chainMetadata.js +4 -1
- package/dist/consts/chainMetadata.js.map +1 -1
- package/dist/consts/environments/index.d.ts +80 -42
- package/dist/consts/environments/index.d.ts.map +1 -1
- package/dist/consts/environments/mainnet.json +64 -48
- package/dist/consts/environments/test.json +27 -21
- package/dist/consts/environments/testnet.json +56 -40
- package/dist/consts/multisigIsmVerifyCosts.json +209 -0
- package/dist/core/HyperlaneCore.d.ts +80 -42
- package/dist/core/HyperlaneCore.d.ts.map +1 -1
- package/dist/core/HyperlaneCore.js +2 -1
- package/dist/core/HyperlaneCore.js.map +1 -1
- package/dist/core/contracts.d.ts +6 -3
- package/dist/core/contracts.d.ts.map +1 -1
- package/dist/core/contracts.js +2 -0
- package/dist/core/contracts.js.map +1 -1
- package/dist/deploy/HyperlaneDeployer.d.ts +7 -1
- package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneDeployer.js +38 -4
- package/dist/deploy/HyperlaneDeployer.js.map +1 -1
- package/dist/deploy/core/HyperlaneCoreChecker.d.ts.map +1 -1
- package/dist/deploy/core/HyperlaneCoreChecker.js +1 -0
- package/dist/deploy/core/HyperlaneCoreChecker.js.map +1 -1
- package/dist/deploy/core/HyperlaneCoreDeployer.d.ts +6 -1
- package/dist/deploy/core/HyperlaneCoreDeployer.d.ts.map +1 -1
- package/dist/deploy/core/HyperlaneCoreDeployer.js +67 -5
- package/dist/deploy/core/HyperlaneCoreDeployer.js.map +1 -1
- package/dist/deploy/middleware/LiquidityLayerApp.d.ts +12 -4
- package/dist/deploy/middleware/LiquidityLayerApp.d.ts.map +1 -1
- package/dist/deploy/middleware/LiquidityLayerApp.js +79 -15
- package/dist/deploy/middleware/LiquidityLayerApp.js.map +1 -1
- package/dist/deploy/middleware/LiquidityLayerRouterDeployer.d.ts +17 -6
- package/dist/deploy/middleware/LiquidityLayerRouterDeployer.d.ts.map +1 -1
- package/dist/deploy/middleware/LiquidityLayerRouterDeployer.js +49 -15
- package/dist/deploy/middleware/LiquidityLayerRouterDeployer.js.map +1 -1
- package/dist/deploy/router/HyperlaneRouterChecker.d.ts.map +1 -1
- package/dist/deploy/router/HyperlaneRouterChecker.js +1 -2
- 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 +3 -4
- package/dist/deploy/router/HyperlaneRouterDeployer.js.map +1 -1
- package/dist/deploy/utils.d.ts.map +1 -1
- package/dist/deploy/utils.js +1 -0
- package/dist/deploy/utils.js.map +1 -1
- package/dist/deploy/verify/ContractVerifier.js +1 -1
- package/dist/deploy/verify/ContractVerifier.js.map +1 -1
- package/dist/gas/calculator.d.ts +52 -0
- package/dist/gas/calculator.d.ts.map +1 -1
- package/dist/gas/calculator.hardhat-test.d.ts +2 -0
- package/dist/gas/calculator.hardhat-test.d.ts.map +1 -0
- package/dist/gas/calculator.hardhat-test.js +56 -0
- package/dist/gas/calculator.hardhat-test.js.map +1 -0
- package/dist/gas/calculator.js +70 -7
- package/dist/gas/calculator.js.map +1 -1
- package/dist/gas/calculator.test.js +4 -3
- package/dist/gas/calculator.test.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/middleware/liquidity-layer.hardhat-test.js +52 -25
- package/dist/middleware/liquidity-layer.hardhat-test.js.map +1 -1
- package/dist/middleware.d.ts +3 -1
- package/dist/middleware.d.ts.map +1 -1
- package/dist/middleware.js +1 -0
- package/dist/middleware.js.map +1 -1
- package/dist/providers/ChainConnection.d.ts +1 -0
- package/dist/providers/ChainConnection.d.ts.map +1 -1
- package/dist/providers/ChainConnection.js +2 -1
- package/dist/providers/ChainConnection.js.map +1 -1
- package/dist/providers/MultiProvider.d.ts +6 -0
- package/dist/providers/MultiProvider.d.ts.map +1 -1
- package/dist/providers/MultiProvider.js +9 -1
- package/dist/providers/MultiProvider.js.map +1 -1
- package/dist/test/envSubsetDeployer/check-single-chain.js +2 -0
- package/dist/test/envSubsetDeployer/check-single-chain.js.map +1 -1
- package/dist/test/envSubsetDeployer/deploy-single-chain.js +2 -0
- package/dist/test/envSubsetDeployer/deploy-single-chain.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/objects.d.ts +1 -0
- package/dist/utils/objects.d.ts.map +1 -1
- package/dist/utils/objects.js +5 -1
- package/dist/utils/objects.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiquidityLayerApp.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerApp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8DAAgC;AAChC,mCAAgC;AAEhC,
|
|
1
|
+
{"version":3,"file":"LiquidityLayerApp.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerApp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CircleBridgeAdapter, LiquidityLayerRouter } from '@hyperlane-xyz/core';
|
|
1
|
+
import { CircleBridgeAdapter, LiquidityLayerRouter, PortalAdapter } from '@hyperlane-xyz/core';
|
|
2
2
|
import { HyperlaneCore } from '../../core/HyperlaneCore';
|
|
3
3
|
import { LiquidityLayerContracts, LiquidityLayerFactories } from '../../middleware';
|
|
4
4
|
import { MultiProvider } from '../../providers/MultiProvider';
|
|
@@ -6,11 +6,12 @@ import { ChainMap, ChainName } from '../../types';
|
|
|
6
6
|
import { RouterConfig } from '../router/types';
|
|
7
7
|
import { MiddlewareRouterDeployer } from './deploy';
|
|
8
8
|
export declare enum BridgeAdapterType {
|
|
9
|
-
Circle = "Circle"
|
|
9
|
+
Circle = "Circle",
|
|
10
|
+
Portal = "Portal"
|
|
10
11
|
}
|
|
11
12
|
export interface CircleBridgeAdapterConfig {
|
|
12
13
|
type: BridgeAdapterType.Circle;
|
|
13
|
-
|
|
14
|
+
tokenMessengerAddress: string;
|
|
14
15
|
messageTransmitterAddress: string;
|
|
15
16
|
usdcAddress: string;
|
|
16
17
|
circleDomainMapping: {
|
|
@@ -18,16 +19,26 @@ export interface CircleBridgeAdapterConfig {
|
|
|
18
19
|
circleDomain: number;
|
|
19
20
|
}[];
|
|
20
21
|
}
|
|
21
|
-
export
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
export interface PortalAdapterConfig {
|
|
23
|
+
type: BridgeAdapterType.Portal;
|
|
24
|
+
portalBridgeAddress: string;
|
|
25
|
+
wormholeDomainMapping: {
|
|
26
|
+
hyperlaneDomain: number;
|
|
27
|
+
wormholeDomain: number;
|
|
28
|
+
}[];
|
|
29
|
+
}
|
|
30
|
+
export declare type BridgeAdapterConfig = {
|
|
31
|
+
circle?: CircleBridgeAdapterConfig;
|
|
32
|
+
portal?: PortalAdapterConfig;
|
|
24
33
|
};
|
|
34
|
+
export declare type LiquidityLayerConfig = RouterConfig & BridgeAdapterConfig;
|
|
25
35
|
export declare class LiquidityLayerDeployer<Chain extends ChainName> extends MiddlewareRouterDeployer<Chain, LiquidityLayerConfig, LiquidityLayerContracts, LiquidityLayerFactories> {
|
|
26
36
|
protected core: HyperlaneCore<Chain>;
|
|
27
37
|
protected create2salt: string;
|
|
28
38
|
constructor(multiProvider: MultiProvider<Chain>, configMap: ChainMap<Chain, LiquidityLayerConfig>, core: HyperlaneCore<Chain>, create2salt?: string);
|
|
29
39
|
enrollRemoteRouters(contractsMap: ChainMap<Chain, LiquidityLayerContracts>): Promise<void>;
|
|
30
40
|
deployContracts(chain: Chain, config: LiquidityLayerConfig): Promise<LiquidityLayerContracts>;
|
|
41
|
+
deployPortalAdapter(chain: Chain, adapterConfig: PortalAdapterConfig, owner: string, router: LiquidityLayerRouter): Promise<PortalAdapter>;
|
|
31
42
|
deployCircleBridgeAdapter(chain: Chain, adapterConfig: CircleBridgeAdapterConfig, owner: string, router: LiquidityLayerRouter): Promise<CircleBridgeAdapter>;
|
|
32
43
|
}
|
|
33
44
|
//# sourceMappingURL=LiquidityLayerRouterDeployer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiquidityLayerRouterDeployer.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LiquidityLayerRouterDeployer.d.ts","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EAEnB,oBAAoB,EAEpB,aAAa,EAEd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EAExB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAEpD,oBAAY,iBAAiB;IAC3B,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,yBAAyB,EAAE,MAAM,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;KACtB,EAAE,CAAC;CACL;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC;IAC/B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qBAAqB,EAAE;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;CACL;AAED,oBAAY,mBAAmB,GAAG;IAChC,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEF,oBAAY,oBAAoB,GAAG,YAAY,GAAG,mBAAmB,CAAC;AAEtE,qBAAa,sBAAsB,CACjC,KAAK,SAAS,SAAS,CACvB,SAAQ,wBAAwB,CAChC,KAAK,EACL,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,CACxB;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,oBAAoB,CAAC,EACtC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,EAC1B,WAAW,SAA+B;IAKhD,mBAAmB,CACvB,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC,GACrD,OAAO,CAAC,IAAI,CAAC;IA2BV,eAAe,CACnB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,uBAAuB,CAAC;IAmC7B,mBAAmB,CACvB,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,mBAAmB,EAClC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,aAAa,CAAC;IAyDnB,yBAAyB,CAC7B,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,yBAAyB,EACxC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,mBAAmB,CAAC;CAqEhC"}
|
|
@@ -10,14 +10,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.LiquidityLayerDeployer = exports.BridgeAdapterType = void 0;
|
|
13
|
-
const ethers_1 = require("ethers");
|
|
14
13
|
const core_1 = require("@hyperlane-xyz/core");
|
|
14
|
+
const utils_1 = require("@hyperlane-xyz/utils");
|
|
15
|
+
const domains_1 = require("../../domains");
|
|
15
16
|
const middleware_1 = require("../../middleware");
|
|
16
17
|
const objects_1 = require("../../utils/objects");
|
|
17
18
|
const deploy_1 = require("./deploy");
|
|
18
19
|
var BridgeAdapterType;
|
|
19
20
|
(function (BridgeAdapterType) {
|
|
20
21
|
BridgeAdapterType["Circle"] = "Circle";
|
|
22
|
+
BridgeAdapterType["Portal"] = "Portal";
|
|
21
23
|
})(BridgeAdapterType = exports.BridgeAdapterType || (exports.BridgeAdapterType = {}));
|
|
22
24
|
class LiquidityLayerDeployer extends deploy_1.MiddlewareRouterDeployer {
|
|
23
25
|
constructor(multiProvider, configMap, core, create2salt = 'LiquidityLayerDeployerSalt') {
|
|
@@ -30,12 +32,16 @@ class LiquidityLayerDeployer extends deploy_1.MiddlewareRouterDeployer {
|
|
|
30
32
|
enrollRemoteRouters: { get: () => super.enrollRemoteRouters }
|
|
31
33
|
});
|
|
32
34
|
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
|
|
35
|
+
this.logger(`Enroll LiquidityLayerRouters with each other`);
|
|
34
36
|
yield _super.enrollRemoteRouters.call(this, contractsMap);
|
|
35
|
-
|
|
36
|
-
yield _super.enrollRemoteRouters.call(this, (0, objects_1.objMap)(contractsMap, (_chain, contracts) => ({
|
|
37
|
+
this.logger(`Enroll CircleBridgeAdapters with each other`);
|
|
38
|
+
yield _super.enrollRemoteRouters.call(this, (0, objects_1.objFilter)((0, objects_1.objMap)(contractsMap, (_chain, contracts) => ({
|
|
37
39
|
router: contracts.circleBridgeAdapter,
|
|
38
|
-
})));
|
|
40
|
+
})), (_) => !!_.router));
|
|
41
|
+
this.logger(`Enroll PortalAdapters with each other`);
|
|
42
|
+
yield _super.enrollRemoteRouters.call(this, (0, objects_1.objFilter)((0, objects_1.objMap)(contractsMap, (_chain, contracts) => ({
|
|
43
|
+
router: contracts.portalAdapter,
|
|
44
|
+
})), (_) => !!_.router));
|
|
39
45
|
});
|
|
40
46
|
}
|
|
41
47
|
// Custom contract deployment logic can go here
|
|
@@ -48,21 +54,48 @@ class LiquidityLayerDeployer extends deploy_1.MiddlewareRouterDeployer {
|
|
|
48
54
|
initCalldata,
|
|
49
55
|
});
|
|
50
56
|
const bridgeAdapters = {};
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
57
|
+
if (config.circle) {
|
|
58
|
+
bridgeAdapters.circleBridgeAdapter = yield this.deployCircleBridgeAdapter(chain, config.circle, config.owner, router);
|
|
59
|
+
}
|
|
60
|
+
if (config.portal) {
|
|
61
|
+
bridgeAdapters.portalAdapter = yield this.deployPortalAdapter(chain, config.portal, config.owner, router);
|
|
56
62
|
}
|
|
57
63
|
return Object.assign(Object.assign({}, bridgeAdapters), { router });
|
|
58
64
|
});
|
|
59
65
|
}
|
|
66
|
+
deployPortalAdapter(chain, adapterConfig, owner, router) {
|
|
67
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
const cc = this.multiProvider.getChainConnection(chain);
|
|
69
|
+
const initCalldata = core_1.PortalAdapter__factory.createInterface().encodeFunctionData('initialize', [
|
|
70
|
+
domains_1.ChainNameToDomainId[chain],
|
|
71
|
+
owner,
|
|
72
|
+
adapterConfig.portalBridgeAddress,
|
|
73
|
+
router.address,
|
|
74
|
+
]);
|
|
75
|
+
const portalAdapter = yield this.deployContract(chain, 'portalAdapter', [], {
|
|
76
|
+
create2Salt: this.create2salt,
|
|
77
|
+
initCalldata,
|
|
78
|
+
});
|
|
79
|
+
for (const { wormholeDomain, hyperlaneDomain, } of adapterConfig.wormholeDomainMapping) {
|
|
80
|
+
const expectedCircleDomain = yield portalAdapter.hyperlaneDomainToWormholeDomain(hyperlaneDomain);
|
|
81
|
+
if (expectedCircleDomain === wormholeDomain)
|
|
82
|
+
continue;
|
|
83
|
+
this.logger(`Set wormhole domain ${wormholeDomain} for hyperlane domain ${hyperlaneDomain}`);
|
|
84
|
+
yield cc.handleTx(portalAdapter.addDomain(hyperlaneDomain, wormholeDomain));
|
|
85
|
+
}
|
|
86
|
+
if (!utils_1.utils.eqAddress(yield router.liquidityLayerAdapters('Portal'), portalAdapter.address)) {
|
|
87
|
+
this.logger('Set Portal as LiquidityLayerAdapter on Router');
|
|
88
|
+
yield cc.handleTx(router.setLiquidityLayerAdapter(adapterConfig.type, portalAdapter.address));
|
|
89
|
+
}
|
|
90
|
+
return portalAdapter;
|
|
91
|
+
});
|
|
92
|
+
}
|
|
60
93
|
deployCircleBridgeAdapter(chain, adapterConfig, owner, router) {
|
|
61
94
|
return __awaiter(this, void 0, void 0, function* () {
|
|
62
95
|
const cc = this.multiProvider.getChainConnection(chain);
|
|
63
96
|
const initCalldata = core_1.CircleBridgeAdapter__factory.createInterface().encodeFunctionData('initialize', [
|
|
64
97
|
owner,
|
|
65
|
-
adapterConfig.
|
|
98
|
+
adapterConfig.tokenMessengerAddress,
|
|
66
99
|
adapterConfig.messageTransmitterAddress,
|
|
67
100
|
router.address,
|
|
68
101
|
]);
|
|
@@ -70,8 +103,7 @@ class LiquidityLayerDeployer extends deploy_1.MiddlewareRouterDeployer {
|
|
|
70
103
|
create2Salt: this.create2salt,
|
|
71
104
|
initCalldata,
|
|
72
105
|
});
|
|
73
|
-
if ((yield circleBridgeAdapter.tokenSymbolToAddress('USDC'))
|
|
74
|
-
ethers_1.ethers.constants.AddressZero) {
|
|
106
|
+
if (!utils_1.utils.eqAddress(yield circleBridgeAdapter.tokenSymbolToAddress('USDC'), adapterConfig.usdcAddress)) {
|
|
75
107
|
this.logger(`Set USDC token contract`);
|
|
76
108
|
yield cc.handleTx(circleBridgeAdapter.addToken(adapterConfig.usdcAddress, 'USDC'));
|
|
77
109
|
}
|
|
@@ -83,8 +115,10 @@ class LiquidityLayerDeployer extends deploy_1.MiddlewareRouterDeployer {
|
|
|
83
115
|
this.logger(`Set circle domain ${circleDomain} for hyperlane domain ${hyperlaneDomain}`);
|
|
84
116
|
yield cc.handleTx(circleBridgeAdapter.addDomain(hyperlaneDomain, circleDomain));
|
|
85
117
|
}
|
|
86
|
-
|
|
87
|
-
|
|
118
|
+
if (!utils_1.utils.eqAddress(yield router.liquidityLayerAdapters('Circle'), circleBridgeAdapter.address)) {
|
|
119
|
+
this.logger('Set Circle as LiquidityLayerAdapter on Router');
|
|
120
|
+
yield cc.handleTx(router.setLiquidityLayerAdapter(adapterConfig.type, circleBridgeAdapter.address));
|
|
121
|
+
}
|
|
88
122
|
return circleBridgeAdapter;
|
|
89
123
|
});
|
|
90
124
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiquidityLayerRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"LiquidityLayerRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/middleware/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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;AAClD,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"}
|
|
@@ -12,7 +12,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.HyperlaneRouterChecker = void 0;
|
|
13
13
|
const ethers_1 = require("ethers");
|
|
14
14
|
const utils_1 = require("@hyperlane-xyz/utils");
|
|
15
|
-
const chainMetadata_1 = require("../../consts/chainMetadata");
|
|
16
15
|
const HyperlaneAppChecker_1 = require("../HyperlaneAppChecker");
|
|
17
16
|
class HyperlaneRouterChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
18
17
|
checkOwnership(chain) {
|
|
@@ -44,7 +43,7 @@ class HyperlaneRouterChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
44
43
|
const router = this.app.getContracts(chain).router;
|
|
45
44
|
yield Promise.all(this.app.remoteChains(chain).map((remoteChain) => __awaiter(this, void 0, void 0, function* () {
|
|
46
45
|
const remoteRouter = this.app.getContracts(remoteChain).router;
|
|
47
|
-
const remoteChainId =
|
|
46
|
+
const remoteChainId = this.multiProvider.getChainId(remoteChain);
|
|
48
47
|
const address = yield router.routers(remoteChainId);
|
|
49
48
|
utils_1.utils.assert(address === utils_1.utils.addressToBytes32(remoteRouter.address));
|
|
50
49
|
})));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneRouterChecker.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAGhC,gDAA6C;
|
|
1
|
+
{"version":3,"file":"HyperlaneRouterChecker.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterChecker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAGhC,gDAA6C;AAK7C,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,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBACjE,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":"AAMA,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;IAqDV,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"}
|
|
@@ -13,7 +13,6 @@ exports.HyperlaneRouterDeployer = void 0;
|
|
|
13
13
|
const debug_1 = require("debug");
|
|
14
14
|
const ethers_1 = require("ethers");
|
|
15
15
|
const utils_1 = require("@hyperlane-xyz/utils");
|
|
16
|
-
const chainMetadata_1 = require("../../consts/chainMetadata");
|
|
17
16
|
const domains_1 = require("../../domains");
|
|
18
17
|
const objects_1 = require("../../utils/objects");
|
|
19
18
|
const HyperlaneDeployer_1 = require("../HyperlaneDeployer");
|
|
@@ -60,7 +59,7 @@ class HyperlaneRouterDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
|
60
59
|
.remoteChains(local)
|
|
61
60
|
.filter((c) => deployedChains.includes(c));
|
|
62
61
|
const enrollEntries = yield Promise.all(deployedRemoteChains.map((remote) => __awaiter(this, void 0, void 0, function* () {
|
|
63
|
-
const remoteDomain =
|
|
62
|
+
const remoteDomain = this.multiProvider.getChainId(remote);
|
|
64
63
|
const current = yield contracts.router.routers(remoteDomain);
|
|
65
64
|
const expected = utils_1.utils.addressToBytes32(contractsMap[remote].router.address);
|
|
66
65
|
return current !== expected ? [remoteDomain, expected] : undefined;
|
|
@@ -73,8 +72,8 @@ class HyperlaneRouterDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
|
73
72
|
return;
|
|
74
73
|
}
|
|
75
74
|
yield _super.runIfOwner.call(this, local, contracts.router, () => __awaiter(this, void 0, void 0, function* () {
|
|
76
|
-
const chains = domains.map((id) => domains_1.DomainIdToChainName[id]);
|
|
77
|
-
this.logger(`
|
|
75
|
+
const chains = domains.map((id) => domains_1.DomainIdToChainName[id] || id);
|
|
76
|
+
this.logger(`Enrolling remote routers (${chains.join(', ')}) on ${local}`);
|
|
78
77
|
yield chainConnection.handleTx(contracts.router.enrollRemoteRouters(domains, addresses, chainConnection.overrides));
|
|
79
78
|
}));
|
|
80
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterDeployer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iCAA8B;AAC9B,mCAAgC;AAEhC,gDAA6C;AAE7C,
|
|
1
|
+
{"version":3,"file":"HyperlaneRouterDeployer.js","sourceRoot":"","sources":["../../../src/deploy/router/HyperlaneRouterDeployer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/deploy/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAG7C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,oBAAoB,CAAC,KAAK,SAAS,cAAc,EAC/D,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC,QAAQ,EAC7C,OAAO,GAAE,iBAAiB,CAAC,KAAK,CAA8B,GAC7D,aAAa,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/deploy/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAG7C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,wBAAgB,oBAAoB,CAAC,KAAK,SAAS,cAAc,EAC/D,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC,QAAQ,EAC7C,OAAO,GAAE,iBAAiB,CAAC,KAAK,CAA8B,GAC7D,aAAa,CAAC,KAAK,CAAC,CAoBtB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,SAAS,SAAS,EACxD,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,EAC/B,KAAK,EAAE,KAAK,CAAC,OAAO,GACnB,QAAQ,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAMpC"}
|
package/dist/deploy/utils.js
CHANGED
|
@@ -21,6 +21,7 @@ function getTestMultiProvider(signerOrProvider, configs = chainConnectionConfigs
|
|
|
21
21
|
const chainProviders = (0, objects_1.objMap)(configs, (_, config) => ({
|
|
22
22
|
signer,
|
|
23
23
|
provider,
|
|
24
|
+
id: config.id,
|
|
24
25
|
confirmations: config.confirmations,
|
|
25
26
|
overrides: config.overrides,
|
|
26
27
|
}));
|
package/dist/deploy/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/deploy/utils.ts"],"names":[],"mappings":";;;AAAA,mCAA2C;AAI3C,6EAA8E;AAC9E,8DAA2D;AAE3D,8CAA0C;AAI1C,SAAgB,oBAAoB,CAClC,gBAA6C,EAC7C,UAAoC,mDAA0B;IAE9D,IAAI,MAA0B,CAAC;IAC/B,IAAI,QAA4B,CAAC;IACjC,IAAI,eAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,CAAC,QAAQ,EAAE;QAClE,MAAM,GAAG,gBAAgB,CAAC;QAC1B,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC;KACtC;SAAM,IAAI,kBAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;QAC1D,QAAQ,GAAG,gBAAgB,CAAC;KAC7B;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KAChD;IAED,MAAM,cAAc,GAAG,IAAA,gBAAM,EAAC,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM;QACN,QAAQ;QACR,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC,CAAC;IACJ,OAAO,IAAI,6BAAa,CAAC,cAAc,CAAC,CAAC;AAC3C,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/deploy/utils.ts"],"names":[],"mappings":";;;AAAA,mCAA2C;AAI3C,6EAA8E;AAC9E,8DAA2D;AAE3D,8CAA0C;AAI1C,SAAgB,oBAAoB,CAClC,gBAA6C,EAC7C,UAAoC,mDAA0B;IAE9D,IAAI,MAA0B,CAAC;IAC/B,IAAI,QAA4B,CAAC;IACjC,IAAI,eAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,CAAC,QAAQ,EAAE;QAClE,MAAM,GAAG,gBAAgB,CAAC;QAC1B,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC;KACtC;SAAM,IAAI,kBAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;QAC1D,QAAQ,GAAG,gBAAgB,CAAC;KAC7B;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KAChD;IAED,MAAM,cAAc,GAAG,IAAA,gBAAM,EAAC,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM;QACN,QAAQ;QACR,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,CAAC,CAAC;IACJ,OAAO,IAAI,6BAAa,CAAC,cAAc,CAAC,CAAC;AAC3C,CAAC;AAvBD,oDAuBC;AAED,SAAgB,kBAAkB,CAChC,SAA+B,EAC/B,KAAoB;IAEpB,OAAO,IAAA,gBAAM,EAAC,SAAS,EAAE,GAAG,EAAE;QAC5B,OAAO;YACL,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AATD,gDASC"}
|
|
@@ -56,7 +56,7 @@ class ContractVerifier extends MultiGeneric_1.MultiGeneric {
|
|
|
56
56
|
submitForm(chain, action, options) {
|
|
57
57
|
return __awaiter(this, void 0, void 0, function* () {
|
|
58
58
|
const chainConnection = this.multiProvider.getChainConnection(chain);
|
|
59
|
-
const apiUrl =
|
|
59
|
+
const apiUrl = chainConnection.getApiUrl();
|
|
60
60
|
const params = new URLSearchParams(Object.assign({ apikey: this.apiKeys[chain], module: 'contract', action }, options));
|
|
61
61
|
let response;
|
|
62
62
|
if (action === ExplorerApiActions.CHECK_STATUS ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContractVerifier.js","sourceRoot":"","sources":["../../../src/deploy/verify/ContractVerifier.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8DAAgC;AAChC,iCAAwC;AACxC,mCAAgC;AAEhC,gDAA6C;AAI7C,2DAAwD;AAQxD,IAAK,kBAKJ;AALD,WAAK,kBAAkB;IACrB,gEAA0C,CAAA;IAC1C,wDAAkC,CAAA;IAClC,wDAAkC,CAAA;IAClC,mEAA6C,CAAA;AAC/C,CAAC,EALI,kBAAkB,KAAlB,kBAAkB,QAKtB;AAED,IAAK,iBAKJ;AALD,WAAK,iBAAiB;IACpB,+EAA0D,CAAA;IAC1D,8DAAyC,CAAA;IACzC,8DAAyC,CAAA;IACzC,mIAA8G,CAAA;AAChH,CAAC,EALI,iBAAiB,KAAjB,iBAAiB,QAKrB;AAED,MAAa,gBAA0C,SAAQ,2BAG9D;IAGC,YACE,kBAAsD,EACnC,aAAmC,EACnC,OAAgC,EAChC,eAAuB,EAAE,kDAAkD;IAC3E,eAAgC;QAEnD,KAAK,CAAC,kBAAkB,CAAC,CAAC;QALP,kBAAa,GAAb,aAAa,CAAsB;QACnC,YAAO,GAAP,OAAO,CAAyB;QAChC,oBAAe,GAAf,eAAe,CAAQ;QACvB,oBAAe,GAAf,eAAe,CAAiB;QAGnD,IAAI,CAAC,MAAM,GAAG,IAAA,aAAK,EAAC,4BAA4B,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE;QAC5B,OAAO,OAAO,CAAC,UAAU,CACvB,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CACjE,CAAC;IACJ,CAAC;IAEK,WAAW,CAAC,KAAY,EAAE,MAAyB;;YACvD,IAAI,CAAC,MAAM,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBAC1B,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aACzC;QACH,CAAC;KAAA;IAEa,UAAU,CACtB,KAAY,EACZ,MAA0B,EAC1B,OAAgC;;YAEhC,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACrE,MAAM,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"ContractVerifier.js","sourceRoot":"","sources":["../../../src/deploy/verify/ContractVerifier.ts"],"names":[],"mappings":"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"}
|
package/dist/gas/calculator.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { BigNumber } from 'ethers';
|
|
2
|
+
import { types } from '@hyperlane-xyz/utils';
|
|
2
3
|
import { CoreEnvironment, CoreEnvironmentChain, HyperlaneCore } from '../core/HyperlaneCore';
|
|
3
4
|
import { MultiProvider } from '../providers/MultiProvider';
|
|
4
5
|
import { ChainName, Remotes } from '../types';
|
|
@@ -8,17 +9,20 @@ export interface InterchainGasCalculatorConfig {
|
|
|
8
9
|
* A multiplier applied to the estimated origin token payment amount.
|
|
9
10
|
* This should be high enough to account for movements in token exchange
|
|
10
11
|
* rates and gas prices.
|
|
12
|
+
* Only used for gas payment estimates that are not quoted on-chain.
|
|
11
13
|
* @defaultValue 1.25
|
|
12
14
|
*/
|
|
13
15
|
paymentEstimateMultiplier?: string;
|
|
14
16
|
/**
|
|
15
17
|
* An amount of additional gas to add to the estimated gas of processing a message.
|
|
16
18
|
* Only used when estimating a payment from a message.
|
|
19
|
+
* Only used for gas payment estimates that are not quoted on-chain.
|
|
17
20
|
* @defaultValue 50,000
|
|
18
21
|
*/
|
|
19
22
|
messageGasEstimateBuffer?: string;
|
|
20
23
|
/**
|
|
21
24
|
* Used to get the native token prices of the origin and destination chains.
|
|
25
|
+
* Only used for gas payment estimates that are not quoted on-chain.
|
|
22
26
|
* @defaultValue An instance of DefaultTokenPriceGetter.
|
|
23
27
|
*/
|
|
24
28
|
tokenPriceGetter?: TokenPriceGetter;
|
|
@@ -42,6 +46,52 @@ export declare class InterchainGasCalculator<Chain extends ChainName> {
|
|
|
42
46
|
static fromEnvironment<Env extends CoreEnvironment>(env: Env, multiProvider: MultiProvider<CoreEnvironmentChain<Env>>, config?: InterchainGasCalculatorConfig): InterchainGasCalculator<CoreEnvironmentChain<Env>>;
|
|
43
47
|
constructor(multiProvider: MultiProvider<Chain>, core: HyperlaneCore<Chain>, config?: InterchainGasCalculatorConfig);
|
|
44
48
|
/**
|
|
49
|
+
* Only intended for IGPs that quote gas payments on-chain.
|
|
50
|
+
* Calls the default ISM IGP's `quoteGasPayment` function to get the amount of native tokens
|
|
51
|
+
* required to pay for interchain gas.
|
|
52
|
+
* The default ISM IGP will add any gas overhead amounts related to the Mailbox
|
|
53
|
+
* and default ISM on the destination to the provided gasAmount.
|
|
54
|
+
* @param origin The name of the origin chain.
|
|
55
|
+
* @param destination The name of the destination chain.
|
|
56
|
+
* @param gasAmount The amount of gas to use when calling `quoteGasPayment`.
|
|
57
|
+
* The default IGP is expected to add any gas overhead related to the Mailbox
|
|
58
|
+
* or ISM, so this gas amount is only required to cover the usage of the `handle`
|
|
59
|
+
* function.
|
|
60
|
+
* @returns The amount of native tokens required to pay for interchain gas.
|
|
61
|
+
*/
|
|
62
|
+
quoteGasPaymentForDefaultIsmIgp<Destination extends Chain>(origin: Exclude<Chain, Destination>, destination: Destination, gasAmount: BigNumber): Promise<BigNumber>;
|
|
63
|
+
/**
|
|
64
|
+
* Only intended for IGPs that quote gas payments on-chain.
|
|
65
|
+
* Calls the "base" IGP's `quoteGasPayment` function to get the amount of native tokens
|
|
66
|
+
* required to pay for interchain gas.
|
|
67
|
+
* This IGP will not apply any overhead gas to the provided gasAmount.
|
|
68
|
+
* @param origin The name of the origin chain.
|
|
69
|
+
* @param destination The name of the destination chain.
|
|
70
|
+
* @param gasAmount The amount of gas to use when calling `quoteGasPayment`.
|
|
71
|
+
* This is expected to be the total amount of gas that a transaction would use
|
|
72
|
+
* on the destination chain. This should consider intrinsic transaction gas,
|
|
73
|
+
* Mailbox overhead gas costs, ISM gas costs, and the recipient's handle function
|
|
74
|
+
* gas cost.
|
|
75
|
+
* @returns The amount of native tokens required to pay for interchain gas.
|
|
76
|
+
*/
|
|
77
|
+
quoteGasPayment<Destination extends Chain>(origin: Exclude<Chain, Destination>, destination: Destination, gasAmount: BigNumber): Promise<BigNumber>;
|
|
78
|
+
/**
|
|
79
|
+
* Only intended for IGPs that quote gas payments on-chain.
|
|
80
|
+
* Calls the origin's default IGP's `quoteGasPayment` function to get the
|
|
81
|
+
* amount of native tokens required to pay for interchain gas.
|
|
82
|
+
* The default IGP is expected to add any gas overhead related to the Mailbox
|
|
83
|
+
* and ISM to the provided gasAmount.
|
|
84
|
+
* @param origin The name of the origin chain.
|
|
85
|
+
* @param destination The name of the destination chain.
|
|
86
|
+
* @param gasAmount The amount of gas to use when calling `quoteGasPayment`.
|
|
87
|
+
* The default IGP is expected to add any gas overhead related to the Mailbox
|
|
88
|
+
* or ISM, so this gas amount is only required to cover the usage of the `handle`
|
|
89
|
+
* function.
|
|
90
|
+
* @returns The amount of native tokens required to pay for interchain gas.
|
|
91
|
+
*/
|
|
92
|
+
quoteGasPaymentForIGP<Destination extends Chain>(origin: Exclude<Chain, Destination>, destination: Destination, gasAmount: BigNumber, interchainGasPaymasterAddress: types.Address): Promise<BigNumber>;
|
|
93
|
+
/**
|
|
94
|
+
* Only intended for IGPs that do *not* quote gas payments on-chain.
|
|
45
95
|
* Given an amount of gas to consume on the destination chain, calculates the
|
|
46
96
|
* estimated payment denominated in the native token of the origin chain.
|
|
47
97
|
* Considers the exchange rate between the native tokens of the origin and
|
|
@@ -54,6 +104,7 @@ export declare class InterchainGasCalculator<Chain extends ChainName> {
|
|
|
54
104
|
*/
|
|
55
105
|
estimatePaymentForGas<Destination extends Chain>(origin: Exclude<Chain, Destination>, destination: Destination, gas: BigNumber): Promise<BigNumber>;
|
|
56
106
|
/**
|
|
107
|
+
* Only intended for IGPs that do *not* quote gas payments on-chain.
|
|
57
108
|
* Given an amount of gas the message's recipient `handle` function is expected
|
|
58
109
|
* to use, calculates the estimated payment denominated in the native
|
|
59
110
|
* token of the origin chain. Considers the exchange rate between the native
|
|
@@ -70,6 +121,7 @@ export declare class InterchainGasCalculator<Chain extends ChainName> {
|
|
|
70
121
|
*/
|
|
71
122
|
estimatePaymentForHandleGas<Destination extends Chain>(origin: Exclude<Chain, Destination>, destination: Destination, handleGas: BigNumber): Promise<BigNumber>;
|
|
72
123
|
/**
|
|
124
|
+
* Only intended for IGPs that do *not* quote gas payments on-chain.
|
|
73
125
|
* Calculates the estimated payment to process the message on its destination chain,
|
|
74
126
|
* denominated in the native token of the origin chain. The gas used by the message's
|
|
75
127
|
* recipient handler function is estimated in an eth_estimateGas call to the
|
|
@@ -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;
|
|
1
|
+
{"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../src/gas/calculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculator.hardhat-test.d.ts","sourceRoot":"","sources":["../../src/gas/calculator.hardhat-test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const chai_1 = require("chai");
|
|
13
|
+
const ethers_1 = require("ethers");
|
|
14
|
+
const hardhat_1 = require("hardhat");
|
|
15
|
+
const HyperlaneCore_1 = require("../core/HyperlaneCore");
|
|
16
|
+
const TestCoreDeployer_1 = require("../core/TestCoreDeployer");
|
|
17
|
+
const utils_1 = require("../deploy/utils");
|
|
18
|
+
const calculator_1 = require("./calculator");
|
|
19
|
+
describe('InterchainGasCalculator', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
20
|
+
const localChain = 'test1';
|
|
21
|
+
const remoteChain = 'test2';
|
|
22
|
+
const expectedDefaultQuote = ethers_1.BigNumber.from('1');
|
|
23
|
+
const testGasAmount = ethers_1.BigNumber.from('100000');
|
|
24
|
+
let signer;
|
|
25
|
+
let multiProvider;
|
|
26
|
+
let calculator;
|
|
27
|
+
let igp;
|
|
28
|
+
before(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
+
[signer] = yield hardhat_1.ethers.getSigners();
|
|
30
|
+
multiProvider = (0, utils_1.getTestMultiProvider)(signer);
|
|
31
|
+
const coreDeployer = new TestCoreDeployer_1.TestCoreDeployer(multiProvider);
|
|
32
|
+
const coreContractsMaps = yield coreDeployer.deploy();
|
|
33
|
+
const core = new HyperlaneCore_1.HyperlaneCore(coreContractsMaps, multiProvider);
|
|
34
|
+
calculator = new calculator_1.InterchainGasCalculator(multiProvider, core);
|
|
35
|
+
igp = coreContractsMaps[localChain].interchainGasPaymaster.address;
|
|
36
|
+
}));
|
|
37
|
+
describe('quoteGasPaymentForDefaultIsmIgp', () => {
|
|
38
|
+
it("calls the default ISM IGP's quoteGasPayment function", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
39
|
+
const quote = yield calculator.quoteGasPaymentForDefaultIsmIgp(localChain, remoteChain, testGasAmount);
|
|
40
|
+
(0, chai_1.expect)(quote).to.equal(expectedDefaultQuote);
|
|
41
|
+
}));
|
|
42
|
+
});
|
|
43
|
+
describe('quoteGasPayment', () => {
|
|
44
|
+
it("calls the IGP's quoteGasPayment function", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
+
const quote = yield calculator.quoteGasPayment(localChain, remoteChain, testGasAmount);
|
|
46
|
+
(0, chai_1.expect)(quote).to.equal(expectedDefaultQuote);
|
|
47
|
+
}));
|
|
48
|
+
});
|
|
49
|
+
describe('quoteGasPaymentForIGP', () => {
|
|
50
|
+
it("calls the provided IGP's quoteGasPayment", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
51
|
+
const quote = yield calculator.quoteGasPaymentForIGP(localChain, remoteChain, testGasAmount, igp);
|
|
52
|
+
(0, chai_1.expect)(quote).to.equal(expectedDefaultQuote);
|
|
53
|
+
}));
|
|
54
|
+
});
|
|
55
|
+
}));
|
|
56
|
+
//# sourceMappingURL=calculator.hardhat-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculator.hardhat-test.js","sourceRoot":"","sources":["../../src/gas/calculator.hardhat-test.ts"],"names":[],"mappings":";;;;;;;;;;;AACA,+BAA8B;AAC9B,mCAAmC;AACnC,qCAAiC;AAIjC,yDAAsD;AACtD,+DAA4D;AAC5D,2CAAuD;AAIvD,6CAAuD;AAEvD,QAAQ,CAAC,yBAAyB,EAAE,GAAS,EAAE;IAC7C,MAAM,UAAU,GAAG,OAAO,CAAC;IAC3B,MAAM,WAAW,GAAG,OAAO,CAAC;IAE5B,MAAM,oBAAoB,GAAG,kBAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,kBAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,MAAyB,CAAC;IAC9B,IAAI,aAA4C,CAAC;IAEjD,IAAI,UAAmD,CAAC;IACxD,IAAI,GAAkB,CAAC;IAEvB,MAAM,CAAC,GAAS,EAAE;QAChB,CAAC,MAAM,CAAC,GAAG,MAAM,gBAAM,CAAC,UAAU,EAAE,CAAC;QAErC,aAAa,GAAG,IAAA,4BAAoB,EAAC,MAAM,CAAC,CAAC;QAE7C,MAAM,YAAY,GAAG,IAAI,mCAAgB,CAAC,aAAa,CAAC,CAAC;QACzD,MAAM,iBAAiB,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,CAAC;QACtD,MAAM,IAAI,GAAG,IAAI,6BAAa,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;QACjE,UAAU,GAAG,IAAI,oCAAuB,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC9D,GAAG,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC;IACrE,CAAC,CAAA,CAAC,CAAC;IAEH,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,EAAE,CAAC,sDAAsD,EAAE,GAAS,EAAE;YACpE,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,+BAA+B,CAC5D,UAAU,EACV,WAAW,EACX,aAAa,CACd,CAAC;YAEF,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC/C,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,0CAA0C,EAAE,GAAS,EAAE;YACxD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,eAAe,CAC5C,UAAU,EACV,WAAW,EACX,aAAa,CACd,CAAC;YAEF,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC/C,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,0CAA0C,EAAE,GAAS,EAAE;YACxD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,qBAAqB,CAClD,UAAU,EACV,WAAW,EACX,aAAa,EACb,GAAG,CACJ,CAAC;YAEF,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC/C,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAA,CAAC,CAAC"}
|