@hyperlane-xyz/sdk 1.5.4-beta0 → 1.5.5-beta0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/consts/chainMetadata.d.ts +5 -0
- package/dist/consts/chainMetadata.d.ts.map +1 -1
- package/dist/consts/chainMetadata.js +133 -5
- package/dist/consts/chainMetadata.js.map +1 -1
- package/dist/consts/chains.d.ts +11 -6
- package/dist/consts/chains.d.ts.map +1 -1
- package/dist/consts/chains.js +15 -7
- package/dist/consts/chains.js.map +1 -1
- package/dist/consts/environments/index.d.ts +387 -61
- package/dist/consts/environments/index.d.ts.map +1 -1
- package/dist/consts/environments/index.js +7 -3
- package/dist/consts/environments/index.js.map +1 -1
- package/dist/consts/environments/mainnet.json +0 -17
- package/dist/consts/environments/testnet-sealevel.json +19 -0
- package/dist/consts/environments/testnet.json +181 -167
- package/dist/consts/multisigIsm.d.ts +2 -2
- package/dist/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +61 -58
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/contracts/contracts.d.ts +2 -7
- package/dist/contracts/contracts.d.ts.map +1 -1
- package/dist/contracts/contracts.js +7 -31
- package/dist/contracts/contracts.js.map +1 -1
- package/dist/core/CoreDeployer.hardhat-test.js +4 -4
- package/dist/core/CoreDeployer.hardhat-test.js.map +1 -1
- package/dist/core/HyperlaneCore.d.ts +5 -1
- package/dist/core/HyperlaneCore.d.ts.map +1 -1
- package/dist/core/HyperlaneCore.js +13 -0
- package/dist/core/HyperlaneCore.js.map +1 -1
- package/dist/core/HyperlaneCoreChecker.d.ts.map +1 -1
- package/dist/core/HyperlaneCoreChecker.js +3 -3
- package/dist/core/HyperlaneCoreChecker.js.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.d.ts +7 -2
- package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.js +47 -27
- package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
- package/dist/core/MultiProtocolCore.d.ts.map +1 -1
- package/dist/core/MultiProtocolCore.js +1 -0
- package/dist/core/MultiProtocolCore.js.map +1 -1
- package/dist/core/MultiProtocolCore.test.js +2 -53
- package/dist/core/MultiProtocolCore.test.js.map +1 -1
- package/dist/core/TestCoreApp.d.ts +0 -1
- package/dist/core/TestCoreApp.d.ts.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.d.ts +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.d.ts.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.js +4 -9
- package/dist/core/adapters/SealevelCoreAdapter.js.map +1 -1
- package/dist/core/contracts.d.ts +3 -9
- package/dist/core/contracts.d.ts.map +1 -1
- package/dist/core/contracts.js +0 -1
- package/dist/core/contracts.js.map +1 -1
- package/dist/core/testHyperlaneDeploy.hardhat-test.js +3 -2
- package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
- package/dist/core/types.d.ts +4 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.d.ts +0 -1
- package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.js +5 -30
- package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
- package/dist/deploy/HyperlaneDeployer.d.ts +7 -5
- package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneDeployer.js +28 -25
- package/dist/deploy/HyperlaneDeployer.js.map +1 -1
- package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts +10 -0
- package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts.map +1 -0
- package/dist/deploy/HyperlaneProxyFactoryDeployer.js +30 -0
- package/dist/deploy/HyperlaneProxyFactoryDeployer.js.map +1 -0
- package/dist/deploy/contracts.d.ts +13 -0
- package/dist/deploy/contracts.d.ts.map +1 -0
- package/dist/deploy/contracts.js +20 -0
- package/dist/deploy/contracts.js.map +1 -0
- package/dist/gas/HyperlaneIgp.js +1 -1
- package/dist/gas/HyperlaneIgp.js.map +1 -1
- package/dist/gas/HyperlaneIgpChecker.d.ts +2 -2
- package/dist/gas/HyperlaneIgpChecker.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgpChecker.js +10 -27
- package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
- package/dist/gas/HyperlaneIgpDeployer.d.ts +4 -6
- package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgpDeployer.js +12 -43
- package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
- package/dist/gas/contracts.d.ts +2 -4
- package/dist/gas/contracts.d.ts.map +1 -1
- package/dist/gas/contracts.js +1 -3
- package/dist/gas/contracts.js.map +1 -1
- package/dist/gas/types.d.ts +2 -6
- package/dist/gas/types.d.ts.map +1 -1
- package/dist/gas/types.js.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.d.ts +28 -10
- package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.js +51 -70
- package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
- package/dist/hook/contracts.d.ts +6 -17
- package/dist/hook/contracts.d.ts.map +1 -1
- package/dist/hook/contracts.js +6 -13
- package/dist/hook/contracts.js.map +1 -1
- package/dist/hook/types.d.ts +24 -13
- package/dist/hook/types.d.ts.map +1 -1
- package/dist/hook/types.js +8 -6
- package/dist/hook/types.js.map +1 -1
- package/dist/index.d.ts +18 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +37 -21
- package/dist/index.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.d.ts +5 -4
- package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +3 -3
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.js +18 -59
- package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
- package/dist/ism/contracts.d.ts +4 -3
- package/dist/ism/contracts.d.ts.map +1 -1
- package/dist/ism/contracts.js +3 -2
- package/dist/ism/contracts.js.map +1 -1
- package/dist/ism/types.d.ts +6 -4
- package/dist/ism/types.d.ts.map +1 -1
- package/dist/ism/types.js.map +1 -1
- package/dist/metadata/ChainMetadataManager.d.ts +0 -10
- package/dist/metadata/ChainMetadataManager.d.ts.map +1 -1
- package/dist/metadata/ChainMetadataManager.js +2 -14
- package/dist/metadata/ChainMetadataManager.js.map +1 -1
- package/dist/metadata/agentConfig.d.ts +523 -1348
- package/dist/metadata/agentConfig.d.ts.map +1 -1
- package/dist/metadata/agentConfig.js +61 -94
- package/dist/metadata/agentConfig.js.map +1 -1
- package/dist/metadata/agentConfig.test.js +9 -9
- package/dist/metadata/agentConfig.test.js.map +1 -1
- package/dist/metadata/chainMetadataTypes.d.ts +1 -1
- package/dist/metadata/chainMetadataTypes.js +4 -4
- package/dist/metadata/chainMetadataTypes.js.map +1 -1
- package/dist/metadata/deploymentArtifacts.d.ts +5 -2
- package/dist/metadata/deploymentArtifacts.d.ts.map +1 -1
- package/dist/metadata/deploymentArtifacts.js +1 -0
- package/dist/metadata/deploymentArtifacts.js.map +1 -1
- package/dist/metadata/matchingList.d.ts +1 -1
- package/dist/metadata/matchingList.d.ts.map +1 -1
- package/dist/metadata/matchingList.js +1 -1
- package/dist/metadata/matchingList.js.map +1 -1
- package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccount.js +1 -4
- package/dist/middleware/account/InterchainAccount.js.map +1 -1
- package/dist/middleware/account/InterchainAccountDeployer.d.ts +2 -7
- package/dist/middleware/account/InterchainAccountDeployer.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccountDeployer.js +4 -9
- package/dist/middleware/account/InterchainAccountDeployer.js.map +1 -1
- package/dist/middleware/account/accounts.hardhat-test.js +3 -5
- package/dist/middleware/account/accounts.hardhat-test.js.map +1 -1
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts +2 -7
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts.map +1 -1
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js +7 -11
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js.map +1 -1
- package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js +3 -7
- package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js.map +1 -1
- package/dist/middleware/query/InterchainQueryDeployer.d.ts +2 -7
- package/dist/middleware/query/InterchainQueryDeployer.d.ts.map +1 -1
- package/dist/middleware/query/InterchainQueryDeployer.js +3 -4
- package/dist/middleware/query/InterchainQueryDeployer.js.map +1 -1
- package/dist/middleware/query/queries.hardhat-test.js +4 -9
- package/dist/middleware/query/queries.hardhat-test.js.map +1 -1
- package/dist/providers/MultiProvider.d.ts +6 -1
- package/dist/providers/MultiProvider.d.ts.map +1 -1
- package/dist/providers/MultiProvider.js +11 -0
- package/dist/providers/MultiProvider.js.map +1 -1
- package/dist/router/GasRouterDeployer.d.ts.map +1 -1
- package/dist/router/GasRouterDeployer.js +1 -1
- package/dist/router/GasRouterDeployer.js.map +1 -1
- package/dist/router/HyperlaneRouterChecker.d.ts +2 -6
- package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
- package/dist/router/HyperlaneRouterChecker.js +12 -47
- package/dist/router/HyperlaneRouterChecker.js.map +1 -1
- package/dist/router/HyperlaneRouterDeployer.d.ts +1 -1
- package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
- package/dist/router/HyperlaneRouterDeployer.js +15 -18
- package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
- package/dist/router/ProxiedRouterChecker.js +1 -1
- package/dist/router/ProxiedRouterChecker.js.map +1 -1
- package/dist/router/RouterApps.d.ts +1 -7
- package/dist/router/RouterApps.d.ts.map +1 -1
- package/dist/router/RouterApps.js +0 -17
- package/dist/router/RouterApps.js.map +1 -1
- package/dist/router/types.d.ts +14 -23
- package/dist/router/types.d.ts.map +1 -1
- package/dist/router/types.js +7 -11
- package/dist/router/types.js.map +1 -1
- package/dist/test/testUtils.d.ts +0 -2
- package/dist/test/testUtils.d.ts.map +1 -1
- package/dist/test/testUtils.js +15 -20
- package/dist/test/testUtils.js.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.d.ts +65 -0
- package/dist/token/adapters/EvmTokenAdapter.d.ts.map +1 -0
- package/dist/token/adapters/EvmTokenAdapter.js +119 -0
- package/dist/token/adapters/EvmTokenAdapter.js.map +1 -0
- package/dist/token/adapters/ITokenAdapter.d.ts +30 -0
- package/dist/token/adapters/ITokenAdapter.d.ts.map +1 -0
- package/dist/token/adapters/ITokenAdapter.js +3 -0
- package/dist/token/adapters/ITokenAdapter.js.map +1 -0
- package/dist/token/adapters/SealevelTokenAdapter.d.ts +117 -0
- package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -0
- package/dist/token/adapters/SealevelTokenAdapter.js +423 -0
- package/dist/token/adapters/SealevelTokenAdapter.js.map +1 -0
- package/dist/token/adapters/serialization.d.ts +50 -0
- package/dist/token/adapters/serialization.d.ts.map +1 -0
- package/dist/token/adapters/serialization.js +117 -0
- package/dist/token/adapters/serialization.js.map +1 -0
- package/dist/token/config.d.ts +45 -0
- package/dist/token/config.d.ts.map +1 -0
- package/dist/token/config.js +26 -0
- package/dist/token/config.js.map +1 -0
- package/dist/token/contracts.d.ts +9 -0
- package/dist/token/contracts.d.ts.map +1 -0
- package/dist/token/contracts.js +3 -0
- package/dist/token/contracts.js.map +1 -0
- package/dist/token/deploy.d.ts +40 -0
- package/dist/token/deploy.d.ts.map +1 -0
- package/dist/token/deploy.js +243 -0
- package/dist/token/deploy.js.map +1 -0
- package/package.json +8 -7
- package/dist/consts/agentStartBlocks.d.ts +0 -3
- package/dist/consts/agentStartBlocks.d.ts.map +0 -1
- package/dist/consts/agentStartBlocks.js +0 -28
- package/dist/consts/agentStartBlocks.js.map +0 -1
- package/dist/consts/environments/test.json +0 -41
- package/dist/hook/config.d.ts +0 -4
- package/dist/hook/config.d.ts.map +0 -1
- package/dist/hook/config.js +0 -9
- package/dist/hook/config.js.map +0 -1
- package/dist/ism/HyperlaneIsmFactoryDeployer.d.ts +0 -11
- package/dist/ism/HyperlaneIsmFactoryDeployer.d.ts.map +0 -1
- package/dist/ism/HyperlaneIsmFactoryDeployer.js +0 -39
- package/dist/ism/HyperlaneIsmFactoryDeployer.js.map +0 -1
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.HyperlaneProxyFactoryDeployer = void 0;
|
|
7
|
+
const debug_1 = __importDefault(require("debug"));
|
|
8
|
+
const HyperlaneDeployer_1 = require("./HyperlaneDeployer");
|
|
9
|
+
const contracts_1 = require("./contracts");
|
|
10
|
+
class HyperlaneProxyFactoryDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
11
|
+
constructor(multiProvider) {
|
|
12
|
+
super(multiProvider, contracts_1.proxyFactoryFactories, {
|
|
13
|
+
logger: (0, debug_1.default)('hyperlane:IsmFactoryDeployer'),
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
async deployContracts(chain) {
|
|
17
|
+
const contracts = {};
|
|
18
|
+
for (const factoryName of Object.keys(this.factories)) {
|
|
19
|
+
const factory = await this.deployContract(chain, factoryName, []);
|
|
20
|
+
this.addVerificationArtifact(chain, {
|
|
21
|
+
name: contracts_1.proxyFactoryImplementations[factoryName],
|
|
22
|
+
address: await factory.implementation(),
|
|
23
|
+
});
|
|
24
|
+
contracts[factoryName] = factory;
|
|
25
|
+
}
|
|
26
|
+
return contracts;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.HyperlaneProxyFactoryDeployer = HyperlaneProxyFactoryDeployer;
|
|
30
|
+
//# sourceMappingURL=HyperlaneProxyFactoryDeployer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HyperlaneProxyFactoryDeployer.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneProxyFactoryDeployer.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAM1B,2DAAwD;AACxD,2CAIqB;AAErB,MAAa,6BAA8B,SAAQ,qCAGlD;IACC,YAAY,aAA4B;QACtC,KAAK,CAAC,aAAa,EAAE,iCAAqB,EAAE;YAC1C,MAAM,EAAE,IAAA,eAAK,EAAC,8BAA8B,CAAC;SAC9C,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAAgB;QAEhB,MAAM,SAAS,GAAQ,EAAE,CAAC;QAC1B,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,IAAI,CACnC,IAAI,CAAC,SAAS,CACoB,EAAE;YACpC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;YAClE,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE;gBAClC,IAAI,EAAE,uCAA2B,CAAC,WAAW,CAAC;gBAC9C,OAAO,EAAE,MAAM,OAAO,CAAC,cAAc,EAAE;aACxC,CAAC,CAAC;YACH,SAAS,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;SAClC;QACD,OAAO,SAAsD,CAAC;IAChE,CAAC;CACF;AA1BD,sEA0BC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { DomainRoutingIsmFactory__factory, StaticAggregationHookFactory__factory, StaticAggregationIsmFactory__factory, StaticMerkleRootMultisigIsmFactory__factory, StaticMessageIdMultisigIsmFactory__factory } from '@hyperlane-xyz/core';
|
|
2
|
+
export declare const proxyFactoryFactories: {
|
|
3
|
+
merkleRootMultisigIsmFactory: StaticMerkleRootMultisigIsmFactory__factory;
|
|
4
|
+
messageIdMultisigIsmFactory: StaticMessageIdMultisigIsmFactory__factory;
|
|
5
|
+
aggregationIsmFactory: StaticAggregationIsmFactory__factory;
|
|
6
|
+
aggregationHookFactory: StaticAggregationHookFactory__factory;
|
|
7
|
+
routingIsmFactory: DomainRoutingIsmFactory__factory;
|
|
8
|
+
};
|
|
9
|
+
export type ProxyFactoryFactories = typeof proxyFactoryFactories;
|
|
10
|
+
type ProxyFactoryImplementations = Record<keyof ProxyFactoryFactories, string>;
|
|
11
|
+
export declare const proxyFactoryImplementations: ProxyFactoryImplementations;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/deploy/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gCAAgC,EAChC,qCAAqC,EACrC,oCAAoC,EACpC,2CAA2C,EAC3C,0CAA0C,EAC3C,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,qBAAqB;;;;;;CAOjC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAC;AAEjE,KAAK,2BAA2B,GAAG,MAAM,CAAC,MAAM,qBAAqB,EAAE,MAAM,CAAC,CAAC;AAG/E,eAAO,MAAM,2BAA2B,EAAE,2BAMzC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.proxyFactoryImplementations = exports.proxyFactoryFactories = void 0;
|
|
4
|
+
const core_1 = require("@hyperlane-xyz/core");
|
|
5
|
+
exports.proxyFactoryFactories = {
|
|
6
|
+
merkleRootMultisigIsmFactory: new core_1.StaticMerkleRootMultisigIsmFactory__factory(),
|
|
7
|
+
messageIdMultisigIsmFactory: new core_1.StaticMessageIdMultisigIsmFactory__factory(),
|
|
8
|
+
aggregationIsmFactory: new core_1.StaticAggregationIsmFactory__factory(),
|
|
9
|
+
aggregationHookFactory: new core_1.StaticAggregationHookFactory__factory(),
|
|
10
|
+
routingIsmFactory: new core_1.DomainRoutingIsmFactory__factory(),
|
|
11
|
+
};
|
|
12
|
+
// must match contract names for verification
|
|
13
|
+
exports.proxyFactoryImplementations = {
|
|
14
|
+
merkleRootMultisigIsmFactory: 'StaticMerkleRootMultisigIsm',
|
|
15
|
+
messageIdMultisigIsmFactory: 'StaticMessageIdMultisigIsm',
|
|
16
|
+
aggregationIsmFactory: 'StaticAggregationIsm',
|
|
17
|
+
aggregationHookFactory: 'StaticAggregationHook',
|
|
18
|
+
routingIsmFactory: 'DomaingRoutingIsm',
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=contracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/deploy/contracts.ts"],"names":[],"mappings":";;;AAAA,8CAM6B;AAEhB,QAAA,qBAAqB,GAAG;IACnC,4BAA4B,EAC1B,IAAI,kDAA2C,EAAE;IACnD,2BAA2B,EAAE,IAAI,iDAA0C,EAAE;IAC7E,qBAAqB,EAAE,IAAI,2CAAoC,EAAE;IACjE,sBAAsB,EAAE,IAAI,4CAAqC,EAAE;IACnE,iBAAiB,EAAE,IAAI,uCAAgC,EAAE;CAC1D,CAAC;AAMF,6CAA6C;AAChC,QAAA,2BAA2B,GAAgC;IACtE,4BAA4B,EAAE,6BAA6B;IAC3D,2BAA2B,EAAE,4BAA4B;IACzD,qBAAqB,EAAE,sBAAsB;IAC7C,sBAAsB,EAAE,uBAAuB;IAC/C,iBAAiB,EAAE,mBAAmB;CACvC,CAAC"}
|
package/dist/gas/HyperlaneIgp.js
CHANGED
|
@@ -49,7 +49,7 @@ class HyperlaneIgp extends HyperlaneApp_1.HyperlaneApp {
|
|
|
49
49
|
* @returns The amount of native tokens required to pay for interchain gas.
|
|
50
50
|
*/
|
|
51
51
|
quoteGasPaymentForDefaultIsmIgp(origin, destination, gasAmount) {
|
|
52
|
-
const igp = this.getContracts(origin).
|
|
52
|
+
const igp = this.getContracts(origin).interchainGasPaymaster;
|
|
53
53
|
return this.quoteGasPaymentForIgp(origin, destination, gasAmount, igp.address);
|
|
54
54
|
}
|
|
55
55
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneIgp.js","sourceRoot":"","sources":["../../src/gas/HyperlaneIgp.ts"],"names":[],"mappings":";;;AAEA,8CAAsE;AAGtE,sDAAmD;AACnD,yDAGgC;AAChC,sDAAmE;AAKnE,2CAAyD;AAEzD,MAAa,YAAa,SAAQ,2BAA0B;IAC1D,MAAM,CAAC,eAAe,CACpB,GAAQ,EACR,aAA4B;QAE5B,MAAM,YAAY,GAAG,oCAAqB,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;SAClD;QACD,OAAO,YAAY,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,YAAwC,EACxC,aAA4B;QAE5B,MAAM,MAAM,GAAG,IAAA,qCAAyB,EACtC,YAAY,EACZ,wBAAY,EACZ,aAAa,CACd,CAAC;QACF,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,eAAe,CACb,MAAiB,EACjB,WAAsB,EACtB,SAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC;QAC7D,OAAO,IAAI,CAAC,qBAAqB,CAC/B,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,CAAC,OAAO,CACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,+BAA+B,CAC7B,MAAiB,EACjB,WAAsB,EACtB,SAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"HyperlaneIgp.js","sourceRoot":"","sources":["../../src/gas/HyperlaneIgp.ts"],"names":[],"mappings":";;;AAEA,8CAAsE;AAGtE,sDAAmD;AACnD,yDAGgC;AAChC,sDAAmE;AAKnE,2CAAyD;AAEzD,MAAa,YAAa,SAAQ,2BAA0B;IAC1D,MAAM,CAAC,eAAe,CACpB,GAAQ,EACR,aAA4B;QAE5B,MAAM,YAAY,GAAG,oCAAqB,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;SAClD;QACD,OAAO,YAAY,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,YAAwC,EACxC,aAA4B;QAE5B,MAAM,MAAM,GAAG,IAAA,qCAAyB,EACtC,YAAY,EACZ,wBAAY,EACZ,aAAa,CACd,CAAC;QACF,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,eAAe,CACb,MAAiB,EACjB,WAAsB,EACtB,SAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC;QAC7D,OAAO,IAAI,CAAC,qBAAqB,CAC/B,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,CAAC,OAAO,CACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,+BAA+B,CAC7B,MAAiB,EACjB,WAAsB,EACtB,SAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC;QAC7D,OAAO,IAAI,CAAC,qBAAqB,CAC/B,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,CAAC,OAAO,CACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACO,qBAAqB,CAC7B,MAAiB,EACjB,WAAsB,EACtB,SAAoB,EACpB,6BAAsC;QAEtC,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,sCAA+B,CAAC,OAAO,CACjD,6BAA6B,EAC7B,cAAc,CACf,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC;CACF;AAzGD,oCAyGC"}
|
|
@@ -2,8 +2,8 @@ import { Address } from '@hyperlane-xyz/utils';
|
|
|
2
2
|
import { HyperlaneAppChecker } from '../deploy/HyperlaneAppChecker';
|
|
3
3
|
import { ChainName } from '../types';
|
|
4
4
|
import { HyperlaneIgp } from './HyperlaneIgp';
|
|
5
|
-
import {
|
|
6
|
-
export declare class HyperlaneIgpChecker extends HyperlaneAppChecker<HyperlaneIgp,
|
|
5
|
+
import { IgpConfig } from './types';
|
|
6
|
+
export declare class HyperlaneIgpChecker extends HyperlaneAppChecker<HyperlaneIgp, IgpConfig> {
|
|
7
7
|
checkChain(chain: ChainName): Promise<void>;
|
|
8
8
|
checkDomainOwnership(chain: ChainName): Promise<void>;
|
|
9
9
|
checkBytecodes(chain: ChainName): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneIgpChecker.d.ts","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,
|
|
1
|
+
{"version":3,"file":"HyperlaneIgpChecker.d.ts","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAGL,SAAS,EAIV,MAAM,SAAS,CAAC;AAEjB,qBAAa,mBAAoB,SAAQ,mBAAmB,CAC1D,YAAY,EACZ,SAAS,CACV;IACO,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3C,oBAAoB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IASrD,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAsC/C,mCAAmC,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCpE,2BAA2B,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAkDlE,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO;CAgBlE"}
|
|
@@ -14,20 +14,12 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
14
14
|
await this.checkBytecodes(chain);
|
|
15
15
|
await this.checkOverheadInterchainGasPaymaster(chain);
|
|
16
16
|
await this.checkInterchainGasPaymaster(chain);
|
|
17
|
-
const config = this.configMap[chain];
|
|
18
|
-
if (config.upgrade) {
|
|
19
|
-
await this.checkUpgrade(chain, config.upgrade);
|
|
20
|
-
}
|
|
21
17
|
}
|
|
22
18
|
async checkDomainOwnership(chain) {
|
|
23
19
|
const config = this.configMap[chain];
|
|
24
20
|
const ownableOverrides = {
|
|
25
21
|
storageGasOracle: config.oracleKey,
|
|
26
22
|
};
|
|
27
|
-
if (config.upgrade) {
|
|
28
|
-
const timelockController = this.app.getAddresses(chain).timelockController;
|
|
29
|
-
ownableOverrides['proxyAdmin'] = timelockController;
|
|
30
|
-
}
|
|
31
23
|
await super.checkOwnership(chain, config.owner, ownableOverrides);
|
|
32
24
|
}
|
|
33
25
|
async checkBytecodes(chain) {
|
|
@@ -38,7 +30,7 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
38
30
|
bytecode_1.BytecodeHash.INTERCHAIN_GAS_PAYMASTER_BYTECODE_HASH,
|
|
39
31
|
bytecode_1.BytecodeHash.OWNER_INITIALIZABLE_INTERCHAIN_GAS_PAYMASTER_BYTECODE_HASH,
|
|
40
32
|
]);
|
|
41
|
-
await this.checkBytecode(chain, '
|
|
33
|
+
await this.checkBytecode(chain, 'InterchainGasPaymaster', contracts.interchainGasPaymaster.address, [bytecode_1.BytecodeHash.OVERHEAD_IGP_BYTECODE_HASH], (bytecode) =>
|
|
42
34
|
// Remove the address of the wrapped IGP from the bytecode
|
|
43
35
|
bytecode.replaceAll(ethers_1.utils.defaultAbiCoder
|
|
44
36
|
.encode(['address'], [contracts.interchainGasPaymaster.address])
|
|
@@ -46,7 +38,7 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
46
38
|
}
|
|
47
39
|
async checkOverheadInterchainGasPaymaster(local) {
|
|
48
40
|
const coreContracts = this.app.getContracts(local);
|
|
49
|
-
const defaultIsmIgp = coreContracts.
|
|
41
|
+
const defaultIsmIgp = coreContracts.interchainGasPaymaster;
|
|
50
42
|
// Construct the violation, updating the actual & expected
|
|
51
43
|
// objects as violations are found.
|
|
52
44
|
// A single violation is used so that only a single `setDestinationGasOverheads`
|
|
@@ -61,13 +53,9 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
61
53
|
};
|
|
62
54
|
const remotes = this.app.remoteChains(local);
|
|
63
55
|
for (const remote of remotes) {
|
|
64
|
-
|
|
65
|
-
if (!expectedOverhead) {
|
|
66
|
-
this.app.logger(`No overhead configured for ${local} -> ${remote}, defaulting to 0`);
|
|
67
|
-
expectedOverhead = 0;
|
|
68
|
-
}
|
|
56
|
+
const expectedOverhead = this.configMap[local].overhead[remote];
|
|
69
57
|
const remoteId = this.multiProvider.getDomainId(remote);
|
|
70
|
-
const existingOverhead = await defaultIsmIgp.
|
|
58
|
+
const existingOverhead = await defaultIsmIgp.destinationGasLimit(remoteId, 0);
|
|
71
59
|
if (!existingOverhead.eq(expectedOverhead)) {
|
|
72
60
|
const remoteChain = remote;
|
|
73
61
|
overheadViolation.actual[remoteChain] = existingOverhead;
|
|
@@ -94,17 +82,13 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
94
82
|
actual: {},
|
|
95
83
|
expected: {},
|
|
96
84
|
};
|
|
97
|
-
|
|
98
|
-
// also consider what the config says about non-Ethereum chains.
|
|
99
|
-
const remotes = new Set([
|
|
100
|
-
...this.app.remoteChains(local),
|
|
101
|
-
...Object.keys(this.configMap[local].gasOracleType),
|
|
102
|
-
]);
|
|
85
|
+
const remotes = this.app.remoteChains(local);
|
|
103
86
|
for (const remote of remotes) {
|
|
104
87
|
const remoteId = this.multiProvider.getDomainId(remote);
|
|
105
|
-
const
|
|
88
|
+
const destinationGasConfigs = await igp.destinationGasConfigs(remoteId);
|
|
89
|
+
const actualGasOracle = destinationGasConfigs.gasOracle;
|
|
106
90
|
const expectedGasOracle = this.getGasOracleAddress(local, remote);
|
|
107
|
-
if (
|
|
91
|
+
if ((0, utils_1.eqAddress)(actualGasOracle, expectedGasOracle)) {
|
|
108
92
|
const remoteChain = remote;
|
|
109
93
|
gasOraclesViolation.actual[remoteChain] = actualGasOracle;
|
|
110
94
|
gasOraclesViolation.expected[remoteChain] = expectedGasOracle;
|
|
@@ -116,7 +100,7 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
116
100
|
}
|
|
117
101
|
const actualBeneficiary = await igp.beneficiary();
|
|
118
102
|
const expectedBeneficiary = this.configMap[local].beneficiary;
|
|
119
|
-
if (
|
|
103
|
+
if ((0, utils_1.eqAddress)(actualBeneficiary, expectedBeneficiary)) {
|
|
120
104
|
const violation = {
|
|
121
105
|
type: 'InterchainGasPaymaster',
|
|
122
106
|
subType: types_1.IgpViolationType.Beneficiary,
|
|
@@ -132,8 +116,7 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
|
|
|
132
116
|
const config = this.configMap[local];
|
|
133
117
|
const gasOracleType = config.gasOracleType[remote];
|
|
134
118
|
if (!gasOracleType) {
|
|
135
|
-
|
|
136
|
-
return ethers_1.ethers.constants.AddressZero;
|
|
119
|
+
throw Error(`Expected gas oracle type for local ${local} and remote ${remote}`);
|
|
137
120
|
}
|
|
138
121
|
const coreContracts = this.app.getContracts(local);
|
|
139
122
|
switch (gasOracleType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneIgpChecker.js","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpChecker.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"HyperlaneIgpChecker.js","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpChecker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
import { InterchainGasPaymaster,
|
|
2
|
-
import { Address } from '@hyperlane-xyz/utils';
|
|
1
|
+
import { InterchainGasPaymaster, ProxyAdmin, StorageGasOracle } from '@hyperlane-xyz/core';
|
|
3
2
|
import { HyperlaneContracts } from '../contracts/types';
|
|
4
3
|
import { HyperlaneDeployer } from '../deploy/HyperlaneDeployer';
|
|
5
4
|
import { MultiProvider } from '../providers/MultiProvider';
|
|
6
5
|
import { ChainName } from '../types';
|
|
7
6
|
import { IgpFactories } from './contracts';
|
|
8
|
-
import { IgpConfig
|
|
9
|
-
export declare class HyperlaneIgpDeployer extends HyperlaneDeployer<
|
|
7
|
+
import { IgpConfig } from './types';
|
|
8
|
+
export declare class HyperlaneIgpDeployer extends HyperlaneDeployer<IgpConfig, IgpFactories> {
|
|
10
9
|
constructor(multiProvider: MultiProvider);
|
|
11
10
|
deployInterchainGasPaymaster(chain: ChainName, proxyAdmin: ProxyAdmin, storageGasOracle: StorageGasOracle, config: IgpConfig): Promise<InterchainGasPaymaster>;
|
|
12
|
-
deployOverheadIgp(chain: ChainName, interchainGasPaymasterAddress: Address, config: OverheadIgpConfig): Promise<OverheadIgp>;
|
|
13
11
|
deployStorageGasOracle(chain: ChainName): Promise<StorageGasOracle>;
|
|
14
|
-
deployContracts(chain: ChainName, config:
|
|
12
|
+
deployContracts(chain: ChainName, config: IgpConfig): Promise<HyperlaneContracts<IgpFactories>>;
|
|
15
13
|
}
|
|
16
14
|
//# sourceMappingURL=HyperlaneIgpDeployer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneIgpDeployer.d.ts","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpDeployer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HyperlaneIgpDeployer.d.ts","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,sBAAsB,EACtB,UAAU,EACV,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,YAAY,EAAgB,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,qBAAa,oBAAqB,SAAQ,iBAAiB,CACzD,SAAS,EACT,YAAY,CACb;gBACa,aAAa,EAAE,aAAa;IAMlC,4BAA4B,CAChC,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,sBAAsB,CAAC;IA2C5B,sBAAsB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAInE,eAAe,CACnB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;CA4B7C"}
|
|
@@ -5,8 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.HyperlaneIgpDeployer = void 0;
|
|
7
7
|
const debug_1 = __importDefault(require("debug"));
|
|
8
|
-
const ethers_1 = require("ethers");
|
|
9
|
-
const core_1 = require("@hyperlane-xyz/core");
|
|
10
8
|
const utils_1 = require("@hyperlane-xyz/utils");
|
|
11
9
|
const HyperlaneDeployer_1 = require("../deploy/HyperlaneDeployer");
|
|
12
10
|
const contracts_1 = require("./contracts");
|
|
@@ -20,41 +18,28 @@ class HyperlaneIgpDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
|
20
18
|
const owner = config.owner;
|
|
21
19
|
const beneficiary = config.beneficiary;
|
|
22
20
|
const igp = await this.deployProxiedContract(chain, 'interchainGasPaymaster', proxyAdmin.address, [], [owner, beneficiary]);
|
|
23
|
-
const
|
|
21
|
+
const gasParamsToSet = [];
|
|
24
22
|
const remotes = Object.keys(config.gasOracleType);
|
|
25
23
|
for (const remote of remotes) {
|
|
26
24
|
const remoteId = this.multiProvider.getDomainId(remote);
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
const newGasOverhead = config.overhead[remote];
|
|
26
|
+
const currentGasConfig = await igp.destinationGasConfigs(remoteId);
|
|
27
|
+
if (!(0, utils_1.eqAddress)(currentGasConfig.gasOracle, storageGasOracle.address) ||
|
|
28
|
+
!currentGasConfig.gasOverhead.eq(newGasOverhead)) {
|
|
29
|
+
gasParamsToSet.push({
|
|
30
30
|
remoteDomain: remoteId,
|
|
31
|
-
|
|
31
|
+
config: {
|
|
32
|
+
gasOverhead: newGasOverhead,
|
|
33
|
+
gasOracle: storageGasOracle.address,
|
|
34
|
+
},
|
|
32
35
|
});
|
|
33
36
|
}
|
|
34
37
|
}
|
|
35
|
-
if (
|
|
36
|
-
await this.runIfOwner(chain, igp, async () => this.multiProvider.handleTx(chain, igp.
|
|
38
|
+
if (gasParamsToSet.length > 0) {
|
|
39
|
+
await this.runIfOwner(chain, igp, async () => this.multiProvider.handleTx(chain, igp.setDestinationGasConfigs(gasParamsToSet)));
|
|
37
40
|
}
|
|
38
41
|
return igp;
|
|
39
42
|
}
|
|
40
|
-
async deployOverheadIgp(chain, interchainGasPaymasterAddress, config) {
|
|
41
|
-
const overheadInterchainGasPaymaster = await this.deployContract(chain, 'defaultIsmInterchainGasPaymaster', [interchainGasPaymasterAddress]);
|
|
42
|
-
// Only set gas overhead configs if they differ from what's on chain
|
|
43
|
-
const configs = [];
|
|
44
|
-
const remotes = Object.keys(config.overhead);
|
|
45
|
-
for (const remote of remotes) {
|
|
46
|
-
const remoteDomain = this.multiProvider.getDomainId(remote);
|
|
47
|
-
const gasOverhead = config.overhead[remote];
|
|
48
|
-
const existingOverhead = await overheadInterchainGasPaymaster.destinationGasOverhead(remoteDomain);
|
|
49
|
-
if (!existingOverhead.eq(gasOverhead)) {
|
|
50
|
-
configs.push({ domain: remoteDomain, gasOverhead });
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
if (configs.length > 0) {
|
|
54
|
-
await this.runIfOwner(chain, overheadInterchainGasPaymaster, () => this.multiProvider.handleTx(chain, overheadInterchainGasPaymaster.setDestinationGasOverheads(configs, this.multiProvider.getTransactionOverrides(chain))));
|
|
55
|
-
}
|
|
56
|
-
return overheadInterchainGasPaymaster;
|
|
57
|
-
}
|
|
58
43
|
async deployStorageGasOracle(chain) {
|
|
59
44
|
return this.deployContract(chain, 'storageGasOracle', []);
|
|
60
45
|
}
|
|
@@ -62,23 +47,9 @@ class HyperlaneIgpDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
|
62
47
|
// NB: To share ProxyAdmins with HyperlaneCore, ensure the ProxyAdmin
|
|
63
48
|
// is loaded into the contract cache.
|
|
64
49
|
const proxyAdmin = await this.deployContract(chain, 'proxyAdmin', []);
|
|
65
|
-
let timelockController;
|
|
66
|
-
if (config.upgrade) {
|
|
67
|
-
timelockController = await this.deployTimelock(chain, config.upgrade.timelock);
|
|
68
|
-
await this.transferOwnershipOfContracts(chain, timelockController.address, { proxyAdmin });
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
// mock this for consistent serialization
|
|
72
|
-
timelockController = core_1.TimelockController__factory.connect(ethers_1.ethers.constants.AddressZero, this.multiProvider.getProvider(chain));
|
|
73
|
-
await this.transferOwnershipOfContracts(chain, config.owner, {
|
|
74
|
-
proxyAdmin,
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
50
|
const storageGasOracle = await this.deployStorageGasOracle(chain);
|
|
78
51
|
const interchainGasPaymaster = await this.deployInterchainGasPaymaster(chain, proxyAdmin, storageGasOracle, config);
|
|
79
|
-
const overheadIgp = await this.deployOverheadIgp(chain, interchainGasPaymaster.address, config);
|
|
80
52
|
await this.transferOwnershipOfContracts(chain, config.owner, {
|
|
81
|
-
overheadIgp,
|
|
82
53
|
interchainGasPaymaster,
|
|
83
54
|
});
|
|
84
55
|
// Configure oracle key for StorageGasOracle separately to keep 'hot'
|
|
@@ -88,10 +59,8 @@ class HyperlaneIgpDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
|
|
|
88
59
|
});
|
|
89
60
|
return {
|
|
90
61
|
proxyAdmin,
|
|
91
|
-
timelockController,
|
|
92
62
|
storageGasOracle,
|
|
93
63
|
interchainGasPaymaster,
|
|
94
|
-
defaultIsmInterchainGasPaymaster: overheadIgp,
|
|
95
64
|
};
|
|
96
65
|
}
|
|
97
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneIgpDeployer.js","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpDeployer.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;
|
|
1
|
+
{"version":3,"file":"HyperlaneIgpDeployer.js","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpDeployer.ts"],"names":[],"mappings":"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"}
|
package/dist/gas/contracts.d.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import { InterchainGasPaymaster__factory,
|
|
1
|
+
import { InterchainGasPaymaster__factory, ProxyAdmin__factory, StorageGasOracle__factory } from '@hyperlane-xyz/core';
|
|
2
2
|
export declare const igpFactories: {
|
|
3
|
-
proxyAdmin: import("@hyperlane-xyz/core").ProxyAdmin__factory;
|
|
4
|
-
timelockController: import("@hyperlane-xyz/core").TimelockController__factory;
|
|
5
3
|
interchainGasPaymaster: InterchainGasPaymaster__factory;
|
|
6
|
-
defaultIsmInterchainGasPaymaster: OverheadIgp__factory;
|
|
7
4
|
storageGasOracle: StorageGasOracle__factory;
|
|
5
|
+
proxyAdmin: ProxyAdmin__factory;
|
|
8
6
|
};
|
|
9
7
|
export type IgpFactories = typeof igpFactories;
|
|
10
8
|
//# sourceMappingURL=contracts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/gas/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/gas/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,YAAY;;;;CAIxB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC"}
|
package/dist/gas/contracts.js
CHANGED
|
@@ -2,11 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.igpFactories = void 0;
|
|
4
4
|
const core_1 = require("@hyperlane-xyz/core");
|
|
5
|
-
const types_1 = require("../router/types");
|
|
6
5
|
exports.igpFactories = {
|
|
7
6
|
interchainGasPaymaster: new core_1.InterchainGasPaymaster__factory(),
|
|
8
|
-
defaultIsmInterchainGasPaymaster: new core_1.OverheadIgp__factory(),
|
|
9
7
|
storageGasOracle: new core_1.StorageGasOracle__factory(),
|
|
10
|
-
|
|
8
|
+
proxyAdmin: new core_1.ProxyAdmin__factory(),
|
|
11
9
|
};
|
|
12
10
|
//# sourceMappingURL=contracts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/gas/contracts.ts"],"names":[],"mappings":";;;AAAA,8CAI6B;
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/gas/contracts.ts"],"names":[],"mappings":";;;AAAA,8CAI6B;AAEhB,QAAA,YAAY,GAAG;IAC1B,sBAAsB,EAAE,IAAI,sCAA+B,EAAE;IAC7D,gBAAgB,EAAE,IAAI,gCAAyB,EAAE;IACjD,UAAU,EAAE,IAAI,0BAAmB,EAAE;CACtC,CAAC"}
|
package/dist/gas/types.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { BigNumber } from 'ethers';
|
|
2
|
-
import { InterchainGasPaymaster
|
|
2
|
+
import { InterchainGasPaymaster } from '@hyperlane-xyz/core';
|
|
3
3
|
import type { Address } from '@hyperlane-xyz/utils';
|
|
4
|
-
import { UpgradeConfig } from '../deploy/proxy';
|
|
5
4
|
import type { CheckerViolation } from '../deploy/types';
|
|
6
5
|
import { ChainMap } from '../types';
|
|
7
6
|
export declare enum GasOracleContractType {
|
|
@@ -12,9 +11,6 @@ export type IgpConfig = {
|
|
|
12
11
|
beneficiary: Address;
|
|
13
12
|
gasOracleType: ChainMap<GasOracleContractType>;
|
|
14
13
|
oracleKey: Address;
|
|
15
|
-
upgrade?: UpgradeConfig;
|
|
16
|
-
};
|
|
17
|
-
export type OverheadIgpConfig = IgpConfig & {
|
|
18
14
|
overhead: ChainMap<number>;
|
|
19
15
|
};
|
|
20
16
|
export declare enum IgpViolationType {
|
|
@@ -40,7 +36,7 @@ export interface IgpGasOraclesViolation extends IgpViolation {
|
|
|
40
36
|
}
|
|
41
37
|
export interface IgpOverheadViolation extends IgpViolation {
|
|
42
38
|
subType: IgpViolationType.Overhead;
|
|
43
|
-
contract:
|
|
39
|
+
contract: InterchainGasPaymaster;
|
|
44
40
|
actual: ChainMap<BigNumber>;
|
|
45
41
|
expected: ChainMap<BigNumber>;
|
|
46
42
|
}
|
package/dist/gas/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/gas/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,sBAAsB,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/gas/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,oBAAY,qBAAqB;IAC/B,gBAAgB,qBAAqB;CACtC;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAC/C,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,IAAI,EAAE,wBAAwB,CAAC;IAC/B,OAAO,EAAE,gBAAgB,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAwB,SAAQ,YAAY;IAC3D,OAAO,EAAE,gBAAgB,CAAC,WAAW,CAAC;IACtC,QAAQ,EAAE,sBAAsB,CAAC;IACjC,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IAC1D,OAAO,EAAE,gBAAgB,CAAC,UAAU,CAAC;IACrC,QAAQ,EAAE,sBAAsB,CAAC;IACjC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC1B,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,OAAO,EAAE,gBAAgB,CAAC,QAAQ,CAAC;IACnC,QAAQ,EAAE,sBAAsB,CAAC;IACjC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC5B,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;CAC/B"}
|
package/dist/gas/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/gas/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/gas/types.ts"],"names":[],"mappings":";;;AAQA,IAAY,qBAEX;AAFD,WAAY,qBAAqB;IAC/B,8DAAqC,CAAA;AACvC,CAAC,EAFW,qBAAqB,qCAArB,qBAAqB,QAEhC;AAUD,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,+CAA2B,CAAA;IAC3B,6CAAyB,CAAA;IACzB,yCAAqB,CAAA;AACvB,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B"}
|
|
@@ -1,17 +1,35 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { StaticProtocolFee } from '@hyperlane-xyz/core';
|
|
2
|
+
import { HyperlaneContracts } from '../contracts/types';
|
|
3
|
+
import { CoreAddresses } from '../core/contracts';
|
|
4
4
|
import { HyperlaneDeployer } from '../deploy/HyperlaneDeployer';
|
|
5
|
+
import { HyperlaneIgpDeployer } from '../gas/HyperlaneIgpDeployer';
|
|
6
|
+
import { IgpFactories } from '../gas/contracts';
|
|
7
|
+
import { HyperlaneIsmFactory } from '../ism/HyperlaneIsmFactory';
|
|
5
8
|
import { MultiProvider } from '../providers/MultiProvider';
|
|
6
9
|
import { ChainMap, ChainName } from '../types';
|
|
7
10
|
import { HookFactories } from './contracts';
|
|
8
|
-
import { HookConfig } from './types';
|
|
11
|
+
import { AggregationHookConfig, HookConfig, IgpHookConfig, ProtocolFeeHookConfig } from './types';
|
|
9
12
|
export declare class HyperlaneHookDeployer extends HyperlaneDeployer<HookConfig, HookFactories> {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
readonly core: ChainMap<Partial<CoreAddresses>>;
|
|
14
|
+
readonly ismFactory: HyperlaneIsmFactory;
|
|
15
|
+
readonly igpDeployer: HyperlaneIgpDeployer;
|
|
16
|
+
constructor(multiProvider: MultiProvider, core: ChainMap<Partial<CoreAddresses>>, ismFactory: HyperlaneIsmFactory, igpDeployer?: HyperlaneIgpDeployer);
|
|
17
|
+
cacheAddressesMap(addressesMap: ChainMap<CoreAddresses>): void;
|
|
18
|
+
deployContracts(chain: ChainName, config: HookConfig, coreAddresses?: Partial<import("../contracts/types").HyperlaneAddresses<{
|
|
19
|
+
validatorAnnounce: import("@hyperlane-xyz/core").ValidatorAnnounce__factory;
|
|
20
|
+
proxyAdmin: import("@hyperlane-xyz/core").ProxyAdmin__factory;
|
|
21
|
+
mailbox: import("@hyperlane-xyz/core").Mailbox__factory;
|
|
22
|
+
}>>): Promise<HyperlaneContracts<HookFactories>>;
|
|
23
|
+
deployProtocolFee(chain: ChainName, config: ProtocolFeeHookConfig): Promise<StaticProtocolFee>;
|
|
24
|
+
deployIgp(chain: ChainName, config: IgpHookConfig, coreAddresses?: Partial<import("../contracts/types").HyperlaneAddresses<{
|
|
25
|
+
validatorAnnounce: import("@hyperlane-xyz/core").ValidatorAnnounce__factory;
|
|
26
|
+
proxyAdmin: import("@hyperlane-xyz/core").ProxyAdmin__factory;
|
|
27
|
+
mailbox: import("@hyperlane-xyz/core").Mailbox__factory;
|
|
28
|
+
}>>): Promise<HyperlaneContracts<IgpFactories>>;
|
|
29
|
+
deployAggregation(chain: ChainName, config: AggregationHookConfig, coreAddresses?: Partial<import("../contracts/types").HyperlaneAddresses<{
|
|
30
|
+
validatorAnnounce: import("@hyperlane-xyz/core").ValidatorAnnounce__factory;
|
|
31
|
+
proxyAdmin: import("@hyperlane-xyz/core").ProxyAdmin__factory;
|
|
32
|
+
mailbox: import("@hyperlane-xyz/core").Mailbox__factory;
|
|
33
|
+
}>>): Promise<HyperlaneContracts<HookFactories>>;
|
|
16
34
|
}
|
|
17
35
|
//# sourceMappingURL=HyperlaneHookDeployer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneHookDeployer.d.ts","sourceRoot":"","sources":["../../src/hook/HyperlaneHookDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"HyperlaneHookDeployer.d.ts","sourceRoot":"","sources":["../../src/hook/HyperlaneHookDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAiB,MAAM,aAAa,CAAC;AAC3D,OAAO,EACL,qBAAqB,EACrB,UAAU,EAEV,aAAa,EACb,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAEjB,qBAAa,qBAAsB,SAAQ,iBAAiB,CAC1D,UAAU,EACV,aAAa,CACd;IAGG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/C,QAAQ,CAAC,UAAU,EAAE,mBAAmB;IACxC,QAAQ,CAAC,WAAW;gBAHpB,aAAa,EAAE,aAAa,EACnB,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EACtC,UAAU,EAAE,mBAAmB,EAC/B,WAAW,uBAA0C;IAOhE,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,IAAI;IAKxD,eAAe,CACnB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,aAAa;;;;OAAmB,GAC/B,OAAO,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAqBvC,iBAAiB,CACrB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,iBAAiB,CAAC;IASvB,SAAS,CACb,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,aAAa,EACrB,aAAa;;;;OAAmB,GAC/B,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAatC,iBAAiB,CACrB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,qBAAqB,EAC7B,aAAa;;;;OAAmB,GAC/B,OAAO,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAuB9C"}
|