@hyperlane-xyz/sdk 3.9.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 +11 -3
- package/dist/app/HyperlaneApp.d.ts +6 -7
- package/dist/app/HyperlaneApp.d.ts.map +1 -1
- package/dist/app/HyperlaneApp.js +10 -15
- package/dist/app/HyperlaneApp.js.map +1 -1
- package/dist/app/MultiProtocolApp.d.ts +10 -11
- package/dist/app/MultiProtocolApp.d.ts.map +1 -1
- package/dist/app/MultiProtocolApp.js +25 -43
- 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 -3
- package/dist/consts/chainMetadata.d.ts.map +1 -1
- package/dist/consts/chainMetadata.js +198 -234
- package/dist/consts/chainMetadata.js.map +1 -1
- package/dist/consts/chains.d.ts +0 -1
- package/dist/consts/chains.d.ts.map +1 -1
- package/dist/consts/chains.js +12 -17
- package/dist/consts/chains.js.map +1 -1
- package/dist/consts/environments/index.d.ts +292 -244
- 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/environments/mainnet.json +287 -244
- package/dist/consts/environments/testnet.json +49 -47
- 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 -54
- 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 +33 -48
- 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 +31 -38
- 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 +26 -27
- package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
- package/dist/core/MultiProtocolCore.d.ts +9 -10
- package/dist/core/MultiProtocolCore.d.ts.map +1 -1
- package/dist/core/MultiProtocolCore.js +18 -23
- 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 +11 -18
- 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 +6 -6
- package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.js +39 -36
- package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
- package/dist/deploy/HyperlaneDeployer.d.ts +34 -16
- package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneDeployer.js +112 -79
- 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 -14
- 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 +6 -2
- package/dist/deploy/types.d.ts.map +1 -1
- package/dist/deploy/types.js +16 -7
- package/dist/deploy/types.js.map +1 -1
- package/dist/deploy/verify/ContractVerifier.d.ts +8 -7
- package/dist/deploy/verify/ContractVerifier.d.ts.map +1 -1
- package/dist/deploy/verify/ContractVerifier.js +52 -56
- package/dist/deploy/verify/ContractVerifier.js.map +1 -1
- package/dist/deploy/verify/PostDeploymentContractVerifier.d.ts +6 -7
- package/dist/deploy/verify/PostDeploymentContractVerifier.d.ts.map +1 -1
- package/dist/deploy/verify/PostDeploymentContractVerifier.js +14 -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 +20 -24
- 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 +16 -25
- 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 +52 -55
- 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 -105
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +97 -320
- package/dist/index.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.d.ts +13 -13
- package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +77 -79
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.js +62 -67
- 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 +77 -82
- package/dist/ism/utils.js.map +1 -1
- package/dist/metadata/ChainMetadataManager.d.ts +5 -5
- package/dist/metadata/ChainMetadataManager.d.ts.map +1 -1
- package/dist/metadata/ChainMetadataManager.js +22 -22
- 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 +44 -52
- 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 +15 -5
- package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccount.js +71 -13
- 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 +14 -11
- package/dist/middleware/account/InterchainAccountDeployer.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccountDeployer.js +16 -12
- package/dist/middleware/account/InterchainAccountDeployer.js.map +1 -1
- package/dist/middleware/account/accounts.hardhat-test.js +44 -30
- 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 +10 -0
- package/dist/middleware/account/types.d.ts.map +1 -0
- package/dist/middleware/account/types.js +2 -0
- package/dist/middleware/account/types.js.map +1 -0
- 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 +14 -12
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts.map +1 -1
- package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js +32 -28
- 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 +13 -9
- package/dist/middleware/query/InterchainQueryDeployer.d.ts.map +1 -1
- package/dist/middleware/query/InterchainQueryDeployer.js +16 -12
- 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 +10 -10
- package/dist/providers/MultiProtocolProvider.d.ts.map +1 -1
- package/dist/providers/MultiProtocolProvider.js +37 -35
- 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 +7 -7
- package/dist/providers/MultiProvider.d.ts.map +1 -1
- package/dist/providers/MultiProvider.js +27 -23
- 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 +3 -4
- package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.d.ts.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.js +19 -25
- package/dist/providers/SmartProvider/HyperlaneEtherscanProvider.js.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts +3 -4
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js +32 -38
- 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 +7 -7
- 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 +45 -45
- 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 +5 -5
- package/dist/router/GasRouterDeployer.d.ts.map +1 -1
- package/dist/router/GasRouterDeployer.js +4 -8
- 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 +14 -18
- 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 +28 -9
- package/dist/router/ProxiedRouterDeployer.d.ts.map +1 -1
- package/dist/router/ProxiedRouterDeployer.js +13 -19
- package/dist/router/ProxiedRouterDeployer.js.map +1 -1
- package/dist/router/RouterApps.d.ts +6 -7
- 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 -20
- 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 +21 -21
- 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 +2 -2
- 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 +2 -1
- package/dist/token/config.d.ts.map +1 -1
- package/dist/token/config.js +10 -19
- package/dist/token/config.js.map +1 -1
- package/dist/token/contracts.d.ts +21 -0
- package/dist/token/contracts.d.ts.map +1 -1
- package/dist/token/contracts.js +33 -18
- package/dist/token/contracts.js.map +1 -1
- package/dist/token/deploy.d.ts +26 -19
- 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 +142 -112
- 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 +10 -10
- package/dist/warp/WarpCore.d.ts.map +1 -1
- package/dist/warp/WarpCore.js +53 -51
- 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 +29 -29
- 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 +22 -14
- package/dist/logger.d.ts +0 -3
- package/dist/logger.d.ts.map +0 -1
- package/dist/logger.js +0 -11
- package/dist/logger.js.map +0 -1
|
@@ -1,15 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const ProxiedRouterDeployer_1 = require("../../router/ProxiedRouterDeployer");
|
|
6
|
-
const contracts_1 = require("./contracts");
|
|
7
|
-
class InterchainAccountDeployer extends ProxiedRouterDeployer_1.ProxiedRouterDeployer {
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { ProxiedRouterDeployer } from '../../router/ProxiedRouterDeployer.js';
|
|
3
|
+
import { interchainAccountFactories, } from './contracts.js';
|
|
4
|
+
export class InterchainAccountDeployer extends ProxiedRouterDeployer {
|
|
8
5
|
constructor(multiProvider, contractVerifier) {
|
|
9
|
-
super(multiProvider,
|
|
6
|
+
super(multiProvider, interchainAccountFactories, {
|
|
10
7
|
contractVerifier,
|
|
11
8
|
});
|
|
12
|
-
|
|
9
|
+
}
|
|
10
|
+
routerContractName() {
|
|
11
|
+
return 'interchainAccountRouter';
|
|
12
|
+
}
|
|
13
|
+
routerContractKey() {
|
|
14
|
+
return 'interchainAccountRouter';
|
|
15
|
+
}
|
|
16
|
+
router(contracts) {
|
|
17
|
+
return contracts.interchainAccountRouter;
|
|
13
18
|
}
|
|
14
19
|
async constructorArgs(_, config) {
|
|
15
20
|
return [config.mailbox];
|
|
@@ -17,8 +22,8 @@ class InterchainAccountDeployer extends ProxiedRouterDeployer_1.ProxiedRouterDep
|
|
|
17
22
|
async initializeArgs(chain, config) {
|
|
18
23
|
const owner = await this.multiProvider.getSignerAddress(chain);
|
|
19
24
|
return [
|
|
20
|
-
config.hook ??
|
|
21
|
-
config.interchainSecurityModule,
|
|
25
|
+
config.hook ?? ethers.constants.AddressZero,
|
|
26
|
+
config.interchainSecurityModule, // deployed in deployContracts
|
|
22
27
|
owner,
|
|
23
28
|
];
|
|
24
29
|
}
|
|
@@ -38,5 +43,4 @@ class InterchainAccountDeployer extends ProxiedRouterDeployer_1.ProxiedRouterDep
|
|
|
38
43
|
};
|
|
39
44
|
}
|
|
40
45
|
}
|
|
41
|
-
exports.InterchainAccountDeployer = InterchainAccountDeployer;
|
|
42
46
|
//# sourceMappingURL=InterchainAccountDeployer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InterchainAccountDeployer.js","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccountDeployer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"InterchainAccountDeployer.js","sourceRoot":"","sources":["../../../src/middleware/account/InterchainAccountDeployer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAOhC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAI9E,OAAO,EAEL,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAIxB,MAAM,OAAO,yBAA0B,SAAQ,qBAG9C;IACC,YACE,aAA4B,EAC5B,gBAAmC;QAEnC,KAAK,CAAC,aAAa,EAAE,0BAA0B,EAAE;YAC/C,gBAAgB;SACjB,CAAC,CAAC;IACL,CAAC;IACD,kBAAkB;QAChB,OAAO,yBAAyB,CAAC;IACnC,CAAC;IAED,iBAAiB;QACf,OAAO,yBAA8B,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,SAAyD;QAC9D,OAAO,SAAS,CAAC,uBAAuB,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,CAAS,EACT,MAAoB;QAEpB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAQ,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,MAAoB;QACtD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/D,OAAO;YACL,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,WAAW;YAC3C,MAAM,CAAC,wBAAmC,EAAE,8BAA8B;YAC1E,KAAK;SACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAAgB,EAChB,MAA+B;QAE/B,IAAI,MAAM,CAAC,wBAAwB,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,cAAc,CACpD,KAAK,EACL,sBAAsB,EACtB,CAAC,MAAM,CAAC,OAAO,CAAC,CACjB,CAAC;QACF,MAAM,cAAc,GAAG;YACrB,GAAG,MAAM;YACT,wBAAwB,EAAE,oBAAoB,CAAC,OAAO;SACvD,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAErE,OAAO;YACL,GAAG,SAAS;YACZ,oBAAoB;SACrB,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,58 +1,72 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const
|
|
16
|
-
const remoteChain = chains_1.Chains.test2;
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import { BigNumber, constants } from 'ethers';
|
|
3
|
+
import hre from 'hardhat';
|
|
4
|
+
import { TestRecipient__factory, } from '@hyperlane-xyz/core';
|
|
5
|
+
import { Chains } from '../../consts/chains.js';
|
|
6
|
+
import { TestCoreDeployer } from '../../core/TestCoreDeployer.js';
|
|
7
|
+
import { HyperlaneProxyFactoryDeployer } from '../../deploy/HyperlaneProxyFactoryDeployer.js';
|
|
8
|
+
import { HyperlaneIsmFactory } from '../../ism/HyperlaneIsmFactory.js';
|
|
9
|
+
import { MultiProvider } from '../../providers/MultiProvider.js';
|
|
10
|
+
import { InterchainAccount } from './InterchainAccount.js';
|
|
11
|
+
import { InterchainAccountChecker } from './InterchainAccountChecker.js';
|
|
12
|
+
import { InterchainAccountDeployer } from './InterchainAccountDeployer.js';
|
|
13
|
+
describe('InterchainAccounts', async () => {
|
|
14
|
+
const localChain = Chains.test1;
|
|
15
|
+
const remoteChain = Chains.test2;
|
|
17
16
|
let signer;
|
|
18
17
|
let contracts;
|
|
19
18
|
let local;
|
|
20
19
|
let remote;
|
|
21
20
|
let multiProvider;
|
|
22
21
|
let coreApp;
|
|
22
|
+
let app;
|
|
23
23
|
let config;
|
|
24
24
|
before(async () => {
|
|
25
|
-
[signer] = await
|
|
26
|
-
multiProvider =
|
|
27
|
-
const ismFactoryDeployer = new
|
|
28
|
-
const ismFactory = new
|
|
29
|
-
coreApp = await new
|
|
25
|
+
[signer] = await hre.ethers.getSigners();
|
|
26
|
+
multiProvider = MultiProvider.createTestMultiProvider({ signer });
|
|
27
|
+
const ismFactoryDeployer = new HyperlaneProxyFactoryDeployer(multiProvider);
|
|
28
|
+
const ismFactory = new HyperlaneIsmFactory(await ismFactoryDeployer.deploy(multiProvider.mapKnownChains(() => ({}))), multiProvider);
|
|
29
|
+
coreApp = await new TestCoreDeployer(multiProvider, ismFactory).deployApp();
|
|
30
30
|
config = coreApp.getRouterConfig(signer.address);
|
|
31
31
|
});
|
|
32
32
|
beforeEach(async () => {
|
|
33
|
-
contracts = await new
|
|
33
|
+
contracts = await new InterchainAccountDeployer(multiProvider).deploy(config);
|
|
34
34
|
local = contracts[localChain].interchainAccountRouter;
|
|
35
35
|
remote = contracts[remoteChain].interchainAccountRouter;
|
|
36
|
+
app = new InterchainAccount(contracts, multiProvider);
|
|
36
37
|
});
|
|
37
38
|
it('checks', async () => {
|
|
38
|
-
const
|
|
39
|
-
const checker = new InterchainAccountChecker_1.InterchainAccountChecker(multiProvider, app, config);
|
|
39
|
+
const checker = new InterchainAccountChecker(multiProvider, app, config);
|
|
40
40
|
await checker.check();
|
|
41
|
-
|
|
41
|
+
expect(checker.violations.length).to.eql(0);
|
|
42
42
|
});
|
|
43
43
|
it('forwards calls from interchain account', async () => {
|
|
44
|
-
const recipientF = new
|
|
44
|
+
const recipientF = new TestRecipient__factory(signer);
|
|
45
45
|
const recipient = await recipientF.deploy();
|
|
46
46
|
const fooMessage = 'Test';
|
|
47
47
|
const data = recipient.interface.encodeFunctionData('fooBar', [
|
|
48
48
|
1,
|
|
49
49
|
fooMessage,
|
|
50
50
|
]);
|
|
51
|
-
const icaAddress = await remote['getLocalInterchainAccount(uint32,address,address,address)'](multiProvider.getDomainId(localChain), signer.address, local.address,
|
|
52
|
-
|
|
51
|
+
const icaAddress = await remote['getLocalInterchainAccount(uint32,address,address,address)'](multiProvider.getDomainId(localChain), signer.address, local.address, constants.AddressZero);
|
|
52
|
+
const call = {
|
|
53
|
+
to: recipient.address,
|
|
54
|
+
data,
|
|
55
|
+
value: BigNumber.from('0'),
|
|
56
|
+
};
|
|
57
|
+
const quote = await local['quoteGasPayment(uint32)'](multiProvider.getDomainId(remoteChain));
|
|
58
|
+
const balanceBefore = await signer.getBalance();
|
|
59
|
+
const config = {
|
|
60
|
+
origin: localChain,
|
|
61
|
+
owner: signer.address,
|
|
62
|
+
localRouter: local.address,
|
|
63
|
+
};
|
|
64
|
+
await app.callRemote(localChain, remoteChain, [call], config);
|
|
65
|
+
const balanceAfter = await signer.getBalance();
|
|
53
66
|
await coreApp.processMessages();
|
|
54
|
-
|
|
55
|
-
|
|
67
|
+
expect(balanceAfter).to.lte(balanceBefore.sub(quote));
|
|
68
|
+
expect(await recipient.lastCallMessage()).to.eql(fooMessage);
|
|
69
|
+
expect(await recipient.lastCaller()).to.eql(icaAddress);
|
|
56
70
|
});
|
|
57
71
|
});
|
|
58
72
|
//# sourceMappingURL=accounts.hardhat-test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.hardhat-test.js","sourceRoot":"","sources":["../../../src/middleware/account/accounts.hardhat-test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"accounts.hardhat-test.js","sourceRoot":"","sources":["../../../src/middleware/account/accounts.hardhat-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
interchainAccountRouter: new core_1.InterchainAccountRouter__factory(),
|
|
8
|
-
interchainAccountIsm: new core_1.InterchainAccountIsm__factory(),
|
|
9
|
-
...types_1.proxiedFactories,
|
|
1
|
+
import { InterchainAccountIsm__factory, InterchainAccountRouter__factory, } from '@hyperlane-xyz/core';
|
|
2
|
+
import { proxiedFactories } from '../../router/types.js';
|
|
3
|
+
export const interchainAccountFactories = {
|
|
4
|
+
interchainAccountRouter: new InterchainAccountRouter__factory(),
|
|
5
|
+
interchainAccountIsm: new InterchainAccountIsm__factory(),
|
|
6
|
+
...proxiedFactories,
|
|
10
7
|
};
|
|
11
8
|
//# sourceMappingURL=contracts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/middleware/account/contracts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/middleware/account/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,gCAAgC,GACjC,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,uBAAuB,EAAE,IAAI,gCAAgC,EAAE;IAC/D,oBAAoB,EAAE,IAAI,6BAA6B,EAAE;IACzD,GAAG,gBAAgB;CACpB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Address } from '@hyperlane-xyz/utils';
|
|
2
|
+
import { ChainName } from '../../types.js';
|
|
3
|
+
export type AccountConfig = {
|
|
4
|
+
origin: ChainName;
|
|
5
|
+
owner: Address;
|
|
6
|
+
localRouter?: Address;
|
|
7
|
+
routerOverride?: Address;
|
|
8
|
+
ismOverride?: Address;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/middleware/account/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/middleware/account/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { HyperlaneApp } from '../../app/HyperlaneApp';
|
|
2
|
-
import { HyperlaneContracts } from '../../contracts/types';
|
|
3
|
-
import { MultiProvider } from '../../providers/MultiProvider';
|
|
4
|
-
import { ChainMap, ChainName } from '../../types';
|
|
5
|
-
import { BridgeAdapterConfig } from './LiquidityLayerRouterDeployer';
|
|
6
|
-
import { liquidityLayerFactories } from './contracts';
|
|
1
|
+
import { HyperlaneApp } from '../../app/HyperlaneApp.js';
|
|
2
|
+
import { HyperlaneContracts } from '../../contracts/types.js';
|
|
3
|
+
import { MultiProvider } from '../../providers/MultiProvider.js';
|
|
4
|
+
import { ChainMap, ChainName } from '../../types.js';
|
|
5
|
+
import { BridgeAdapterConfig } from './LiquidityLayerRouterDeployer.js';
|
|
6
|
+
import { liquidityLayerFactories } from './contracts.js';
|
|
7
7
|
interface CircleBridgeMessage {
|
|
8
8
|
chain: ChainName;
|
|
9
9
|
remoteChain: ChainName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiquidityLayerApp.d.ts","sourceRoot":"","sources":["../../../src/middleware/liquidity-layer/LiquidityLayerApp.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"LiquidityLayerApp.d.ts","sourceRoot":"","sources":["../../../src/middleware/liquidity-layer/LiquidityLayerApp.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAyBzD,UAAU,mBAAmB;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,EAAE,SAAS,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,mBAAmB;IAC3B,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,SAAS,CAAC;CACxB;AAED,qBAAa,iBAAkB,SAAQ,YAAY,CACjD,OAAO,uBAAuB,CAC/B;aAEmB,YAAY,EAAE,QAAQ,CACpC,kBAAkB,CAAC,OAAO,uBAAuB,CAAC,CACnD;aACe,aAAa,EAAE,aAAa;aAC5B,MAAM,EAAE,QAAQ,CAAC,mBAAmB,CAAC;gBAJrC,YAAY,EAAE,QAAQ,CACpC,kBAAkB,CAAC,OAAO,uBAAuB,CAAC,CACnD,EACe,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,QAAQ,CAAC,mBAAmB,CAAC;IAKjD,8BAA8B,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAgBnE,6BAA6B,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAmBlE,mBAAmB,CACvB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAsB3B,mBAAmB,CACvB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAqD3B,+BAA+B,CACnC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC;IA8DV,kCAAkC,CACtC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC;CA4CjB"}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const utils_1 = require("@hyperlane-xyz/utils");
|
|
7
|
-
const HyperlaneApp_1 = require("../../app/HyperlaneApp");
|
|
8
|
-
const fetch_1 = require("../../utils/fetch");
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { CircleBridgeAdapter__factory, ICircleMessageTransmitter__factory, ITokenMessenger__factory, Mailbox__factory, PortalAdapter__factory, } from '@hyperlane-xyz/core';
|
|
3
|
+
import { addressToBytes32, ensure0x, eqAddress, strip0x, } from '@hyperlane-xyz/utils';
|
|
4
|
+
import { HyperlaneApp } from '../../app/HyperlaneApp.js';
|
|
5
|
+
import { fetchWithTimeout } from '../../utils/fetch.js';
|
|
9
6
|
const PORTAL_VAA_SERVICE_TESTNET_BASE_URL = 'https://wormhole-v2-testnet-api.certus.one/v1/signed_vaa/';
|
|
10
7
|
const CIRCLE_ATTESTATIONS_TESTNET_BASE_URL = 'https://iris-api-sandbox.circle.com/attestations/';
|
|
11
8
|
const CIRCLE_ATTESTATIONS_MAINNET_BASE_URL = 'https://iris-api.circle.com/attestations/';
|
|
12
9
|
const PORTAL_VAA_SERVICE_SUCCESS_CODE = 5;
|
|
13
|
-
const TokenMessengerInterface =
|
|
14
|
-
const CircleBridgeAdapterInterface =
|
|
15
|
-
const PortalAdapterInterface =
|
|
16
|
-
const MailboxInterface =
|
|
10
|
+
const TokenMessengerInterface = ITokenMessenger__factory.createInterface();
|
|
11
|
+
const CircleBridgeAdapterInterface = CircleBridgeAdapter__factory.createInterface();
|
|
12
|
+
const PortalAdapterInterface = PortalAdapter__factory.createInterface();
|
|
13
|
+
const MailboxInterface = Mailbox__factory.createInterface();
|
|
17
14
|
const BridgedTokenTopic = CircleBridgeAdapterInterface.getEventTopic(CircleBridgeAdapterInterface.getEvent('BridgedToken'));
|
|
18
15
|
const PortalBridgedTokenTopic = PortalAdapterInterface.getEventTopic(PortalAdapterInterface.getEvent('BridgedToken'));
|
|
19
|
-
class LiquidityLayerApp extends
|
|
16
|
+
export class LiquidityLayerApp extends HyperlaneApp {
|
|
17
|
+
contractsMap;
|
|
18
|
+
multiProvider;
|
|
19
|
+
config;
|
|
20
20
|
constructor(contractsMap, multiProvider, config) {
|
|
21
21
|
super(contractsMap, multiProvider);
|
|
22
22
|
this.contractsMap = contractsMap;
|
|
@@ -30,7 +30,7 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
|
|
|
30
30
|
url.searchParams.set('action', 'getLogs');
|
|
31
31
|
url.searchParams.set('address', this.getContracts(chain).circleBridgeAdapter.address);
|
|
32
32
|
url.searchParams.set('topic0', BridgedTokenTopic);
|
|
33
|
-
const req = await
|
|
33
|
+
const req = await fetchWithTimeout(url);
|
|
34
34
|
const response = await req.json();
|
|
35
35
|
return response.result.map((tx) => tx.transactionHash).flat();
|
|
36
36
|
}
|
|
@@ -40,7 +40,7 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
|
|
|
40
40
|
url.searchParams.set('action', 'getLogs');
|
|
41
41
|
url.searchParams.set('address', this.getContracts(chain).portalAdapter.address);
|
|
42
42
|
url.searchParams.set('topic0', PortalBridgedTokenTopic);
|
|
43
|
-
const req = await
|
|
43
|
+
const req = await fetchWithTimeout(url);
|
|
44
44
|
const response = await req.json();
|
|
45
45
|
if (!response.result) {
|
|
46
46
|
throw Error(`Expected result in response: ${response}`);
|
|
@@ -109,7 +109,7 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
|
|
|
109
109
|
message,
|
|
110
110
|
nonce,
|
|
111
111
|
domain,
|
|
112
|
-
nonceHash:
|
|
112
|
+
nonceHash: ethers.utils.solidityKeccak256(['uint32', 'uint64'], [domain, nonce]),
|
|
113
113
|
},
|
|
114
114
|
];
|
|
115
115
|
}
|
|
@@ -118,21 +118,21 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
|
|
|
118
118
|
.portalAdapter;
|
|
119
119
|
const transferId = await destinationPortalAdapter.transferId(this.multiProvider.getDomainId(message.origin), message.nonce);
|
|
120
120
|
const transferTokenAddress = await destinationPortalAdapter.portalTransfersProcessed(transferId);
|
|
121
|
-
if (!
|
|
121
|
+
if (!eqAddress(transferTokenAddress, ethers.constants.AddressZero)) {
|
|
122
122
|
console.log(`Transfer with nonce ${message.nonce} from ${message.origin} to ${message.destination} already processed`);
|
|
123
123
|
return;
|
|
124
124
|
}
|
|
125
125
|
const wormholeOriginDomain = this.config[message.destination].portal.wormholeDomainMapping.find((mapping) => mapping.hyperlaneDomain ===
|
|
126
126
|
this.multiProvider.getDomainId(message.origin))?.wormholeDomain;
|
|
127
|
-
const emitter =
|
|
128
|
-
const vaa = await
|
|
127
|
+
const emitter = strip0x(addressToBytes32(this.config[message.origin].portal.portalBridgeAddress));
|
|
128
|
+
const vaa = await fetchWithTimeout(`${PORTAL_VAA_SERVICE_TESTNET_BASE_URL}${wormholeOriginDomain}/${emitter}/${message.portalSequence}`).then((response) => response.json());
|
|
129
129
|
if (vaa.code && vaa.code === PORTAL_VAA_SERVICE_SUCCESS_CODE) {
|
|
130
130
|
console.log(`VAA not yet found for nonce ${message.nonce}`);
|
|
131
131
|
return;
|
|
132
132
|
}
|
|
133
133
|
console.debug(`Complete portal transfer for nonce ${message.nonce} on ${message.destination}`);
|
|
134
134
|
try {
|
|
135
|
-
await this.multiProvider.handleTx(message.destination, destinationPortalAdapter.completeTransfer(
|
|
135
|
+
await this.multiProvider.handleTx(message.destination, destinationPortalAdapter.completeTransfer(ensure0x(Buffer.from(vaa.vaaBytes, 'base64').toString('hex'))));
|
|
136
136
|
}
|
|
137
137
|
catch (error) {
|
|
138
138
|
if (error?.error?.reason?.includes('no wrapper for this token')) {
|
|
@@ -145,18 +145,18 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
|
|
|
145
145
|
}
|
|
146
146
|
async attemptCircleAttestationSubmission(message) {
|
|
147
147
|
const signer = this.multiProvider.getSigner(message.remoteChain);
|
|
148
|
-
const transmitter =
|
|
148
|
+
const transmitter = ICircleMessageTransmitter__factory.connect(this.config[message.remoteChain].circle.messageTransmitterAddress, signer);
|
|
149
149
|
const alreadyProcessed = await transmitter.usedNonces(message.nonceHash);
|
|
150
150
|
if (alreadyProcessed) {
|
|
151
151
|
console.log(`Message sent on ${message.txHash} was already processed`);
|
|
152
152
|
return;
|
|
153
153
|
}
|
|
154
154
|
console.log(`Attempt Circle message delivery`, JSON.stringify(message));
|
|
155
|
-
const messageHash =
|
|
155
|
+
const messageHash = ethers.utils.keccak256(message.message);
|
|
156
156
|
const baseurl = this.multiProvider.getChainMetadata(message.chain).isTestnet
|
|
157
157
|
? CIRCLE_ATTESTATIONS_TESTNET_BASE_URL
|
|
158
158
|
: CIRCLE_ATTESTATIONS_MAINNET_BASE_URL;
|
|
159
|
-
const attestationsB = await
|
|
159
|
+
const attestationsB = await fetchWithTimeout(`${baseurl}${messageHash}`);
|
|
160
160
|
const attestations = await attestationsB.json();
|
|
161
161
|
if (attestations.status !== 'complete') {
|
|
162
162
|
console.log(`Attestations not available for message nonce ${message.nonce} on ${message.txHash}`);
|
|
@@ -168,5 +168,4 @@ class LiquidityLayerApp extends HyperlaneApp_1.HyperlaneApp {
|
|
|
168
168
|
await this.multiProvider.handleTx(message.remoteChain, tx);
|
|
169
169
|
}
|
|
170
170
|
}
|
|
171
|
-
exports.LiquidityLayerApp = LiquidityLayerApp;
|
|
172
171
|
//# sourceMappingURL=LiquidityLayerApp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiquidityLayerApp.js","sourceRoot":"","sources":["../../../src/middleware/liquidity-layer/LiquidityLayerApp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LiquidityLayerApp.js","sourceRoot":"","sources":["../../../src/middleware/liquidity-layer/LiquidityLayerApp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { CircleBridgeAdapter, LiquidityLayerRouter, PortalAdapter } from '@hyperlane-xyz/core';
|
|
1
|
+
import { CircleBridgeAdapter, LiquidityLayerRouter, PortalAdapter, Router } from '@hyperlane-xyz/core';
|
|
2
2
|
import { Address } from '@hyperlane-xyz/utils';
|
|
3
|
-
import { HyperlaneContracts, HyperlaneContractsMap } from '../../contracts/types';
|
|
4
|
-
import { ContractVerifier } from '../../deploy/verify/ContractVerifier';
|
|
5
|
-
import { MultiProvider } from '../../providers/MultiProvider';
|
|
6
|
-
import { ProxiedRouterDeployer } from '../../router/ProxiedRouterDeployer';
|
|
7
|
-
import { RouterConfig } from '../../router/types';
|
|
8
|
-
import { ChainMap, ChainName } from '../../types';
|
|
9
|
-
import { LiquidityLayerFactories } from './contracts';
|
|
3
|
+
import { HyperlaneContracts, HyperlaneContractsMap } from '../../contracts/types.js';
|
|
4
|
+
import { ContractVerifier } from '../../deploy/verify/ContractVerifier.js';
|
|
5
|
+
import { MultiProvider } from '../../providers/MultiProvider.js';
|
|
6
|
+
import { ProxiedRouterDeployer } from '../../router/ProxiedRouterDeployer.js';
|
|
7
|
+
import { RouterConfig } from '../../router/types.js';
|
|
8
|
+
import { ChainMap, ChainName } from '../../types.js';
|
|
9
|
+
import { LiquidityLayerFactories } from './contracts.js';
|
|
10
10
|
export declare enum BridgeAdapterType {
|
|
11
11
|
Circle = "Circle",
|
|
12
12
|
Portal = "Portal"
|
|
@@ -34,11 +34,13 @@ export type BridgeAdapterConfig = {
|
|
|
34
34
|
portal?: PortalAdapterConfig;
|
|
35
35
|
};
|
|
36
36
|
export type LiquidityLayerConfig = RouterConfig & BridgeAdapterConfig;
|
|
37
|
-
export declare class LiquidityLayerDeployer extends ProxiedRouterDeployer<LiquidityLayerConfig, LiquidityLayerFactories
|
|
38
|
-
readonly routerContractName = "liquidityLayerRouter";
|
|
37
|
+
export declare class LiquidityLayerDeployer extends ProxiedRouterDeployer<LiquidityLayerConfig, LiquidityLayerFactories> {
|
|
39
38
|
constructor(multiProvider: MultiProvider, contractVerifier?: ContractVerifier);
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
routerContractName(): string;
|
|
40
|
+
routerContractKey<K extends keyof LiquidityLayerFactories>(_: RouterConfig): K;
|
|
41
|
+
router(contracts: HyperlaneContracts<LiquidityLayerFactories>): Router;
|
|
42
|
+
constructorArgs<K extends keyof LiquidityLayerFactories>(_: string, config: LiquidityLayerConfig): Promise<Parameters<LiquidityLayerFactories[K]['deploy']>>;
|
|
43
|
+
initializeArgs(chain: string, config: LiquidityLayerConfig): Promise<any>;
|
|
42
44
|
enrollRemoteRouters(contractsMap: HyperlaneContractsMap<LiquidityLayerFactories>, configMap: ChainMap<LiquidityLayerConfig>, foreignRouters: ChainMap<Address>): Promise<void>;
|
|
43
45
|
deployContracts(chain: ChainName, config: LiquidityLayerConfig): Promise<HyperlaneContracts<LiquidityLayerFactories>>;
|
|
44
46
|
deployPortalAdapter(chain: ChainName, adapterConfig: PortalAdapterConfig, owner: string, router: LiquidityLayerRouter): Promise<PortalAdapter>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiquidityLayerRouterDeployer.d.ts","sourceRoot":"","sources":["../../../src/middleware/liquidity-layer/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,
|
|
1
|
+
{"version":3,"file":"LiquidityLayerRouterDeployer.d.ts","sourceRoot":"","sources":["../../../src/middleware/liquidity-layer/LiquidityLayerRouterDeployer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const ProxiedRouterDeployer_1 = require("../../router/ProxiedRouterDeployer");
|
|
7
|
-
const contracts_1 = require("./contracts");
|
|
8
|
-
var BridgeAdapterType;
|
|
1
|
+
import { ethers } from 'ethers';
|
|
2
|
+
import { eqAddress, objFilter, objMap } from '@hyperlane-xyz/utils';
|
|
3
|
+
import { ProxiedRouterDeployer } from '../../router/ProxiedRouterDeployer.js';
|
|
4
|
+
import { liquidityLayerFactories, } from './contracts.js';
|
|
5
|
+
export var BridgeAdapterType;
|
|
9
6
|
(function (BridgeAdapterType) {
|
|
10
7
|
BridgeAdapterType["Circle"] = "Circle";
|
|
11
8
|
BridgeAdapterType["Portal"] = "Portal";
|
|
12
|
-
})(BridgeAdapterType || (
|
|
13
|
-
class LiquidityLayerDeployer extends
|
|
9
|
+
})(BridgeAdapterType || (BridgeAdapterType = {}));
|
|
10
|
+
export class LiquidityLayerDeployer extends ProxiedRouterDeployer {
|
|
14
11
|
constructor(multiProvider, contractVerifier) {
|
|
15
|
-
super(multiProvider,
|
|
12
|
+
super(multiProvider, liquidityLayerFactories, {
|
|
16
13
|
contractVerifier,
|
|
17
14
|
});
|
|
18
|
-
|
|
15
|
+
}
|
|
16
|
+
routerContractName() {
|
|
17
|
+
return 'LiquidityLayerRouter';
|
|
18
|
+
}
|
|
19
|
+
routerContractKey(_) {
|
|
20
|
+
return 'liquidityLayerRouter';
|
|
21
|
+
}
|
|
22
|
+
router(contracts) {
|
|
23
|
+
return contracts.liquidityLayerRouter;
|
|
19
24
|
}
|
|
20
25
|
async constructorArgs(_, config) {
|
|
21
26
|
return [config.mailbox];
|
|
@@ -26,22 +31,22 @@ class LiquidityLayerDeployer extends ProxiedRouterDeployer_1.ProxiedRouterDeploy
|
|
|
26
31
|
throw new Error('ISM as object unimplemented');
|
|
27
32
|
}
|
|
28
33
|
return [
|
|
29
|
-
config.hook ??
|
|
30
|
-
config.interchainSecurityModule ??
|
|
34
|
+
config.hook ?? ethers.constants.AddressZero,
|
|
35
|
+
config.interchainSecurityModule ?? ethers.constants.AddressZero,
|
|
31
36
|
owner,
|
|
32
37
|
];
|
|
33
38
|
}
|
|
34
39
|
async enrollRemoteRouters(contractsMap, configMap, foreignRouters) {
|
|
35
|
-
this.logger(`Enroll LiquidityLayerRouters with each other`);
|
|
40
|
+
this.logger.debug(`Enroll LiquidityLayerRouters with each other`);
|
|
36
41
|
await super.enrollRemoteRouters(contractsMap, configMap, foreignRouters);
|
|
37
|
-
this.logger(`Enroll CircleBridgeAdapters with each other`);
|
|
42
|
+
this.logger.debug(`Enroll CircleBridgeAdapters with each other`);
|
|
38
43
|
// Hack to allow use of super.enrollRemoteRouters
|
|
39
|
-
await super.enrollRemoteRouters(
|
|
44
|
+
await super.enrollRemoteRouters(objMap(objFilter(contractsMap, (_, c) => !!c.circleBridgeAdapter), (_, contracts) => ({
|
|
40
45
|
liquidityLayerRouter: contracts.circleBridgeAdapter,
|
|
41
46
|
})), configMap, foreignRouters);
|
|
42
|
-
this.logger(`Enroll PortalAdapters with each other`);
|
|
47
|
+
this.logger.debug(`Enroll PortalAdapters with each other`);
|
|
43
48
|
// Hack to allow use of super.enrollRemoteRouters
|
|
44
|
-
await super.enrollRemoteRouters(
|
|
49
|
+
await super.enrollRemoteRouters(objMap(objFilter(contractsMap, (_, c) => !!c.portalAdapter), (_, contracts) => ({
|
|
45
50
|
liquidityLayerRouter: contracts.portalAdapter,
|
|
46
51
|
})), configMap, foreignRouters);
|
|
47
52
|
}
|
|
@@ -70,11 +75,11 @@ class LiquidityLayerDeployer extends ProxiedRouterDeployer_1.ProxiedRouterDeploy
|
|
|
70
75
|
const expectedCircleDomain = await portalAdapter.hyperlaneDomainToWormholeDomain(hyperlaneDomain);
|
|
71
76
|
if (expectedCircleDomain === wormholeDomain)
|
|
72
77
|
continue;
|
|
73
|
-
this.logger(`Set wormhole domain ${wormholeDomain} for hyperlane domain ${hyperlaneDomain}`);
|
|
78
|
+
this.logger.debug(`Set wormhole domain ${wormholeDomain} for hyperlane domain ${hyperlaneDomain}`);
|
|
74
79
|
await this.runIfOwner(chain, portalAdapter, () => this.multiProvider.handleTx(chain, portalAdapter.addDomain(hyperlaneDomain, wormholeDomain)));
|
|
75
80
|
}
|
|
76
|
-
if (!
|
|
77
|
-
this.logger('Set Portal as LiquidityLayerAdapter on Router');
|
|
81
|
+
if (!eqAddress(await router.liquidityLayerAdapters('Portal'), portalAdapter.address)) {
|
|
82
|
+
this.logger.debug('Set Portal as LiquidityLayerAdapter on Router');
|
|
78
83
|
await this.runIfOwner(chain, portalAdapter, () => this.multiProvider.handleTx(chain, router.setLiquidityLayerAdapter(adapterConfig.type, portalAdapter.address)));
|
|
79
84
|
}
|
|
80
85
|
return portalAdapter;
|
|
@@ -87,8 +92,8 @@ class LiquidityLayerDeployer extends ProxiedRouterDeployer_1.ProxiedRouterDeploy
|
|
|
87
92
|
adapterConfig.messageTransmitterAddress,
|
|
88
93
|
router.address,
|
|
89
94
|
]);
|
|
90
|
-
if (!
|
|
91
|
-
this.logger(`Set USDC token contract`);
|
|
95
|
+
if (!eqAddress(await circleBridgeAdapter.tokenSymbolToAddress('USDC'), adapterConfig.usdcAddress)) {
|
|
96
|
+
this.logger.debug(`Set USDC token contract`);
|
|
92
97
|
await this.runIfOwner(chain, circleBridgeAdapter, () => this.multiProvider.handleTx(chain, circleBridgeAdapter.addToken(adapterConfig.usdcAddress, 'USDC')));
|
|
93
98
|
}
|
|
94
99
|
// Set domain mappings
|
|
@@ -96,15 +101,14 @@ class LiquidityLayerDeployer extends ProxiedRouterDeployer_1.ProxiedRouterDeploy
|
|
|
96
101
|
const expectedCircleDomain = await circleBridgeAdapter.hyperlaneDomainToCircleDomain(hyperlaneDomain);
|
|
97
102
|
if (expectedCircleDomain === circleDomain)
|
|
98
103
|
continue;
|
|
99
|
-
this.logger(`Set circle domain ${circleDomain} for hyperlane domain ${hyperlaneDomain}`);
|
|
104
|
+
this.logger.debug(`Set circle domain ${circleDomain} for hyperlane domain ${hyperlaneDomain}`);
|
|
100
105
|
await this.runIfOwner(chain, circleBridgeAdapter, () => this.multiProvider.handleTx(chain, circleBridgeAdapter.addDomain(hyperlaneDomain, circleDomain)));
|
|
101
106
|
}
|
|
102
|
-
if (!
|
|
103
|
-
this.logger('Set Circle as LiquidityLayerAdapter on Router');
|
|
107
|
+
if (!eqAddress(await router.liquidityLayerAdapters('Circle'), circleBridgeAdapter.address)) {
|
|
108
|
+
this.logger.debug('Set Circle as LiquidityLayerAdapter on Router');
|
|
104
109
|
await this.runIfOwner(chain, circleBridgeAdapter, () => this.multiProvider.handleTx(chain, router.setLiquidityLayerAdapter(adapterConfig.type, circleBridgeAdapter.address)));
|
|
105
110
|
}
|
|
106
111
|
return circleBridgeAdapter;
|
|
107
112
|
}
|
|
108
113
|
}
|
|
109
|
-
exports.LiquidityLayerDeployer = LiquidityLayerDeployer;
|
|
110
114
|
//# sourceMappingURL=LiquidityLayerRouterDeployer.js.map
|