@hyperlane-xyz/sdk 3.10.0 → 3.11.0-beta-0
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/README.md +2 -0
- package/dist/app/HyperlaneApp.d.ts +4 -4
- package/dist/app/HyperlaneApp.d.ts.map +1 -1
- package/dist/app/HyperlaneApp.js +10 -11
- package/dist/app/HyperlaneApp.js.map +1 -1
- package/dist/app/MultiProtocolApp.d.ts +6 -6
- package/dist/app/MultiProtocolApp.d.ts.map +1 -1
- package/dist/app/MultiProtocolApp.js +25 -39
- package/dist/app/MultiProtocolApp.js.map +1 -1
- package/dist/app/MultiProtocolApp.test.js +15 -17
- package/dist/app/MultiProtocolApp.test.js.map +1 -1
- package/dist/consts/bytecode.d.ts +8 -8
- package/dist/consts/bytecode.d.ts.map +1 -1
- package/dist/consts/bytecode.js +2 -5
- package/dist/consts/bytecode.js.map +1 -1
- package/dist/consts/chainMetadata.d.ts +2 -2
- package/dist/consts/chainMetadata.d.ts.map +1 -1
- package/dist/consts/chainMetadata.js +198 -201
- package/dist/consts/chainMetadata.js.map +1 -1
- package/dist/consts/chains.js +12 -15
- package/dist/consts/chains.js.map +1 -1
- package/dist/consts/environments/index.d.ts +1 -1
- package/dist/consts/environments/index.d.ts.map +1 -1
- package/dist/consts/environments/index.js +5 -11
- package/dist/consts/environments/index.js.map +1 -1
- package/dist/consts/igp.js +1 -4
- package/dist/consts/igp.js.map +1 -1
- package/dist/consts/mailbox.js +1 -4
- package/dist/consts/mailbox.js.map +1 -1
- package/dist/consts/multisigIsm.d.ts +2 -2
- package/dist/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +43 -46
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/consts/sealevel.js +1 -4
- package/dist/consts/sealevel.js.map +1 -1
- package/dist/contracts/contracts.d.ts +4 -4
- package/dist/contracts/contracts.d.ts.map +1 -1
- package/dist/contracts/contracts.js +32 -47
- package/dist/contracts/contracts.js.map +1 -1
- package/dist/contracts/types.d.ts +1 -1
- package/dist/contracts/types.d.ts.map +1 -1
- package/dist/contracts/types.js +1 -2
- package/dist/core/CoreDeployer.hardhat-test.js +43 -48
- package/dist/core/CoreDeployer.hardhat-test.js.map +1 -1
- package/dist/core/HyperlaneCore.d.ts +9 -9
- package/dist/core/HyperlaneCore.d.ts.map +1 -1
- package/dist/core/HyperlaneCore.js +28 -35
- package/dist/core/HyperlaneCore.js.map +1 -1
- package/dist/core/HyperlaneCore.test.js +6 -8
- package/dist/core/HyperlaneCore.test.js.map +1 -1
- package/dist/core/HyperlaneCoreChecker.d.ts +6 -6
- package/dist/core/HyperlaneCoreChecker.d.ts.map +1 -1
- package/dist/core/HyperlaneCoreChecker.js +25 -28
- package/dist/core/HyperlaneCoreChecker.js.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.d.ts +12 -12
- package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.js +16 -17
- package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
- package/dist/core/MultiProtocolCore.d.ts +7 -7
- package/dist/core/MultiProtocolCore.d.ts.map +1 -1
- package/dist/core/MultiProtocolCore.js +18 -19
- package/dist/core/MultiProtocolCore.js.map +1 -1
- package/dist/core/MultiProtocolCore.test.js +30 -32
- package/dist/core/MultiProtocolCore.test.js.map +1 -1
- package/dist/core/TestCoreApp.d.ts +3 -3
- package/dist/core/TestCoreApp.d.ts.map +1 -1
- package/dist/core/TestCoreApp.js +9 -13
- package/dist/core/TestCoreApp.js.map +1 -1
- package/dist/core/TestCoreDeployer.d.ts +5 -5
- package/dist/core/TestCoreDeployer.d.ts.map +1 -1
- package/dist/core/TestCoreDeployer.js +7 -11
- package/dist/core/TestCoreDeployer.js.map +1 -1
- package/dist/core/TestRecipientDeployer.d.ts +5 -5
- package/dist/core/TestRecipientDeployer.d.ts.map +1 -1
- package/dist/core/TestRecipientDeployer.js +8 -12
- package/dist/core/TestRecipientDeployer.js.map +1 -1
- package/dist/core/adapters/CosmWasmCoreAdapter.d.ts +6 -6
- package/dist/core/adapters/CosmWasmCoreAdapter.d.ts.map +1 -1
- package/dist/core/adapters/CosmWasmCoreAdapter.js +12 -13
- package/dist/core/adapters/CosmWasmCoreAdapter.js.map +1 -1
- package/dist/core/adapters/CosmWasmCoreAdapter.test.js +11 -13
- package/dist/core/adapters/CosmWasmCoreAdapter.test.js.map +1 -1
- package/dist/core/adapters/CosmWasmIgpAdapter.d.ts +4 -4
- package/dist/core/adapters/CosmWasmIgpAdapter.d.ts.map +1 -1
- package/dist/core/adapters/CosmWasmIgpAdapter.js +5 -6
- package/dist/core/adapters/CosmWasmIgpAdapter.js.map +1 -1
- package/dist/core/adapters/EvmCoreAdapter.d.ts +6 -6
- package/dist/core/adapters/EvmCoreAdapter.d.ts.map +1 -1
- package/dist/core/adapters/EvmCoreAdapter.js +12 -12
- package/dist/core/adapters/EvmCoreAdapter.js.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.d.ts +5 -5
- package/dist/core/adapters/SealevelCoreAdapter.d.ts.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.js +14 -15
- package/dist/core/adapters/SealevelCoreAdapter.js.map +1 -1
- package/dist/core/adapters/SealevelCoreAdapter.test.js +5 -7
- package/dist/core/adapters/SealevelCoreAdapter.test.js.map +1 -1
- package/dist/core/adapters/types.d.ts +3 -3
- package/dist/core/adapters/types.d.ts.map +1 -1
- package/dist/core/adapters/types.js +1 -2
- package/dist/core/contracts.d.ts +1 -1
- package/dist/core/contracts.d.ts.map +1 -1
- package/dist/core/contracts.js +5 -8
- package/dist/core/contracts.js.map +1 -1
- package/dist/core/events.d.ts +1 -1
- package/dist/core/events.d.ts.map +1 -1
- package/dist/core/events.js +1 -2
- package/dist/core/testHyperlaneDeploy.hardhat-test.js +29 -31
- package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
- package/dist/core/types.d.ts +6 -6
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +4 -7
- package/dist/core/types.js.map +1 -1
- package/dist/cw-types/Cw20Base.types.js +1 -2
- package/dist/cw-types/Cw20Base.types.js.map +1 -1
- package/dist/cw-types/HookAggregate.types.js +1 -2
- package/dist/cw-types/HookAggregate.types.js.map +1 -1
- package/dist/cw-types/HookMerkle.types.js +1 -2
- package/dist/cw-types/HookMerkle.types.js.map +1 -1
- package/dist/cw-types/HookPausable.types.js +1 -2
- package/dist/cw-types/HookPausable.types.js.map +1 -1
- package/dist/cw-types/HookRouting.types.js +1 -2
- package/dist/cw-types/HookRouting.types.js.map +1 -1
- package/dist/cw-types/HookRoutingCustom.types.js +1 -2
- package/dist/cw-types/HookRoutingCustom.types.js.map +1 -1
- package/dist/cw-types/HookRoutingFallback.types.js +1 -2
- package/dist/cw-types/HookRoutingFallback.types.js.map +1 -1
- package/dist/cw-types/Igp.types.js +1 -2
- package/dist/cw-types/Igp.types.js.map +1 -1
- package/dist/cw-types/IgpOracle.types.js +1 -2
- package/dist/cw-types/IgpOracle.types.js.map +1 -1
- package/dist/cw-types/IsmAggregate.types.js +1 -2
- package/dist/cw-types/IsmAggregate.types.js.map +1 -1
- package/dist/cw-types/IsmMultisig.types.js +1 -2
- package/dist/cw-types/IsmMultisig.types.js.map +1 -1
- package/dist/cw-types/IsmRouting.types.js +1 -2
- package/dist/cw-types/IsmRouting.types.js.map +1 -1
- package/dist/cw-types/Mailbox.types.js +1 -2
- package/dist/cw-types/Mailbox.types.js.map +1 -1
- package/dist/cw-types/ValidatorAnnounce.types.js +1 -2
- package/dist/cw-types/ValidatorAnnounce.types.js.map +1 -1
- package/dist/cw-types/WarpCw20.types.js +1 -2
- package/dist/cw-types/WarpCw20.types.js.map +1 -1
- package/dist/cw-types/WarpNative.types.js +1 -2
- package/dist/cw-types/WarpNative.types.js.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.d.ts +5 -5
- package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.js +36 -36
- package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
- package/dist/deploy/HyperlaneDeployer.d.ts +11 -11
- package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneDeployer.js +55 -56
- package/dist/deploy/HyperlaneDeployer.js.map +1 -1
- package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts +6 -6
- package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneProxyFactoryDeployer.js +7 -11
- package/dist/deploy/HyperlaneProxyFactoryDeployer.js.map +1 -1
- package/dist/deploy/contracts.js +8 -11
- package/dist/deploy/contracts.js.map +1 -1
- package/dist/deploy/proxy.js +9 -16
- package/dist/deploy/proxy.js.map +1 -1
- package/dist/deploy/types.d.ts +3 -3
- package/dist/deploy/types.d.ts.map +1 -1
- package/dist/deploy/types.js +6 -11
- package/dist/deploy/types.js.map +1 -1
- package/dist/deploy/verify/ContractVerifier.d.ts +3 -3
- package/dist/deploy/verify/ContractVerifier.d.ts.map +1 -1
- package/dist/deploy/verify/ContractVerifier.js +35 -38
- package/dist/deploy/verify/ContractVerifier.js.map +1 -1
- package/dist/deploy/verify/PostDeploymentContractVerifier.d.ts +5 -5
- package/dist/deploy/verify/PostDeploymentContractVerifier.d.ts.map +1 -1
- package/dist/deploy/verify/PostDeploymentContractVerifier.js +12 -14
- package/dist/deploy/verify/PostDeploymentContractVerifier.js.map +1 -1
- package/dist/deploy/verify/types.js +7 -10
- package/dist/deploy/verify/types.js.map +1 -1
- package/dist/deploy/verify/utils.d.ts +1 -1
- package/dist/deploy/verify/utils.d.ts.map +1 -1
- package/dist/deploy/verify/utils.js +4 -11
- package/dist/deploy/verify/utils.js.map +1 -1
- package/dist/gas/HyperlaneIgp.d.ts +6 -6
- package/dist/gas/HyperlaneIgp.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgp.js +9 -13
- package/dist/gas/HyperlaneIgp.js.map +1 -1
- package/dist/gas/HyperlaneIgpChecker.d.ts +4 -4
- package/dist/gas/HyperlaneIgpChecker.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgpChecker.js +19 -23
- package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
- package/dist/gas/HyperlaneIgpDeployer.d.ts +7 -7
- package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgpDeployer.js +12 -16
- package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
- package/dist/gas/adapters/SealevelIgpAdapter.d.ts +4 -4
- package/dist/gas/adapters/SealevelIgpAdapter.d.ts.map +1 -1
- package/dist/gas/adapters/SealevelIgpAdapter.js +11 -12
- package/dist/gas/adapters/SealevelIgpAdapter.js.map +1 -1
- package/dist/gas/adapters/serialization.js +33 -19
- package/dist/gas/adapters/serialization.js.map +1 -1
- package/dist/gas/contracts.js +5 -8
- package/dist/gas/contracts.js.map +1 -1
- package/dist/gas/oracle/configure-gas-oracles.hardhat-test.js +14 -15
- package/dist/gas/oracle/configure-gas-oracles.hardhat-test.js.map +1 -1
- package/dist/gas/oracle/types.js +9 -14
- package/dist/gas/oracle/types.js.map +1 -1
- package/dist/gas/token-prices.d.ts +2 -2
- package/dist/gas/token-prices.d.ts.map +1 -1
- package/dist/gas/token-prices.js +17 -17
- package/dist/gas/token-prices.js.map +1 -1
- package/dist/gas/token-prices.test.js +10 -12
- package/dist/gas/token-prices.test.js.map +1 -1
- package/dist/gas/types.d.ts +4 -4
- package/dist/gas/types.d.ts.map +1 -1
- package/dist/gas/types.js +2 -5
- package/dist/gas/types.js.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.d.ts +16 -16
- package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.js +40 -41
- package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
- package/dist/hook/contracts.js +11 -14
- package/dist/hook/contracts.js.map +1 -1
- package/dist/hook/types.d.ts +3 -3
- package/dist/hook/types.d.ts.map +1 -1
- package/dist/hook/types.js +2 -5
- package/dist/hook/types.js.map +1 -1
- package/dist/index.d.ts +106 -107
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +97 -323
- package/dist/index.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.d.ts +8 -8
- package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +72 -74
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.js +48 -54
- package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
- package/dist/ism/adapters/CosmWasmMultisigAdapter.d.ts +5 -5
- package/dist/ism/adapters/CosmWasmMultisigAdapter.d.ts.map +1 -1
- package/dist/ism/adapters/CosmWasmMultisigAdapter.js +9 -10
- package/dist/ism/adapters/CosmWasmMultisigAdapter.js.map +1 -1
- package/dist/ism/multisig.d.ts +2 -2
- package/dist/ism/multisig.d.ts.map +1 -1
- package/dist/ism/multisig.js +9 -14
- package/dist/ism/multisig.js.map +1 -1
- package/dist/ism/types.d.ts +3 -3
- package/dist/ism/types.d.ts.map +1 -1
- package/dist/ism/types.js +5 -9
- package/dist/ism/types.js.map +1 -1
- package/dist/ism/utils.d.ts +5 -5
- package/dist/ism/utils.d.ts.map +1 -1
- package/dist/ism/utils.js +71 -78
- package/dist/ism/utils.js.map +1 -1
- package/dist/metadata/ChainMetadataManager.d.ts +2 -2
- package/dist/metadata/ChainMetadataManager.d.ts.map +1 -1
- package/dist/metadata/ChainMetadataManager.js +18 -21
- package/dist/metadata/ChainMetadataManager.js.map +1 -1
- package/dist/metadata/agentConfig.d.ts +95 -95
- package/dist/metadata/agentConfig.d.ts.map +1 -1
- package/dist/metadata/agentConfig.js +100 -104
- package/dist/metadata/agentConfig.js.map +1 -1
- package/dist/metadata/agentConfig.test.js +12 -14
- package/dist/metadata/agentConfig.test.js.map +1 -1
- package/dist/metadata/blockExplorer.d.ts +1 -1
- package/dist/metadata/blockExplorer.d.ts.map +1 -1
- package/dist/metadata/blockExplorer.js +12 -20
- package/dist/metadata/blockExplorer.js.map +1 -1
- package/dist/metadata/chainMetadata.test.js +22 -24
- package/dist/metadata/chainMetadata.test.js.map +1 -1
- package/dist/metadata/chainMetadataTypes.js +71 -79
- package/dist/metadata/chainMetadataTypes.js.map +1 -1
- package/dist/metadata/customZodTypes.js +6 -9
- package/dist/metadata/customZodTypes.js.map +1 -1
- package/dist/metadata/deploymentArtifacts.js +8 -11
- package/dist/metadata/deploymentArtifacts.js.map +1 -1
- package/dist/metadata/health.d.ts +2 -2
- package/dist/metadata/health.d.ts.map +1 -1
- package/dist/metadata/health.js +26 -34
- package/dist/metadata/health.js.map +1 -1
- package/dist/metadata/matchingList.js +9 -12
- package/dist/metadata/matchingList.js.map +1 -1
- package/dist/metadata/warpRouteConfig.d.ts +2 -2
- package/dist/metadata/warpRouteConfig.d.ts.map +1 -1
- package/dist/metadata/warpRouteConfig.js +18 -21
- package/dist/metadata/warpRouteConfig.js.map +1 -1
- package/dist/middleware/account/InterchainAccount.d.ts +7 -7
- package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccount.js +17 -22
- package/dist/middleware/account/InterchainAccount.js.map +1 -1
- package/dist/middleware/account/InterchainAccountChecker.d.ts +6 -6
- package/dist/middleware/account/InterchainAccountChecker.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccountChecker.js +4 -8
- package/dist/middleware/account/InterchainAccountChecker.js.map +1 -1
- package/dist/middleware/account/InterchainAccountDeployer.d.ts +7 -7
- package/dist/middleware/account/InterchainAccountDeployer.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccountDeployer.js +8 -12
- package/dist/middleware/account/InterchainAccountDeployer.js.map +1 -1
- package/dist/middleware/account/accounts.hardhat-test.js +29 -31
- package/dist/middleware/account/accounts.hardhat-test.js.map +1 -1
- package/dist/middleware/account/contracts.js +6 -9
- package/dist/middleware/account/contracts.js.map +1 -1
- package/dist/middleware/account/types.d.ts +1 -1
- package/dist/middleware/account/types.d.ts.map +1 -1
- package/dist/middleware/account/types.js +1 -2
- package/dist/middleware/liquidity-layer/LiquidityLayerApp.d.ts +6 -6
- package/dist/middleware/liquidity-layer/LiquidityLayerApp.d.ts.map +1 -1
- package/dist/middleware/liquidity-layer/LiquidityLayerApp.js +23 -24
- package/dist/middleware/liquidity-layer/LiquidityLayerApp.js.map +1 -1
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts +7 -7
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts.map +1 -1
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js +15 -19
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js.map +1 -1
- package/dist/middleware/liquidity-layer/contracts.js +7 -10
- package/dist/middleware/liquidity-layer/contracts.js.map +1 -1
- package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js +36 -38
- package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js.map +1 -1
- package/dist/middleware/query/InterchainQuery.d.ts +5 -5
- package/dist/middleware/query/InterchainQuery.d.ts.map +1 -1
- package/dist/middleware/query/InterchainQuery.js +7 -11
- package/dist/middleware/query/InterchainQuery.js.map +1 -1
- package/dist/middleware/query/InterchainQueryChecker.d.ts +4 -4
- package/dist/middleware/query/InterchainQueryChecker.d.ts.map +1 -1
- package/dist/middleware/query/InterchainQueryChecker.js +2 -6
- package/dist/middleware/query/InterchainQueryChecker.js.map +1 -1
- package/dist/middleware/query/InterchainQueryDeployer.d.ts +6 -6
- package/dist/middleware/query/InterchainQueryDeployer.d.ts.map +1 -1
- package/dist/middleware/query/InterchainQueryDeployer.js +7 -11
- package/dist/middleware/query/InterchainQueryDeployer.js.map +1 -1
- package/dist/middleware/query/contracts.js +5 -8
- package/dist/middleware/query/contracts.js.map +1 -1
- package/dist/middleware/query/queries.hardhat-test.js +32 -34
- package/dist/middleware/query/queries.hardhat-test.js.map +1 -1
- package/dist/providers/MultiProtocolProvider.d.ts +7 -7
- package/dist/providers/MultiProtocolProvider.d.ts.map +1 -1
- package/dist/providers/MultiProtocolProvider.js +33 -34
- package/dist/providers/MultiProtocolProvider.js.map +1 -1
- package/dist/providers/MultiProtocolProvider.test.js +12 -14
- package/dist/providers/MultiProtocolProvider.test.js.map +1 -1
- package/dist/providers/MultiProvider.d.ts +4 -4
- package/dist/providers/MultiProvider.d.ts.map +1 -1
- package/dist/providers/MultiProvider.js +21 -20
- package/dist/providers/MultiProvider.js.map +1 -1
- package/dist/providers/ProviderType.js +8 -11
- package/dist/providers/ProviderType.js.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.d.ts +2 -2
- package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.d.ts.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.js +16 -18
- package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.js.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts +2 -2
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js +26 -28
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js.map +1 -1
- package/dist/providers/SmartProvider/ProviderMethods.js +5 -9
- package/dist/providers/SmartProvider/ProviderMethods.js.map +1 -1
- package/dist/providers/SmartProvider/SmartProvider.d.ts +5 -5
- package/dist/providers/SmartProvider/SmartProvider.d.ts.map +1 -1
- package/dist/providers/SmartProvider/SmartProvider.foundry-test.js +22 -24
- package/dist/providers/SmartProvider/SmartProvider.foundry-test.js.map +1 -1
- package/dist/providers/SmartProvider/SmartProvider.js +37 -35
- package/dist/providers/SmartProvider/SmartProvider.js.map +1 -1
- package/dist/providers/SmartProvider/SmartProvider.test.js +45 -47
- package/dist/providers/SmartProvider/SmartProvider.test.js.map +1 -1
- package/dist/providers/SmartProvider/types.d.ts +1 -1
- package/dist/providers/SmartProvider/types.d.ts.map +1 -1
- package/dist/providers/SmartProvider/types.js +2 -5
- package/dist/providers/SmartProvider/types.js.map +1 -1
- package/dist/providers/providerBuilders.d.ts +3 -3
- package/dist/providers/providerBuilders.d.ts.map +1 -1
- package/dist/providers/providerBuilders.js +38 -48
- package/dist/providers/providerBuilders.js.map +1 -1
- package/dist/providers/transactionFeeEstimators.d.ts +2 -2
- package/dist/providers/transactionFeeEstimators.d.ts.map +1 -1
- package/dist/providers/transactionFeeEstimators.js +40 -50
- package/dist/providers/transactionFeeEstimators.js.map +1 -1
- package/dist/router/GasRouterDeployer.d.ts +4 -4
- package/dist/router/GasRouterDeployer.d.ts.map +1 -1
- package/dist/router/GasRouterDeployer.js +2 -6
- package/dist/router/GasRouterDeployer.js.map +1 -1
- package/dist/router/HyperlaneRouterChecker.d.ts +7 -7
- package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
- package/dist/router/HyperlaneRouterChecker.js +22 -25
- package/dist/router/HyperlaneRouterChecker.js.map +1 -1
- package/dist/router/HyperlaneRouterDeployer.d.ts +4 -4
- package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
- package/dist/router/HyperlaneRouterDeployer.js +10 -14
- package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
- package/dist/router/MultiProtocolRouterApps.d.ts +4 -5
- package/dist/router/MultiProtocolRouterApps.d.ts.map +1 -1
- package/dist/router/MultiProtocolRouterApps.js +14 -19
- package/dist/router/MultiProtocolRouterApps.js.map +1 -1
- package/dist/router/MultiProtocolRouterApps.test.js +13 -15
- package/dist/router/MultiProtocolRouterApps.test.js.map +1 -1
- package/dist/router/ProxiedRouterChecker.d.ts +4 -4
- package/dist/router/ProxiedRouterChecker.d.ts.map +1 -1
- package/dist/router/ProxiedRouterChecker.js +2 -6
- package/dist/router/ProxiedRouterChecker.js.map +1 -1
- package/dist/router/ProxiedRouterDeployer.d.ts +4 -4
- package/dist/router/ProxiedRouterDeployer.d.ts.map +1 -1
- package/dist/router/ProxiedRouterDeployer.js +9 -13
- package/dist/router/ProxiedRouterDeployer.js.map +1 -1
- package/dist/router/RouterApps.d.ts +4 -5
- package/dist/router/RouterApps.d.ts.map +1 -1
- package/dist/router/RouterApps.js +8 -12
- package/dist/router/RouterApps.js.map +1 -1
- package/dist/router/adapters/EvmRouterAdapter.d.ts +4 -4
- package/dist/router/adapters/EvmRouterAdapter.d.ts.map +1 -1
- package/dist/router/adapters/EvmRouterAdapter.js +11 -13
- package/dist/router/adapters/EvmRouterAdapter.js.map +1 -1
- package/dist/router/adapters/SealevelRouterAdapter.d.ts +4 -4
- package/dist/router/adapters/SealevelRouterAdapter.d.ts.map +1 -1
- package/dist/router/adapters/SealevelRouterAdapter.js +6 -8
- package/dist/router/adapters/SealevelRouterAdapter.js.map +1 -1
- package/dist/router/adapters/types.d.ts +2 -2
- package/dist/router/adapters/types.d.ts.map +1 -1
- package/dist/router/adapters/types.js +1 -2
- package/dist/router/types.d.ts +4 -4
- package/dist/router/types.d.ts.map +1 -1
- package/dist/router/types.js +8 -11
- package/dist/router/types.js.map +1 -1
- package/dist/test/metadata-check.js +17 -19
- package/dist/test/metadata-check.js.map +1 -1
- package/dist/test/testUtils.d.ts +8 -8
- package/dist/test/testUtils.d.ts.map +1 -1
- package/dist/test/testUtils.js +29 -34
- package/dist/test/testUtils.js.map +1 -1
- package/dist/token/IToken.d.ts +27 -27
- package/dist/token/IToken.d.ts.map +1 -1
- package/dist/token/IToken.js +18 -21
- package/dist/token/IToken.js.map +1 -1
- package/dist/token/Token.d.ts +7 -7
- package/dist/token/Token.d.ts.map +1 -1
- package/dist/token/Token.js +77 -80
- package/dist/token/Token.js.map +1 -1
- package/dist/token/Token.test.js +68 -70
- package/dist/token/Token.test.js.map +1 -1
- package/dist/token/TokenAmount.d.ts +1 -1
- package/dist/token/TokenAmount.d.ts.map +1 -1
- package/dist/token/TokenAmount.js +5 -7
- package/dist/token/TokenAmount.js.map +1 -1
- package/dist/token/TokenAmount.test.js +22 -24
- package/dist/token/TokenAmount.test.js.map +1 -1
- package/dist/token/TokenConnection.d.ts +4 -4
- package/dist/token/TokenConnection.d.ts.map +1 -1
- package/dist/token/TokenConnection.js +26 -31
- package/dist/token/TokenConnection.js.map +1 -1
- package/dist/token/TokenStandard.d.ts +2 -2
- package/dist/token/TokenStandard.d.ts.map +1 -1
- package/dist/token/TokenStandard.js +54 -57
- package/dist/token/TokenStandard.js.map +1 -1
- package/dist/token/adapters/CosmWasmTokenAdapter.d.ts +9 -9
- package/dist/token/adapters/CosmWasmTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/CosmWasmTokenAdapter.js +28 -19
- package/dist/token/adapters/CosmWasmTokenAdapter.js.map +1 -1
- package/dist/token/adapters/CosmWasmTokenAdapter.test.js +39 -47
- package/dist/token/adapters/CosmWasmTokenAdapter.test.js.map +1 -1
- package/dist/token/adapters/CosmosTokenAdapter.d.ts +6 -6
- package/dist/token/adapters/CosmosTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/CosmosTokenAdapter.js +22 -19
- package/dist/token/adapters/CosmosTokenAdapter.js.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.d.ts +6 -6
- package/dist/token/adapters/EvmTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.js +32 -26
- package/dist/token/adapters/EvmTokenAdapter.js.map +1 -1
- package/dist/token/adapters/ITokenAdapter.d.ts +2 -2
- package/dist/token/adapters/ITokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/ITokenAdapter.js +1 -2
- package/dist/token/adapters/SealevelTokenAdapter.d.ts +7 -7
- package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/SealevelTokenAdapter.js +68 -61
- package/dist/token/adapters/SealevelTokenAdapter.js.map +1 -1
- package/dist/token/adapters/serialization.d.ts +1 -1
- package/dist/token/adapters/serialization.d.ts.map +1 -1
- package/dist/token/adapters/serialization.js +58 -28
- package/dist/token/adapters/serialization.js.map +1 -1
- package/dist/token/config.d.ts +1 -1
- package/dist/token/config.d.ts.map +1 -1
- package/dist/token/config.js +10 -21
- package/dist/token/config.js.map +1 -1
- package/dist/token/contracts.js +31 -34
- package/dist/token/contracts.js.map +1 -1
- package/dist/token/deploy.d.ts +11 -11
- package/dist/token/deploy.d.ts.map +1 -1
- package/dist/token/deploy.hardhat-test.js +16 -18
- package/dist/token/deploy.hardhat-test.js.map +1 -1
- package/dist/token/deploy.js +60 -65
- package/dist/token/deploy.js.map +1 -1
- package/dist/types.js +1 -2
- package/dist/utils/MultiGeneric.d.ts +1 -1
- package/dist/utils/MultiGeneric.d.ts.map +1 -1
- package/dist/utils/MultiGeneric.js +4 -7
- package/dist/utils/MultiGeneric.js.map +1 -1
- package/dist/utils/fetch.js +3 -10
- package/dist/utils/fetch.js.map +1 -1
- package/dist/utils/filter.d.ts +1 -1
- package/dist/utils/filter.d.ts.map +1 -1
- package/dist/utils/filter.js +1 -5
- package/dist/utils/filter.js.map +1 -1
- package/dist/utils/ism.js +5 -12
- package/dist/utils/ism.js.map +1 -1
- package/dist/utils/sealevelSerialization.js +10 -9
- package/dist/utils/sealevelSerialization.js.map +1 -1
- package/dist/utils/wagmi.d.ts +2 -2
- package/dist/utils/wagmi.d.ts.map +1 -1
- package/dist/utils/wagmi.js +7 -11
- package/dist/utils/wagmi.js.map +1 -1
- package/dist/warp/WarpCore.d.ts +7 -7
- package/dist/warp/WarpCore.d.ts.map +1 -1
- package/dist/warp/WarpCore.js +37 -35
- package/dist/warp/WarpCore.js.map +1 -1
- package/dist/warp/WarpCore.test.js +67 -73
- package/dist/warp/WarpCore.test.js.map +1 -1
- package/dist/warp/types.d.ts +39 -39
- package/dist/warp/types.d.ts.map +1 -1
- package/dist/warp/types.js +17 -20
- package/dist/warp/types.js.map +1 -1
- package/package.json +21 -12
|
@@ -1,65 +1,54 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const utils_1 = require("@hyperlane-xyz/utils");
|
|
6
|
-
function serializeContractsMap(contractsMap) {
|
|
7
|
-
return (0, utils_1.objMap)(contractsMap, (_, contracts) => {
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { ProtocolType, hexOrBase58ToHex, objFilter, objMap, pick, promiseObjAll, } from '@hyperlane-xyz/utils';
|
|
3
|
+
export function serializeContractsMap(contractsMap) {
|
|
4
|
+
return objMap(contractsMap, (_, contracts) => {
|
|
8
5
|
return serializeContracts(contracts);
|
|
9
6
|
});
|
|
10
7
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return (0, utils_1.objMap)(contracts, (_, contract) => contract.address ? contract.address : serializeContracts(contract));
|
|
8
|
+
export function serializeContracts(contracts) {
|
|
9
|
+
return objMap(contracts, (_, contract) => contract.address ? contract.address : serializeContracts(contract));
|
|
14
10
|
}
|
|
15
|
-
exports.serializeContracts = serializeContracts;
|
|
16
11
|
function getFactory(key, factories) {
|
|
17
12
|
if (!(key in factories)) {
|
|
18
13
|
throw new Error(`Factories entry missing for ${key.toString()}`);
|
|
19
14
|
}
|
|
20
15
|
return factories[key];
|
|
21
16
|
}
|
|
22
|
-
function filterAddressesMap(addressesMap, factories) {
|
|
17
|
+
export function filterAddressesMap(addressesMap, factories) {
|
|
23
18
|
const factoryKeys = Object.keys(factories);
|
|
24
19
|
// Filter out addresses that we do not have factories for
|
|
25
|
-
const pickedAddressesMap =
|
|
20
|
+
const pickedAddressesMap = objMap(addressesMap, (_, addresses) => pick(addresses, factoryKeys));
|
|
26
21
|
// Filter out chains for which we do not have a complete set of addresses
|
|
27
|
-
return
|
|
22
|
+
return objFilter(pickedAddressesMap, (_, addresses) => {
|
|
28
23
|
return Object.keys(addresses).every((a) => factoryKeys.includes(a));
|
|
29
24
|
});
|
|
30
25
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return (0, utils_1.objFilter)(contractsMap, (c, _addrs) => metadataManager.tryGetChainMetadata(c)?.protocol === protocolType);
|
|
26
|
+
export function filterChainMapToProtocol(contractsMap, protocolType, metadataManager) {
|
|
27
|
+
return objFilter(contractsMap, (c, _addrs) => metadataManager.tryGetChainMetadata(c)?.protocol === protocolType);
|
|
34
28
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
return (0, utils_1.objFilter)(contractsMap, (c, _addrs) => metadataManager.tryGetChainMetadata(c)?.protocol !== protocolType);
|
|
29
|
+
export function filterChainMapExcludeProtocol(contractsMap, protocolType, metadataManager) {
|
|
30
|
+
return objFilter(contractsMap, (c, _addrs) => metadataManager.tryGetChainMetadata(c)?.protocol !== protocolType);
|
|
38
31
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return (0, utils_1.objMap)(addresses, (key, address) => {
|
|
32
|
+
export function attachContracts(addresses, factories) {
|
|
33
|
+
return objMap(addresses, (key, address) => {
|
|
42
34
|
const factory = getFactory(key, factories);
|
|
43
35
|
return factory.attach(address);
|
|
44
36
|
});
|
|
45
37
|
}
|
|
46
|
-
|
|
47
|
-
function attachContractsMap(addressesMap, factories) {
|
|
38
|
+
export function attachContractsMap(addressesMap, factories) {
|
|
48
39
|
const filteredAddressesMap = filterAddressesMap(addressesMap, factories);
|
|
49
|
-
return
|
|
40
|
+
return objMap(filteredAddressesMap, (_, addresses) => attachContracts(addresses, factories));
|
|
50
41
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
const
|
|
54
|
-
const foreignDeployments = (0, utils_1.objMap)(filterChainMapExcludeProtocol(addressesMap, utils_1.ProtocolType.Ethereum, metadataManager), (_, addresses) => (0, utils_1.hexOrBase58ToHex)(addresses.router));
|
|
42
|
+
export function attachContractsMapAndGetForeignDeployments(addressesMap, factories, metadataManager) {
|
|
43
|
+
const contractsMap = attachContractsMap(filterChainMapToProtocol(addressesMap, ProtocolType.Ethereum, metadataManager), factories);
|
|
44
|
+
const foreignDeployments = objMap(filterChainMapExcludeProtocol(addressesMap, ProtocolType.Ethereum, metadataManager), (_, addresses) => hexOrBase58ToHex(addresses.router));
|
|
55
45
|
return {
|
|
56
46
|
contractsMap,
|
|
57
47
|
foreignDeployments,
|
|
58
48
|
};
|
|
59
49
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
const connectedContracts = (0, utils_1.objMap)(contracts, (_, contract) => {
|
|
50
|
+
export function connectContracts(contracts, connection) {
|
|
51
|
+
const connectedContracts = objMap(contracts, (_, contract) => {
|
|
63
52
|
if (!contract.connect) {
|
|
64
53
|
return undefined;
|
|
65
54
|
}
|
|
@@ -67,12 +56,10 @@ function connectContracts(contracts, connection) {
|
|
|
67
56
|
});
|
|
68
57
|
return Object.fromEntries(Object.entries(connectedContracts).filter(([_, contract]) => !!contract));
|
|
69
58
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
return (0, utils_1.objMap)(contractsMap, (chain, contracts) => connectContracts(contracts, multiProvider.getSignerOrProvider(chain)));
|
|
59
|
+
export function connectContractsMap(contractsMap, multiProvider) {
|
|
60
|
+
return objMap(contractsMap, (chain, contracts) => connectContracts(contracts, multiProvider.getSignerOrProvider(chain)));
|
|
73
61
|
}
|
|
74
|
-
|
|
75
|
-
async function filterOwnableContracts(contracts) {
|
|
62
|
+
export async function filterOwnableContracts(contracts) {
|
|
76
63
|
const isOwnable = async (_, contract) => {
|
|
77
64
|
try {
|
|
78
65
|
await contract.owner();
|
|
@@ -82,22 +69,21 @@ async function filterOwnableContracts(contracts) {
|
|
|
82
69
|
return false;
|
|
83
70
|
}
|
|
84
71
|
};
|
|
85
|
-
const isOwnableContracts = await
|
|
86
|
-
return
|
|
72
|
+
const isOwnableContracts = await promiseObjAll(objMap(contracts, isOwnable));
|
|
73
|
+
return objFilter(contracts, (name, contract) => isOwnableContracts[name]);
|
|
87
74
|
}
|
|
88
|
-
|
|
89
|
-
function appFromAddressesMapHelper(addressesMap, factories, multiProvider) {
|
|
75
|
+
export function appFromAddressesMapHelper(addressesMap, factories, multiProvider) {
|
|
90
76
|
// Hack to accommodate non-Ethereum artifacts, while still retaining their
|
|
91
77
|
// presence in the addressesMap so that they are included in the list of chains
|
|
92
78
|
// on the MultiProvider (needed for getting metadata). A non-Ethereum-style address
|
|
93
79
|
// from another execution environment will cause Ethers to throw if we try to attach
|
|
94
80
|
// it, so we just replace it with the zero address.
|
|
95
|
-
const addressesMapWithEthereumizedAddresses =
|
|
81
|
+
const addressesMapWithEthereumizedAddresses = objMap(addressesMap, (chain, addresses) => {
|
|
96
82
|
const metadata = multiProvider.getChainMetadata(chain);
|
|
97
|
-
if (metadata.protocol ===
|
|
83
|
+
if (metadata.protocol === ProtocolType.Ethereum) {
|
|
98
84
|
return addresses;
|
|
99
85
|
}
|
|
100
|
-
return
|
|
86
|
+
return objMap(addresses, (_key, _address) => ethers.constants.AddressZero);
|
|
101
87
|
});
|
|
102
88
|
// Attaches contracts for each chain for which we have a complete set of
|
|
103
89
|
// addresses
|
|
@@ -106,11 +92,10 @@ function appFromAddressesMapHelper(addressesMap, factories, multiProvider) {
|
|
|
106
92
|
// of addresses
|
|
107
93
|
const intersection = multiProvider.intersect(Object.keys(contractsMap));
|
|
108
94
|
// Filters out contracts for chains for which we don't have a provider
|
|
109
|
-
const filteredContractsMap =
|
|
95
|
+
const filteredContractsMap = pick(contractsMap, intersection.intersection);
|
|
110
96
|
return {
|
|
111
97
|
contractsMap: filteredContractsMap,
|
|
112
98
|
multiProvider: multiProvider,
|
|
113
99
|
};
|
|
114
100
|
}
|
|
115
|
-
exports.appFromAddressesMapHelper = appFromAddressesMapHelper;
|
|
116
101
|
//# sourceMappingURL=contracts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/contracts/contracts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/contracts/contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contracts/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contracts/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,MAAM,YAAY,GAAG;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,kBAAkB,IAAI;KAC5D,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,kBAAkB,IAAI,QAAQ,CACxE,kBAAkB,CAAC,CAAC,CAAC,CACtB,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,kBAAkB,IAAI;KAC5D,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO;CACxB,CAAC;AAEF,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,kBAAkB,IAAI,QAAQ,CACxE,kBAAkB,CAAC,CAAC,CAAC,CACtB,CAAC"}
|
package/dist/contracts/types.js
CHANGED
|
@@ -1,22 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const MultiProvider_1 = require("../providers/MultiProvider");
|
|
16
|
-
const testUtils_1 = require("../test/testUtils");
|
|
17
|
-
const HyperlaneCore_1 = require("./HyperlaneCore");
|
|
18
|
-
const HyperlaneCoreChecker_1 = require("./HyperlaneCoreChecker");
|
|
19
|
-
const HyperlaneCoreDeployer_1 = require("./HyperlaneCoreDeployer");
|
|
1
|
+
import '@nomiclabs/hardhat-waffle';
|
|
2
|
+
import { assert, expect } from 'chai';
|
|
3
|
+
import hre from 'hardhat';
|
|
4
|
+
import sinon from 'sinon';
|
|
5
|
+
import { objMap, promiseObjAll } from '@hyperlane-xyz/utils';
|
|
6
|
+
import { TestChains } from '../consts/chains.js';
|
|
7
|
+
import { HyperlaneProxyFactoryDeployer } from '../deploy/HyperlaneProxyFactoryDeployer.js';
|
|
8
|
+
import { HyperlaneIsmFactory } from '../ism/HyperlaneIsmFactory.js';
|
|
9
|
+
import { IsmType } from '../ism/types.js';
|
|
10
|
+
import { MultiProvider } from '../providers/MultiProvider.js';
|
|
11
|
+
import { testCoreConfig } from '../test/testUtils.js';
|
|
12
|
+
import { HyperlaneCore } from './HyperlaneCore.js';
|
|
13
|
+
import { HyperlaneCoreChecker } from './HyperlaneCoreChecker.js';
|
|
14
|
+
import { HyperlaneCoreDeployer } from './HyperlaneCoreDeployer.js';
|
|
20
15
|
describe('core', async () => {
|
|
21
16
|
let multiProvider;
|
|
22
17
|
let deployer;
|
|
@@ -25,51 +20,51 @@ describe('core', async () => {
|
|
|
25
20
|
let coreConfig;
|
|
26
21
|
let ismFactory;
|
|
27
22
|
before(async () => {
|
|
28
|
-
const [signer] = await
|
|
29
|
-
multiProvider =
|
|
30
|
-
const proxyFactoryDeployer = new
|
|
31
|
-
coreConfig =
|
|
23
|
+
const [signer] = await hre.ethers.getSigners();
|
|
24
|
+
multiProvider = MultiProvider.createTestMultiProvider({ signer });
|
|
25
|
+
const proxyFactoryDeployer = new HyperlaneProxyFactoryDeployer(multiProvider);
|
|
26
|
+
coreConfig = testCoreConfig(TestChains, signer.address);
|
|
32
27
|
const ismFactories = await proxyFactoryDeployer.deploy(coreConfig);
|
|
33
|
-
ismFactory = new
|
|
34
|
-
deployer = new
|
|
28
|
+
ismFactory = new HyperlaneIsmFactory(ismFactories, multiProvider);
|
|
29
|
+
deployer = new HyperlaneCoreDeployer(multiProvider, ismFactory);
|
|
35
30
|
});
|
|
36
31
|
it('deploys', async () => {
|
|
37
32
|
contracts = await deployer.deploy(coreConfig);
|
|
38
|
-
core = new
|
|
33
|
+
core = new HyperlaneCore(contracts, multiProvider);
|
|
39
34
|
});
|
|
40
35
|
describe('idempotency', () => {
|
|
41
36
|
beforeEach(async () => {
|
|
42
37
|
contracts = await deployer.deploy(coreConfig);
|
|
43
38
|
});
|
|
44
39
|
it('rotates default and required hooks and recovers artifacts', async () => {
|
|
45
|
-
const getHooks = async (contracts) =>
|
|
40
|
+
const getHooks = async (contracts) => promiseObjAll(objMap(contracts, async (_, { mailbox }) => ({
|
|
46
41
|
default: await mailbox.defaultHook(),
|
|
47
42
|
required: await mailbox.requiredHook(),
|
|
48
43
|
})));
|
|
49
44
|
const hooksBefore = await getHooks(contracts);
|
|
50
|
-
const updatedConfig =
|
|
45
|
+
const updatedConfig = objMap(coreConfig, (_, config) => ({
|
|
51
46
|
...config,
|
|
52
47
|
defaultHook: config.requiredHook,
|
|
53
48
|
requiredHook: config.defaultHook,
|
|
54
49
|
}));
|
|
55
|
-
const [signer] = await
|
|
50
|
+
const [signer] = await hre.ethers.getSigners();
|
|
56
51
|
const nonceBefore = await signer.getTransactionCount();
|
|
57
52
|
const updatedContracts = await deployer.deploy(updatedConfig);
|
|
58
53
|
const hooksAfter = await getHooks(updatedContracts);
|
|
59
|
-
|
|
54
|
+
expect(hooksBefore).to.deep.equal(objMap(hooksAfter, (_, res) => ({
|
|
60
55
|
required: res.default,
|
|
61
56
|
default: res.required,
|
|
62
57
|
})));
|
|
63
58
|
// number of set hook transactions
|
|
64
|
-
const numTransactions = 2 *
|
|
59
|
+
const numTransactions = 2 * TestChains.length;
|
|
65
60
|
const nonceAfter = await signer.getTransactionCount();
|
|
66
|
-
|
|
61
|
+
expect(nonceAfter).to.equal(nonceBefore + numTransactions);
|
|
67
62
|
});
|
|
68
63
|
it('rotates default ISMs', async () => {
|
|
69
64
|
const testIsm = await contracts.test1.mailbox.defaultIsm();
|
|
70
|
-
const updatedConfig =
|
|
65
|
+
const updatedConfig = objMap(coreConfig, (_, config) => {
|
|
71
66
|
const ismConfig = {
|
|
72
|
-
type:
|
|
67
|
+
type: IsmType.AGGREGATION,
|
|
73
68
|
modules: [testIsm, testIsm],
|
|
74
69
|
threshold: 2,
|
|
75
70
|
};
|
|
@@ -78,22 +73,22 @@ describe('core', async () => {
|
|
|
78
73
|
defaultIsm: ismConfig,
|
|
79
74
|
};
|
|
80
75
|
});
|
|
81
|
-
const [signer] = await
|
|
76
|
+
const [signer] = await hre.ethers.getSigners();
|
|
82
77
|
const nonceBefore = await signer.getTransactionCount();
|
|
83
78
|
await deployer.deploy(updatedConfig);
|
|
84
79
|
// 3x1 for aggregation ISM deploy
|
|
85
80
|
// 3x1 for setting ISM transaction for mailbox
|
|
86
81
|
// 3x1 for setting ISM transaction for test recipient
|
|
87
|
-
const numTransactions = 3 *
|
|
82
|
+
const numTransactions = 3 * TestChains.length;
|
|
88
83
|
const nonceAfter = await signer.getTransactionCount();
|
|
89
|
-
|
|
84
|
+
expect(nonceAfter).to.equal(nonceBefore + numTransactions);
|
|
90
85
|
});
|
|
91
86
|
});
|
|
92
87
|
describe('failure modes', async () => {
|
|
93
88
|
beforeEach(async () => {
|
|
94
|
-
deployer = new
|
|
95
|
-
const stub =
|
|
96
|
-
stub.withArgs('test3',
|
|
89
|
+
deployer = new HyperlaneCoreDeployer(multiProvider, ismFactory);
|
|
90
|
+
const stub = sinon.stub(deployer, 'deployContracts');
|
|
91
|
+
stub.withArgs('test3', sinon.match.any).rejects();
|
|
97
92
|
// @ts-ignore
|
|
98
93
|
deployer.deployContracts.callThrough();
|
|
99
94
|
try {
|
|
@@ -103,23 +98,23 @@ describe('core', async () => {
|
|
|
103
98
|
catch (e) { }
|
|
104
99
|
});
|
|
105
100
|
afterEach(async () => {
|
|
106
|
-
|
|
101
|
+
sinon.restore();
|
|
107
102
|
});
|
|
108
103
|
it('persists partial failure', async () => {
|
|
109
|
-
|
|
104
|
+
expect(deployer.deployedContracts).to.have.keys(['test1', 'test2']);
|
|
110
105
|
});
|
|
111
106
|
it('can be resumed from partial (chain) failure', async () => {
|
|
112
|
-
|
|
107
|
+
sinon.restore(); // restore normal deployer behavior and test3 will be deployed
|
|
113
108
|
const result = await deployer.deploy(coreConfig);
|
|
114
|
-
|
|
109
|
+
expect(result).to.have.keys(['test1', 'test2', 'test3']);
|
|
115
110
|
// Each test network key has entries about the other test networks, where ISM details are stored.
|
|
116
111
|
// With this exception, the keys should be the same, so we check the intersections for equality.
|
|
117
112
|
const testnetKeysIntersection = Object.keys(result.test1).filter((key) => Object.keys(result.test2).includes(key) &&
|
|
118
113
|
Object.keys(result.test3).includes(key));
|
|
119
|
-
|
|
114
|
+
assert(testnetKeysIntersection.length > 0, 'there are no common core contracts deployed between the local testnets');
|
|
120
115
|
});
|
|
121
116
|
it('can be resumed from partial contracts', async () => {
|
|
122
|
-
|
|
117
|
+
sinon.restore(); // restore normal deployer behavior
|
|
123
118
|
//@ts-ignore operand not optional, ignore for this test
|
|
124
119
|
delete deployer.deployedContracts.test2.multisigIsm;
|
|
125
120
|
//@ts-ignore operand not optional, ignore for this test
|
|
@@ -127,7 +122,7 @@ describe('core', async () => {
|
|
|
127
122
|
const result = await deployer.deploy(coreConfig);
|
|
128
123
|
const testnetKeysIntersection = Object.keys(result.test1).filter((key) => Object.keys(result.test2).includes(key) &&
|
|
129
124
|
Object.keys(result.test3).includes(key));
|
|
130
|
-
|
|
125
|
+
assert(testnetKeysIntersection.length > 0, 'there are no common core contracts deployed between the local testnets');
|
|
131
126
|
});
|
|
132
127
|
it('times out ', async () => {
|
|
133
128
|
// @ts-ignore
|
|
@@ -142,7 +137,7 @@ describe('core', async () => {
|
|
|
142
137
|
});
|
|
143
138
|
});
|
|
144
139
|
it('checks', async () => {
|
|
145
|
-
const checker = new
|
|
140
|
+
const checker = new HyperlaneCoreChecker(multiProvider, core, coreConfig, ismFactory);
|
|
146
141
|
await checker.check();
|
|
147
142
|
});
|
|
148
143
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoreDeployer.hardhat-test.js","sourceRoot":"","sources":["../../src/core/CoreDeployer.hardhat-test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CoreDeployer.hardhat-test.js","sourceRoot":"","sources":["../../src/core/CoreDeployer.hardhat-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
2
|
import type { TransactionReceipt as ViemTxReceipt } from 'viem';
|
|
3
3
|
import { Address, AddressBytes32 } from '@hyperlane-xyz/utils';
|
|
4
|
-
import { HyperlaneApp } from '../app/HyperlaneApp';
|
|
5
|
-
import { HyperlaneEnvironment } from '../consts/environments';
|
|
6
|
-
import { HyperlaneAddressesMap } from '../contracts/types';
|
|
7
|
-
import { OwnableConfig } from '../deploy/types';
|
|
8
|
-
import { MultiProvider } from '../providers/MultiProvider';
|
|
9
|
-
import { RouterConfig } from '../router/types';
|
|
10
|
-
import { ChainMap, ChainName } from '../types';
|
|
11
|
-
import { CoreFactories } from './contracts';
|
|
12
|
-
import { DispatchedMessage } from './types';
|
|
4
|
+
import { HyperlaneApp } from '../app/HyperlaneApp.js';
|
|
5
|
+
import { HyperlaneEnvironment } from '../consts/environments/index.js';
|
|
6
|
+
import { HyperlaneAddressesMap } from '../contracts/types.js';
|
|
7
|
+
import { OwnableConfig } from '../deploy/types.js';
|
|
8
|
+
import { MultiProvider } from '../providers/MultiProvider.js';
|
|
9
|
+
import { RouterConfig } from '../router/types.js';
|
|
10
|
+
import { ChainMap, ChainName } from '../types.js';
|
|
11
|
+
import { CoreFactories } from './contracts.js';
|
|
12
|
+
import { DispatchedMessage } from './types.js';
|
|
13
13
|
export declare class HyperlaneCore extends HyperlaneApp<CoreFactories> {
|
|
14
14
|
static fromEnvironment<Env extends HyperlaneEnvironment>(env: Env, multiProvider: MultiProvider): HyperlaneCore;
|
|
15
15
|
static fromAddressesMap(addressesMap: HyperlaneAddressesMap<any>, multiProvider: MultiProvider): HyperlaneCore;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneCore.d.ts","sourceRoot":"","sources":["../../src/core/HyperlaneCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,kBAAkB,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAGhE,OAAO,EACL,OAAO,EACP,cAAc,EAOf,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"HyperlaneCore.d.ts","sourceRoot":"","sources":["../../src/core/HyperlaneCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,kBAAkB,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAGhE,OAAO,EACL,OAAO,EACP,cAAc,EAOf,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EACL,oBAAoB,EAErB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,aAAa,EAAiB,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,qBAAa,aAAc,SAAQ,YAAY,CAAC,aAAa,CAAC;IAC5D,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,oBAAoB,EACrD,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,GAC3B,aAAa;IAQhB,MAAM,CAAC,gBAAgB,CACrB,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,aAAa,EAAE,aAAa,GAC3B,aAAa;IAShB,eAAe,WACL,OAAO,GAAG,SAAS,aAAa,CAAC,KACxC,SAAS,YAAY,CAAC,CAYvB;IAEF,eAAe,WACL,SAAS,eACJ,SAAS,aACX,cAAc,QACnB,MAAM,KACX,QAAQ,OAAO,SAAS,CAAC,CAK1B;IAEF,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,SAAS;IAI/D,SAAS,CAAC,qBAAqB,CAC7B,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC;IAkB5B,yBAAyB,CAC7B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,SAAS,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAmBhB,wBAAwB,CACtB,QAAQ,EAAE,MAAM,CAAC,eAAe,GAAG,aAAa,GAC/C,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;IAM9B,uBAAuB,CAC3B,QAAQ,EAAE,MAAM,CAAC,eAAe,GAAG,aAAa,EAChD,KAAK,CAAC,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAkBhB,qBAAqB,CACnB,QAAQ,EAAE,MAAM,CAAC,eAAe,GAAG,aAAa,GAC/C,iBAAiB,EAAE;IAItB,MAAM,CAAC,qBAAqB,CAC1B,QAAQ,EAAE,MAAM,CAAC,eAAe,GAAG,aAAa,GAC/C,iBAAiB,EAAE;CAqBvB"}
|
|
@@ -1,46 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const contracts_1 = require("../contracts/contracts");
|
|
10
|
-
const contracts_2 = require("./contracts");
|
|
11
|
-
class HyperlaneCore extends HyperlaneApp_1.HyperlaneApp {
|
|
12
|
-
constructor() {
|
|
13
|
-
super(...arguments);
|
|
14
|
-
this.getRouterConfig = (owners) => {
|
|
15
|
-
// get config
|
|
16
|
-
const config = (0, utils_1.objMap)(this.contractsMap, (chain, contracts) => ({
|
|
17
|
-
mailbox: contracts.mailbox.address,
|
|
18
|
-
owner: typeof owners === 'string' ? owners : owners[chain].owner,
|
|
19
|
-
}));
|
|
20
|
-
// filter for EVM chains
|
|
21
|
-
return (0, utils_1.objFilter)(config, (chainName, _) => chainMetadata_1.chainMetadata[chainName].protocol === utils_1.ProtocolType.Ethereum);
|
|
22
|
-
};
|
|
23
|
-
this.quoteGasPayment = (origin, destination, recipient, body) => {
|
|
24
|
-
const destinationId = this.multiProvider.getDomainId(destination);
|
|
25
|
-
return this.contractsMap[origin].mailbox['quoteDispatch(uint32,bytes32,bytes)'](destinationId, recipient, body);
|
|
26
|
-
};
|
|
27
|
-
}
|
|
1
|
+
import { Mailbox__factory } from '@hyperlane-xyz/core';
|
|
2
|
+
import { ProtocolType, messageId, objFilter, objMap, parseMessage, pollAsync, } from '@hyperlane-xyz/utils';
|
|
3
|
+
import { HyperlaneApp } from '../app/HyperlaneApp.js';
|
|
4
|
+
import { chainMetadata } from '../consts/chainMetadata.js';
|
|
5
|
+
import { hyperlaneEnvironments, } from '../consts/environments/index.js';
|
|
6
|
+
import { appFromAddressesMapHelper } from '../contracts/contracts.js';
|
|
7
|
+
import { coreFactories } from './contracts.js';
|
|
8
|
+
export class HyperlaneCore extends HyperlaneApp {
|
|
28
9
|
static fromEnvironment(env, multiProvider) {
|
|
29
|
-
const envAddresses =
|
|
10
|
+
const envAddresses = hyperlaneEnvironments[env];
|
|
30
11
|
if (!envAddresses) {
|
|
31
12
|
throw new Error(`No addresses found for ${env}`);
|
|
32
13
|
}
|
|
33
14
|
return HyperlaneCore.fromAddressesMap(envAddresses, multiProvider);
|
|
34
15
|
}
|
|
35
16
|
static fromAddressesMap(addressesMap, multiProvider) {
|
|
36
|
-
const helper =
|
|
17
|
+
const helper = appFromAddressesMapHelper(addressesMap, coreFactories, multiProvider);
|
|
37
18
|
return new HyperlaneCore(helper.contractsMap, helper.multiProvider);
|
|
38
19
|
}
|
|
20
|
+
getRouterConfig = (owners) => {
|
|
21
|
+
// get config
|
|
22
|
+
const config = objMap(this.contractsMap, (chain, contracts) => ({
|
|
23
|
+
mailbox: contracts.mailbox.address,
|
|
24
|
+
owner: typeof owners === 'string' ? owners : owners[chain].owner,
|
|
25
|
+
}));
|
|
26
|
+
// filter for EVM chains
|
|
27
|
+
return objFilter(config, (chainName, _) => chainMetadata[chainName].protocol === ProtocolType.Ethereum);
|
|
28
|
+
};
|
|
29
|
+
quoteGasPayment = (origin, destination, recipient, body) => {
|
|
30
|
+
const destinationId = this.multiProvider.getDomainId(destination);
|
|
31
|
+
return this.contractsMap[origin].mailbox['quoteDispatch(uint32,bytes32,bytes)'](destinationId, recipient, body);
|
|
32
|
+
};
|
|
39
33
|
getDestination(message) {
|
|
40
34
|
return this.multiProvider.getChainName(message.parsed.destination);
|
|
41
35
|
}
|
|
42
36
|
waitForProcessReceipt(message) {
|
|
43
|
-
const id =
|
|
37
|
+
const id = messageId(message.message);
|
|
44
38
|
const destinationChain = this.getDestination(message);
|
|
45
39
|
const mailbox = this.contractsMap[destinationChain].mailbox;
|
|
46
40
|
const filter = mailbox.filters.ProcessId(id);
|
|
@@ -54,7 +48,7 @@ class HyperlaneCore extends HyperlaneApp_1.HyperlaneApp {
|
|
|
54
48
|
});
|
|
55
49
|
}
|
|
56
50
|
async waitForMessageIdProcessed(messageId, destination, delayMs, maxAttempts) {
|
|
57
|
-
await
|
|
51
|
+
await pollAsync(async () => {
|
|
58
52
|
this.logger.debug(`Checking if message ${messageId} was processed`);
|
|
59
53
|
const mailbox = this.contractsMap[destination].mailbox;
|
|
60
54
|
const delivered = await mailbox.delivered(messageId);
|
|
@@ -83,7 +77,7 @@ class HyperlaneCore extends HyperlaneApp_1.HyperlaneApp {
|
|
|
83
77
|
return HyperlaneCore.getDispatchedMessages(sourceTx);
|
|
84
78
|
}
|
|
85
79
|
static getDispatchedMessages(sourceTx) {
|
|
86
|
-
const mailbox =
|
|
80
|
+
const mailbox = Mailbox__factory.createInterface();
|
|
87
81
|
const dispatchLogs = sourceTx.logs
|
|
88
82
|
.map((log) => {
|
|
89
83
|
try {
|
|
@@ -96,11 +90,10 @@ class HyperlaneCore extends HyperlaneApp_1.HyperlaneApp {
|
|
|
96
90
|
.filter((log) => !!log && log.name === 'Dispatch');
|
|
97
91
|
return dispatchLogs.map((log) => {
|
|
98
92
|
const message = log.args['message'];
|
|
99
|
-
const parsed =
|
|
100
|
-
const id =
|
|
93
|
+
const parsed = parseMessage(message);
|
|
94
|
+
const id = messageId(message);
|
|
101
95
|
return { id, message, parsed };
|
|
102
96
|
});
|
|
103
97
|
}
|
|
104
98
|
}
|
|
105
|
-
exports.HyperlaneCore = HyperlaneCore;
|
|
106
99
|
//# sourceMappingURL=HyperlaneCore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperlaneCore.js","sourceRoot":"","sources":["../../src/core/HyperlaneCore.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HyperlaneCore.js","sourceRoot":"","sources":["../../src/core/HyperlaneCore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const MultiProvider_1 = require("../providers/MultiProvider");
|
|
4
|
-
const HyperlaneCore_1 = require("./HyperlaneCore");
|
|
1
|
+
import { MultiProvider } from '../providers/MultiProvider.js';
|
|
2
|
+
import { HyperlaneCore } from './HyperlaneCore.js';
|
|
5
3
|
describe('HyperlaneCore', () => {
|
|
6
4
|
describe('fromEnvironment', () => {
|
|
7
5
|
it('creates an object for mainnet', async () => {
|
|
8
|
-
const multiProvider = new
|
|
9
|
-
|
|
6
|
+
const multiProvider = new MultiProvider();
|
|
7
|
+
HyperlaneCore.fromEnvironment('mainnet', multiProvider);
|
|
10
8
|
});
|
|
11
9
|
it('creates an object for testnet', async () => {
|
|
12
|
-
const multiProvider = new
|
|
13
|
-
|
|
10
|
+
const multiProvider = new MultiProvider();
|
|
11
|
+
HyperlaneCore.fromEnvironment('testnet', multiProvider);
|
|
14
12
|
});
|
|
15
13
|
});
|
|
16
14
|
});
|