@hyperlane-xyz/sdk 3.20.0-beta0 → 4.0.0-alpha
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 +0 -15
- package/dist/aws/s3.d.ts +22 -0
- package/dist/aws/s3.d.ts.map +1 -0
- package/dist/aws/s3.js +61 -0
- package/dist/aws/s3.js.map +1 -0
- package/dist/aws/validator.d.ts +17 -0
- package/dist/aws/validator.d.ts.map +1 -0
- package/dist/aws/validator.js +76 -0
- package/dist/aws/validator.js.map +1 -0
- package/dist/consts/{crud.d.ts → concurrency.d.ts} +1 -1
- package/dist/consts/concurrency.d.ts.map +1 -0
- package/dist/consts/{crud.js → concurrency.js} +1 -1
- package/dist/consts/concurrency.js.map +1 -0
- package/dist/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +15 -0
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/consts/testChains.d.ts +3 -1
- package/dist/consts/testChains.d.ts.map +1 -1
- package/dist/consts/testChains.js +14 -0
- package/dist/consts/testChains.js.map +1 -1
- package/dist/contracts/contracts.d.ts +1 -0
- package/dist/contracts/contracts.d.ts.map +1 -1
- package/dist/contracts/contracts.js +4 -0
- package/dist/contracts/contracts.js.map +1 -1
- package/dist/core/AbstractHyperlaneModule.d.ts +18 -0
- package/dist/core/AbstractHyperlaneModule.d.ts.map +1 -0
- package/dist/{crud/AbstractCrudModule.js → core/AbstractHyperlaneModule.js} +2 -2
- package/dist/core/AbstractHyperlaneModule.js.map +1 -0
- package/dist/core/CoreDeployer.hardhat-test.js +8 -11
- package/dist/core/CoreDeployer.hardhat-test.js.map +1 -1
- package/dist/core/EvmCoreModule.d.ts +71 -0
- package/dist/core/EvmCoreModule.d.ts.map +1 -0
- package/dist/core/EvmCoreModule.hardhat-test.d.ts +2 -0
- package/dist/core/EvmCoreModule.hardhat-test.d.ts.map +1 -0
- package/dist/core/EvmCoreModule.hardhat-test.js +101 -0
- package/dist/core/EvmCoreModule.hardhat-test.js.map +1 -0
- package/dist/core/EvmCoreModule.js +147 -0
- package/dist/core/EvmCoreModule.js.map +1 -0
- package/dist/core/{read.d.ts → EvmCoreReader.d.ts} +3 -3
- package/dist/core/EvmCoreReader.d.ts.map +1 -0
- package/dist/core/{read.js → EvmCoreReader.js} +4 -4
- package/dist/core/EvmCoreReader.js.map +1 -0
- package/dist/core/EvmIcaModule.d.ts +30 -0
- package/dist/core/EvmIcaModule.d.ts.map +1 -0
- package/dist/core/EvmIcaModule.hardhat-test.d.ts +2 -0
- package/dist/core/EvmIcaModule.hardhat-test.d.ts.map +1 -0
- package/dist/core/EvmIcaModule.hardhat-test.js +35 -0
- package/dist/core/EvmIcaModule.hardhat-test.js.map +1 -0
- package/dist/core/EvmIcaModule.js +36 -0
- package/dist/core/EvmIcaModule.js.map +1 -0
- package/dist/core/HyperlaneCore.d.ts +8 -3
- package/dist/core/HyperlaneCore.d.ts.map +1 -1
- package/dist/core/HyperlaneCore.js +24 -15
- package/dist/core/HyperlaneCore.js.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.d.ts +1 -1
- package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
- package/dist/core/HyperlaneCoreDeployer.js +12 -8
- package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
- package/dist/core/schemas.d.ts +2222 -0
- package/dist/core/schemas.d.ts.map +1 -0
- package/dist/core/schemas.js +9 -0
- package/dist/core/schemas.js.map +1 -0
- package/dist/core/types.d.ts +4 -7
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.d.ts +2 -2
- package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
- package/dist/deploy/HyperlaneAppChecker.js +2 -5
- package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
- package/dist/deploy/HyperlaneDeployer.d.ts +8 -6
- package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
- package/dist/deploy/HyperlaneDeployer.js +35 -32
- package/dist/deploy/HyperlaneDeployer.js.map +1 -1
- package/dist/deploy/schemas.d.ts +2 -62
- package/dist/deploy/schemas.d.ts.map +1 -1
- package/dist/deploy/schemas.js +1 -2
- package/dist/deploy/schemas.js.map +1 -1
- package/dist/deploy/types.d.ts +2 -13
- package/dist/deploy/types.d.ts.map +1 -1
- package/dist/deploy/types.js +0 -16
- package/dist/deploy/types.js.map +1 -1
- package/dist/deploy/verify/ContractVerifier.js +2 -2
- package/dist/deploy/verify/ContractVerifier.js.map +1 -1
- package/dist/gas/HyperlaneIgpChecker.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgpChecker.js +12 -2
- package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
- package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
- package/dist/gas/HyperlaneIgpDeployer.js +20 -8
- package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
- package/dist/gas/oracle/configure-gas-oracles.hardhat-test.js +5 -4
- package/dist/gas/oracle/configure-gas-oracles.hardhat-test.js.map +1 -1
- package/dist/gas/oracle/types.d.ts +20 -7
- package/dist/gas/oracle/types.d.ts.map +1 -1
- package/dist/gas/oracle/types.js +10 -4
- package/dist/gas/oracle/types.js.map +1 -1
- package/dist/gas/types.d.ts +4 -10
- package/dist/gas/types.d.ts.map +1 -1
- package/dist/gas/types.js.map +1 -1
- package/dist/hook/EvmHookModule.d.ts +24 -0
- package/dist/hook/EvmHookModule.d.ts.map +1 -0
- package/dist/{crud → hook}/EvmHookModule.js +9 -10
- package/dist/hook/EvmHookModule.js.map +1 -0
- package/dist/hook/{read.d.ts → EvmHookReader.d.ts} +3 -2
- package/dist/hook/EvmHookReader.d.ts.map +1 -0
- package/dist/hook/{read.js → EvmHookReader.js} +10 -5
- package/dist/hook/EvmHookReader.js.map +1 -0
- package/dist/hook/EvmHookReader.test.d.ts +2 -0
- package/dist/hook/EvmHookReader.test.d.ts.map +1 -0
- package/dist/hook/{read.test.js → EvmHookReader.test.js} +6 -2
- package/dist/hook/EvmHookReader.test.js.map +1 -0
- package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
- package/dist/hook/HyperlaneHookDeployer.js +29 -6
- package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
- package/dist/hook/schemas.d.ts +210 -0
- package/dist/hook/schemas.d.ts.map +1 -0
- package/dist/hook/schemas.js +54 -0
- package/dist/hook/schemas.js.map +1 -0
- package/dist/hook/types.d.ts +9 -28
- package/dist/hook/types.d.ts.map +1 -1
- package/dist/hook/types.js.map +1 -1
- package/dist/index.d.ts +52 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +39 -16
- package/dist/index.js.map +1 -1
- package/dist/ism/EvmIsmModule.d.ts +74 -0
- package/dist/ism/EvmIsmModule.d.ts.map +1 -0
- package/dist/ism/EvmIsmModule.hardhat-test.d.ts +2 -0
- package/dist/ism/EvmIsmModule.hardhat-test.d.ts.map +1 -0
- package/dist/ism/EvmIsmModule.hardhat-test.js +308 -0
- package/dist/ism/EvmIsmModule.hardhat-test.js.map +1 -0
- package/dist/ism/EvmIsmModule.js +359 -0
- package/dist/ism/EvmIsmModule.js.map +1 -0
- package/dist/ism/{read.d.ts → EvmIsmReader.d.ts} +5 -7
- package/dist/ism/EvmIsmReader.d.ts.map +1 -0
- package/dist/ism/{read.js → EvmIsmReader.js} +9 -4
- package/dist/ism/EvmIsmReader.js.map +1 -0
- package/dist/ism/EvmIsmReader.test.d.ts +2 -0
- package/dist/ism/EvmIsmReader.test.d.ts.map +1 -0
- package/dist/ism/{read.test.js → EvmIsmReader.test.js} +2 -2
- package/dist/ism/EvmIsmReader.test.js.map +1 -0
- package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.d.ts +3 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +22 -16
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.js +3 -8
- package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
- package/dist/ism/metadata/aggregation.d.ts +22 -0
- package/dist/ism/metadata/aggregation.d.ts.map +1 -0
- package/dist/ism/metadata/aggregation.js +82 -0
- package/dist/ism/metadata/aggregation.js.map +1 -0
- package/dist/ism/metadata/aggregation.test.d.ts +2 -0
- package/dist/ism/metadata/aggregation.test.d.ts.map +1 -0
- package/dist/ism/metadata/aggregation.test.js +37 -0
- package/dist/ism/metadata/aggregation.test.js.map +1 -0
- package/dist/ism/metadata/builder.d.ts +32 -0
- package/dist/ism/metadata/builder.d.ts.map +1 -0
- package/dist/ism/metadata/builder.hardhat-test.d.ts +2 -0
- package/dist/ism/metadata/builder.hardhat-test.d.ts.map +1 -0
- package/dist/ism/metadata/builder.hardhat-test.js +120 -0
- package/dist/ism/metadata/builder.hardhat-test.js.map +1 -0
- package/dist/ism/metadata/builder.js +74 -0
- package/dist/ism/metadata/builder.js.map +1 -0
- package/dist/ism/metadata/multisig.d.ts +57 -0
- package/dist/ism/metadata/multisig.d.ts.map +1 -0
- package/dist/ism/metadata/multisig.js +188 -0
- package/dist/ism/metadata/multisig.js.map +1 -0
- package/dist/ism/metadata/multisig.test.d.ts +2 -0
- package/dist/ism/metadata/multisig.test.d.ts.map +1 -0
- package/dist/ism/metadata/multisig.test.js +55 -0
- package/dist/ism/metadata/multisig.test.js.map +1 -0
- package/dist/ism/metadata/null.d.ts +15 -0
- package/dist/ism/metadata/null.d.ts.map +1 -0
- package/dist/ism/metadata/null.js +20 -0
- package/dist/ism/metadata/null.js.map +1 -0
- package/dist/ism/metadata/routing.d.ts +16 -0
- package/dist/ism/metadata/routing.d.ts.map +1 -0
- package/dist/ism/metadata/routing.js +34 -0
- package/dist/ism/metadata/routing.js.map +1 -0
- package/dist/ism/metadata/types.test.d.ts +5 -0
- package/dist/ism/metadata/types.test.d.ts.map +1 -0
- package/dist/ism/metadata/types.test.js +2 -0
- package/dist/ism/metadata/types.test.js.map +1 -0
- package/dist/ism/schemas.d.ts +68 -104
- package/dist/ism/schemas.d.ts.map +1 -1
- package/dist/ism/schemas.js +14 -17
- package/dist/ism/schemas.js.map +1 -1
- package/dist/ism/schemas.test.js +1 -1
- package/dist/ism/schemas.test.js.map +1 -1
- package/dist/ism/types.d.ts +10 -20
- package/dist/ism/types.d.ts.map +1 -1
- package/dist/ism/types.js +6 -0
- package/dist/ism/types.js.map +1 -1
- package/dist/ism/utils.d.ts +4 -0
- package/dist/ism/utils.d.ts.map +1 -1
- package/dist/ism/utils.js +33 -5
- package/dist/ism/utils.js.map +1 -1
- package/dist/metadata/agentConfig.d.ts +87 -87
- package/dist/metadata/agentConfig.js +1 -1
- package/dist/metadata/agentConfig.js.map +1 -1
- package/dist/metadata/deploymentArtifacts.d.ts +4 -4
- package/dist/middleware/account/InterchainAccount.d.ts +6 -5
- package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccount.js +15 -6
- package/dist/middleware/account/InterchainAccount.js.map +1 -1
- package/dist/middleware/account/InterchainAccountDeployer.d.ts.map +1 -1
- package/dist/middleware/account/InterchainAccountDeployer.js +5 -1
- package/dist/middleware/account/InterchainAccountDeployer.js.map +1 -1
- package/dist/middleware/account/accounts.hardhat-test.js +8 -3
- package/dist/middleware/account/accounts.hardhat-test.js.map +1 -1
- package/dist/middleware/account/schemas.d.ts +69 -0
- package/dist/middleware/account/schemas.d.ts.map +1 -1
- package/dist/middleware/account/schemas.js +10 -2
- package/dist/middleware/account/schemas.js.map +1 -1
- package/dist/middleware/account/types.d.ts +4 -9
- package/dist/middleware/account/types.d.ts.map +1 -1
- package/dist/providers/MultiProvider.d.ts +2 -1
- package/dist/providers/MultiProvider.d.ts.map +1 -1
- package/dist/providers/MultiProvider.js +7 -3
- package/dist/providers/MultiProvider.js.map +1 -1
- package/dist/providers/ProviderType.d.ts +3 -0
- package/dist/providers/ProviderType.d.ts.map +1 -1
- package/dist/providers/ProviderType.js +0 -1
- package/dist/providers/ProviderType.js.map +1 -1
- package/dist/providers/transactions/schemas.d.ts +29 -0
- package/dist/providers/transactions/schemas.d.ts.map +1 -0
- package/dist/providers/transactions/schemas.js +14 -0
- package/dist/providers/transactions/schemas.js.map +1 -0
- package/dist/providers/transactions/schemas.test.d.ts +2 -0
- package/dist/providers/transactions/schemas.test.d.ts.map +1 -0
- package/dist/providers/transactions/schemas.test.js +58 -0
- package/dist/providers/transactions/schemas.test.js.map +1 -0
- package/dist/providers/transactions/submitter/TxSubmitterInterface.d.ts +19 -0
- package/dist/providers/transactions/submitter/TxSubmitterInterface.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/TxSubmitterInterface.js +2 -0
- package/dist/providers/transactions/submitter/TxSubmitterInterface.js.map +1 -0
- package/dist/providers/transactions/submitter/TxSubmitterTypes.d.ts +6 -0
- package/dist/providers/transactions/submitter/TxSubmitterTypes.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/TxSubmitterTypes.js +7 -0
- package/dist/providers/transactions/submitter/TxSubmitterTypes.js.map +1 -0
- package/dist/providers/transactions/submitter/builder/TxSubmitterBuilder.d.ts +48 -0
- package/dist/providers/transactions/submitter/builder/TxSubmitterBuilder.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/builder/TxSubmitterBuilder.js +65 -0
- package/dist/providers/transactions/submitter/builder/TxSubmitterBuilder.js.map +1 -0
- package/dist/providers/transactions/submitter/builder/schemas.d.ts +206 -0
- package/dist/providers/transactions/submitter/builder/schemas.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/builder/schemas.js +10 -0
- package/dist/providers/transactions/submitter/builder/schemas.js.map +1 -0
- package/dist/providers/transactions/submitter/builder/types.d.ts +4 -0
- package/dist/providers/transactions/submitter/builder/types.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/builder/types.js +2 -0
- package/dist/providers/transactions/submitter/builder/types.js.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.d.ts +15 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.js +44 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.js.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5ImpersonatedAccountTxSubmitter.d.ts +15 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5ImpersonatedAccountTxSubmitter.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5ImpersonatedAccountTxSubmitter.js +23 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5ImpersonatedAccountTxSubmitter.js.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts +14 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js +24 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5TxSubmitterInterface.d.ts +10 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5TxSubmitterInterface.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5TxSubmitterInterface.js +2 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5TxSubmitterInterface.js.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/schemas.d.ts +19 -0
- package/dist/providers/transactions/submitter/ethersV5/schemas.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/schemas.js +10 -0
- package/dist/providers/transactions/submitter/ethersV5/schemas.js.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/schemas.test.d.ts +2 -0
- package/dist/providers/transactions/submitter/ethersV5/schemas.test.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/schemas.test.js +41 -0
- package/dist/providers/transactions/submitter/ethersV5/schemas.test.js.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/types.d.ts +5 -0
- package/dist/providers/transactions/submitter/ethersV5/types.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/types.js +2 -0
- package/dist/providers/transactions/submitter/ethersV5/types.js.map +1 -0
- package/dist/providers/transactions/submitter/schemas.d.ts +56 -0
- package/dist/providers/transactions/submitter/schemas.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/schemas.js +18 -0
- package/dist/providers/transactions/submitter/schemas.js.map +1 -0
- package/dist/providers/transactions/submitter/types.d.ts +4 -0
- package/dist/providers/transactions/submitter/types.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/types.js +2 -0
- package/dist/providers/transactions/submitter/types.js.map +1 -0
- package/dist/providers/transactions/transformer/TxTransformerInterface.d.ts +15 -0
- package/dist/providers/transactions/transformer/TxTransformerInterface.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/TxTransformerInterface.js +2 -0
- package/dist/providers/transactions/transformer/TxTransformerInterface.js.map +1 -0
- package/dist/providers/transactions/transformer/TxTransformerTypes.d.ts +4 -0
- package/dist/providers/transactions/transformer/TxTransformerTypes.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/TxTransformerTypes.js +5 -0
- package/dist/providers/transactions/transformer/TxTransformerTypes.js.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/EV5InterchainAccountTxTransformer.d.ts +16 -0
- package/dist/providers/transactions/transformer/ethersV5/EV5InterchainAccountTxTransformer.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/EV5InterchainAccountTxTransformer.js +37 -0
- package/dist/providers/transactions/transformer/ethersV5/EV5InterchainAccountTxTransformer.js.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/EV5TxTransformerInterface.d.ts +5 -0
- package/dist/providers/transactions/transformer/ethersV5/EV5TxTransformerInterface.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/EV5TxTransformerInterface.js +2 -0
- package/dist/providers/transactions/transformer/ethersV5/EV5TxTransformerInterface.js.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/schemas.d.ts +58 -0
- package/dist/providers/transactions/transformer/ethersV5/schemas.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/schemas.js +7 -0
- package/dist/providers/transactions/transformer/ethersV5/schemas.js.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/schemas.test.d.ts +2 -0
- package/dist/providers/transactions/transformer/ethersV5/schemas.test.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/schemas.test.js +44 -0
- package/dist/providers/transactions/transformer/ethersV5/schemas.test.js.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/types.d.ts +4 -0
- package/dist/providers/transactions/transformer/ethersV5/types.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/ethersV5/types.js +2 -0
- package/dist/providers/transactions/transformer/ethersV5/types.js.map +1 -0
- package/dist/providers/transactions/transformer/schemas.d.ts +89 -0
- package/dist/providers/transactions/transformer/schemas.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/schemas.js +10 -0
- package/dist/providers/transactions/transformer/schemas.js.map +1 -0
- package/dist/providers/transactions/transformer/types.d.ts +4 -0
- package/dist/providers/transactions/transformer/types.d.ts.map +1 -0
- package/dist/providers/transactions/transformer/types.js +2 -0
- package/dist/providers/transactions/transformer/types.js.map +1 -0
- package/dist/providers/transactions/types.d.ts +6 -0
- package/dist/providers/transactions/types.d.ts.map +1 -0
- package/dist/providers/transactions/types.js +2 -0
- package/dist/providers/transactions/types.js.map +1 -0
- package/dist/router/GasRouterDeployer.d.ts +3 -3
- package/dist/router/GasRouterDeployer.d.ts.map +1 -1
- package/dist/router/GasRouterDeployer.js +2 -1
- package/dist/router/GasRouterDeployer.js.map +1 -1
- package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
- package/dist/router/HyperlaneRouterChecker.js +36 -53
- package/dist/router/HyperlaneRouterChecker.js.map +1 -1
- package/dist/router/ProxiedRouterDeployer.d.ts +7 -4
- package/dist/router/ProxiedRouterDeployer.d.ts.map +1 -1
- package/dist/router/ProxiedRouterDeployer.js +8 -2
- package/dist/router/ProxiedRouterDeployer.js.map +1 -1
- package/dist/router/schemas.d.ts +828 -41
- package/dist/router/schemas.d.ts.map +1 -1
- package/dist/router/schemas.js +11 -9
- package/dist/router/schemas.js.map +1 -1
- package/dist/router/types.d.ts +6 -10
- package/dist/router/types.d.ts.map +1 -1
- package/dist/router/types.js.map +1 -1
- package/dist/schemas.d.ts +25 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/schemas.js +10 -0
- package/dist/schemas.js.map +1 -0
- package/dist/test/multiProviderStubs.d.ts +9 -0
- package/dist/test/multiProviderStubs.d.ts.map +1 -0
- package/dist/test/multiProviderStubs.js +27 -0
- package/dist/test/multiProviderStubs.js.map +1 -0
- package/dist/test/testUtils.d.ts +0 -8
- package/dist/test/testUtils.d.ts.map +1 -1
- package/dist/test/testUtils.js +3 -28
- package/dist/test/testUtils.js.map +1 -1
- package/dist/token/{read.d.ts → EvmERC20WarpRouteReader.d.ts} +10 -10
- package/dist/token/EvmERC20WarpRouteReader.d.ts.map +1 -0
- package/dist/token/{read.js → EvmERC20WarpRouteReader.js} +38 -30
- package/dist/token/EvmERC20WarpRouteReader.js.map +1 -0
- package/dist/token/Token.test.js +1 -10
- package/dist/token/Token.test.js.map +1 -1
- package/dist/token/TokenStandard.d.ts +0 -1
- package/dist/token/TokenStandard.d.ts.map +1 -1
- package/dist/token/TokenStandard.js +4 -3
- package/dist/token/TokenStandard.js.map +1 -1
- package/dist/token/adapters/CosmWasmTokenAdapter.d.ts +2 -2
- package/dist/token/adapters/CosmWasmTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/CosmosTokenAdapter.d.ts +2 -2
- package/dist/token/adapters/CosmosTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.d.ts +4 -4
- package/dist/token/adapters/EvmTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/EvmTokenAdapter.js +3 -2
- 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/SealevelTokenAdapter.d.ts +5 -5
- package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -1
- package/dist/token/adapters/SealevelTokenAdapter.js +2 -1
- package/dist/token/adapters/SealevelTokenAdapter.js.map +1 -1
- package/dist/token/app.d.ts.map +1 -1
- package/dist/token/app.js +2 -2
- package/dist/token/app.js.map +1 -1
- package/dist/token/checker.d.ts +2 -2
- package/dist/token/checker.d.ts.map +1 -1
- package/dist/token/checker.js +1 -1
- package/dist/token/checker.js.map +1 -1
- package/dist/token/config.d.ts +4 -44
- package/dist/token/config.d.ts.map +1 -1
- package/dist/token/config.js +14 -15
- package/dist/token/config.js.map +1 -1
- package/dist/token/contracts.d.ts +7 -14
- package/dist/token/contracts.d.ts.map +1 -1
- package/dist/token/contracts.js +8 -8
- package/dist/token/contracts.js.map +1 -1
- package/dist/token/deploy.d.ts +21 -45
- package/dist/token/deploy.d.ts.map +1 -1
- package/dist/token/deploy.hardhat-test.js +33 -48
- package/dist/token/deploy.hardhat-test.js.map +1 -1
- package/dist/token/deploy.js +74 -251
- package/dist/token/deploy.js.map +1 -1
- package/dist/token/schemas.d.ts +874 -136
- package/dist/token/schemas.d.ts.map +1 -1
- package/dist/token/schemas.js +29 -19
- package/dist/token/schemas.js.map +1 -1
- package/dist/token/schemas.test.js +26 -39
- package/dist/token/schemas.test.js.map +1 -1
- package/dist/token/types.d.ts +2 -1
- package/dist/token/types.d.ts.map +1 -1
- package/dist/utils/fork.d.ts.map +1 -1
- package/dist/utils/fork.js +10 -11
- package/dist/utils/fork.js.map +1 -1
- package/dist/utils/gnosisSafe.js +46 -0
- package/dist/utils/logUtils.d.ts +4 -0
- package/dist/utils/logUtils.d.ts.map +1 -0
- package/dist/utils/logUtils.js +13 -0
- package/dist/utils/logUtils.js.map +1 -0
- package/dist/utils/schemas.d.ts +3 -0
- package/dist/utils/schemas.d.ts.map +1 -0
- package/dist/utils/schemas.js +4 -0
- package/dist/utils/schemas.js.map +1 -0
- package/package.json +8 -4
- package/dist/consts/crud.d.ts.map +0 -1
- package/dist/consts/crud.js.map +0 -1
- package/dist/core/read.d.ts.map +0 -1
- package/dist/core/read.js.map +0 -1
- package/dist/crud/AbstractCrudModule.d.ts +0 -21
- package/dist/crud/AbstractCrudModule.d.ts.map +0 -1
- package/dist/crud/AbstractCrudModule.js.map +0 -1
- package/dist/crud/EvmHookModule.d.ts +0 -18
- package/dist/crud/EvmHookModule.d.ts.map +0 -1
- package/dist/crud/EvmHookModule.js.map +0 -1
- package/dist/crud/EvmIsmModule.d.ts +0 -18
- package/dist/crud/EvmIsmModule.d.ts.map +0 -1
- package/dist/crud/EvmIsmModule.js +0 -28
- package/dist/crud/EvmIsmModule.js.map +0 -1
- package/dist/hook/read.d.ts.map +0 -1
- package/dist/hook/read.js.map +0 -1
- package/dist/hook/read.test.d.ts +0 -2
- package/dist/hook/read.test.d.ts.map +0 -1
- package/dist/hook/read.test.js.map +0 -1
- package/dist/ism/read.d.ts.map +0 -1
- package/dist/ism/read.js.map +0 -1
- package/dist/ism/read.test.d.ts +0 -2
- package/dist/ism/read.test.d.ts.map +0 -1
- package/dist/ism/read.test.js.map +0 -1
- package/dist/token/read.d.ts.map +0 -1
- package/dist/token/read.js.map +0 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var TxSubmitterType;
|
|
2
|
+
(function (TxSubmitterType) {
|
|
3
|
+
TxSubmitterType["JSON_RPC"] = "jsonRpc";
|
|
4
|
+
TxSubmitterType["IMPERSONATED_ACCOUNT"] = "impersonatedAccount";
|
|
5
|
+
TxSubmitterType["GNOSIS_SAFE"] = "gnosisSafe";
|
|
6
|
+
})(TxSubmitterType || (TxSubmitterType = {}));
|
|
7
|
+
//# sourceMappingURL=TxSubmitterTypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TxSubmitterTypes.js","sourceRoot":"","sources":["../../../../src/providers/transactions/submitter/TxSubmitterTypes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,uCAAoB,CAAA;IACpB,+DAA4C,CAAA;IAC5C,6CAA0B,CAAA;AAC5B,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Logger } from 'pino';
|
|
2
|
+
import { ProtocolType } from '@hyperlane-xyz/utils';
|
|
3
|
+
import { ProtocolTypedReceipt, ProtocolTypedTransaction } from '../../../ProviderType.js';
|
|
4
|
+
import { TxTransformerInterface } from '../../transformer/TxTransformerInterface.js';
|
|
5
|
+
import { TxSubmitterInterface } from '../TxSubmitterInterface.js';
|
|
6
|
+
import { TxSubmitterType } from '../TxSubmitterTypes.js';
|
|
7
|
+
/**
|
|
8
|
+
* Builds a TxSubmitterBuilder for batch transaction submission.
|
|
9
|
+
*
|
|
10
|
+
* Example use-cases:
|
|
11
|
+
* const eV5builder = new TxSubmitterBuilder<EV5Transaction, EV5TransactionReceipt>();
|
|
12
|
+
* let txReceipts = eV5builder.for(
|
|
13
|
+
* new EV5GnosisSafeTxSubmitter(chainA)
|
|
14
|
+
* ).transform(
|
|
15
|
+
* EV5InterchainAccountTxTransformer(chainB)
|
|
16
|
+
* ).submit(
|
|
17
|
+
* txs
|
|
18
|
+
* );
|
|
19
|
+
* txReceipts = eV5builder.for(
|
|
20
|
+
* new EV5ImpersonatedAccountTxSubmitter(chainA)
|
|
21
|
+
* ).submit(txs);
|
|
22
|
+
* txReceipts = eV5builder.for(
|
|
23
|
+
* new EV5JsonRpcTxSubmitter(chainC)
|
|
24
|
+
* ).submit(txs);
|
|
25
|
+
*/
|
|
26
|
+
export declare class TxSubmitterBuilder<TProtocol extends ProtocolType> implements TxSubmitterInterface<TProtocol> {
|
|
27
|
+
private currentSubmitter;
|
|
28
|
+
private currentTransformers;
|
|
29
|
+
readonly txSubmitterType: TxSubmitterType;
|
|
30
|
+
protected readonly logger: Logger;
|
|
31
|
+
constructor(currentSubmitter: TxSubmitterInterface<TProtocol>, currentTransformers?: TxTransformerInterface<TProtocol>[]);
|
|
32
|
+
/**
|
|
33
|
+
* Sets the current submitter for the builder.
|
|
34
|
+
* @param txSubmitterOrType The submitter to add to the builder
|
|
35
|
+
*/
|
|
36
|
+
for(txSubmitter: TxSubmitterInterface<TProtocol>): TxSubmitterBuilder<TProtocol>;
|
|
37
|
+
/**
|
|
38
|
+
* Adds a transformer for the builder.
|
|
39
|
+
* @param txTransformerOrType The transformer to add to the builder
|
|
40
|
+
*/
|
|
41
|
+
transform(...txTransformers: TxTransformerInterface<TProtocol>[]): TxSubmitterBuilder<TProtocol>;
|
|
42
|
+
/**
|
|
43
|
+
* Submits a set of transactions to the builder.
|
|
44
|
+
* @param txs The transactions to submit
|
|
45
|
+
*/
|
|
46
|
+
submit(...txs: ProtocolTypedTransaction<TProtocol>['transaction'][]): Promise<ProtocolTypedReceipt<TProtocol>['receipt'][] | void>;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=TxSubmitterBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TxSubmitterBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/builder/TxSubmitterBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAG9B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,kBAAkB,CAAC,SAAS,SAAS,YAAY,CAC5D,YAAW,oBAAoB,CAAC,SAAS,CAAC;IASxC,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,mBAAmB;IAR7B,SAAgB,eAAe,EAAE,eAAe,CAAC;IAEjD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAE9B;gBAGO,gBAAgB,EAAE,oBAAoB,CAAC,SAAS,CAAC,EACjD,mBAAmB,GAAE,sBAAsB,CAAC,SAAS,CAAC,EAAO;IAKvE;;;OAGG;IACI,GAAG,CACR,WAAW,EAAE,oBAAoB,CAAC,SAAS,CAAC,GAC3C,kBAAkB,CAAC,SAAS,CAAC;IAKhC;;;OAGG;IACI,SAAS,CACd,GAAG,cAAc,EAAE,sBAAsB,CAAC,SAAS,CAAC,EAAE,GACrD,kBAAkB,CAAC,SAAS,CAAC;IAKhC;;;OAGG;IACU,MAAM,CACjB,GAAG,GAAG,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,EAAE,GAC3D,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,CAAC;CAoBhE"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { rootLogger } from '@hyperlane-xyz/utils';
|
|
2
|
+
/**
|
|
3
|
+
* Builds a TxSubmitterBuilder for batch transaction submission.
|
|
4
|
+
*
|
|
5
|
+
* Example use-cases:
|
|
6
|
+
* const eV5builder = new TxSubmitterBuilder<EV5Transaction, EV5TransactionReceipt>();
|
|
7
|
+
* let txReceipts = eV5builder.for(
|
|
8
|
+
* new EV5GnosisSafeTxSubmitter(chainA)
|
|
9
|
+
* ).transform(
|
|
10
|
+
* EV5InterchainAccountTxTransformer(chainB)
|
|
11
|
+
* ).submit(
|
|
12
|
+
* txs
|
|
13
|
+
* );
|
|
14
|
+
* txReceipts = eV5builder.for(
|
|
15
|
+
* new EV5ImpersonatedAccountTxSubmitter(chainA)
|
|
16
|
+
* ).submit(txs);
|
|
17
|
+
* txReceipts = eV5builder.for(
|
|
18
|
+
* new EV5JsonRpcTxSubmitter(chainC)
|
|
19
|
+
* ).submit(txs);
|
|
20
|
+
*/
|
|
21
|
+
export class TxSubmitterBuilder {
|
|
22
|
+
currentSubmitter;
|
|
23
|
+
currentTransformers;
|
|
24
|
+
txSubmitterType;
|
|
25
|
+
logger = rootLogger.child({
|
|
26
|
+
module: 'submitter-builder',
|
|
27
|
+
});
|
|
28
|
+
constructor(currentSubmitter, currentTransformers = []) {
|
|
29
|
+
this.currentSubmitter = currentSubmitter;
|
|
30
|
+
this.currentTransformers = currentTransformers;
|
|
31
|
+
this.txSubmitterType = this.currentSubmitter.txSubmitterType;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Sets the current submitter for the builder.
|
|
35
|
+
* @param txSubmitterOrType The submitter to add to the builder
|
|
36
|
+
*/
|
|
37
|
+
for(txSubmitter) {
|
|
38
|
+
this.currentSubmitter = txSubmitter;
|
|
39
|
+
return this;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Adds a transformer for the builder.
|
|
43
|
+
* @param txTransformerOrType The transformer to add to the builder
|
|
44
|
+
*/
|
|
45
|
+
transform(...txTransformers) {
|
|
46
|
+
this.currentTransformers = txTransformers;
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Submits a set of transactions to the builder.
|
|
51
|
+
* @param txs The transactions to submit
|
|
52
|
+
*/
|
|
53
|
+
async submit(...txs) {
|
|
54
|
+
this.logger.info(`Submitting ${txs.length} transactions to the ${this.currentSubmitter.txSubmitterType} submitter...`);
|
|
55
|
+
let transformedTxs = txs;
|
|
56
|
+
for (const currentTransformer of this.currentTransformers) {
|
|
57
|
+
transformedTxs = await currentTransformer.transform(...transformedTxs);
|
|
58
|
+
this.logger.info(`🔄 Transformed ${transformedTxs.length} transactions with the ${currentTransformer.txTransformerType} transformer...`);
|
|
59
|
+
}
|
|
60
|
+
const txReceipts = await this.currentSubmitter.submit(...transformedTxs);
|
|
61
|
+
this.logger.info(`✅ Successfully submitted ${transformedTxs.length} transactions to the ${this.currentSubmitter.txSubmitterType} submitter.`);
|
|
62
|
+
return txReceipts;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=TxSubmitterBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TxSubmitterBuilder.js","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/builder/TxSubmitterBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAWlD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,kBAAkB;IAUnB;IACA;IARM,eAAe,CAAkB;IAE9B,MAAM,GAAW,UAAU,CAAC,KAAK,CAAC;QACnD,MAAM,EAAE,mBAAmB;KAC5B,CAAC,CAAC;IAEH,YACU,gBAAiD,EACjD,sBAA2D,EAAE;QAD7D,qBAAgB,GAAhB,gBAAgB,CAAiC;QACjD,wBAAmB,GAAnB,mBAAmB,CAA0C;QAErE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACI,GAAG,CACR,WAA4C;QAE5C,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACI,SAAS,CACd,GAAG,cAAmD;QAEtD,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM,CACjB,GAAG,GAAyD;QAE5D,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,cAAc,GAAG,CAAC,MAAM,wBAAwB,IAAI,CAAC,gBAAgB,CAAC,eAAe,eAAe,CACrG,CAAC;QAEF,IAAI,cAAc,GAAG,GAAG,CAAC;QACzB,KAAK,MAAM,kBAAkB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC1D,cAAc,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC,CAAC;YACvE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kBAAkB,cAAc,CAAC,MAAM,0BAA0B,kBAAkB,CAAC,iBAAiB,iBAAiB,CACvH,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC;QACzE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,4BAA4B,cAAc,CAAC,MAAM,wBAAwB,IAAI,CAAC,gBAAgB,CAAC,eAAe,aAAa,CAC5H,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const SubmissionStrategySchema: z.ZodObject<{
|
|
3
|
+
chain: z.ZodString;
|
|
4
|
+
submitter: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
|
|
5
|
+
type: z.ZodLiteral<import("../TxSubmitterTypes.js").TxSubmitterType.JSON_RPC>;
|
|
6
|
+
props: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.JSON_RPC;
|
|
9
|
+
props?: {} | undefined;
|
|
10
|
+
}, {
|
|
11
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.JSON_RPC;
|
|
12
|
+
props?: {} | undefined;
|
|
13
|
+
}>, z.ZodObject<{
|
|
14
|
+
type: z.ZodLiteral<import("../TxSubmitterTypes.js").TxSubmitterType.IMPERSONATED_ACCOUNT>;
|
|
15
|
+
props: z.ZodObject<{
|
|
16
|
+
userAddress: z.ZodString;
|
|
17
|
+
}, "strip", z.ZodTypeAny, {
|
|
18
|
+
userAddress: string;
|
|
19
|
+
}, {
|
|
20
|
+
userAddress: string;
|
|
21
|
+
}>;
|
|
22
|
+
}, "strip", z.ZodTypeAny, {
|
|
23
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.IMPERSONATED_ACCOUNT;
|
|
24
|
+
props: {
|
|
25
|
+
userAddress: string;
|
|
26
|
+
};
|
|
27
|
+
}, {
|
|
28
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.IMPERSONATED_ACCOUNT;
|
|
29
|
+
props: {
|
|
30
|
+
userAddress: string;
|
|
31
|
+
};
|
|
32
|
+
}>, z.ZodObject<{
|
|
33
|
+
type: z.ZodLiteral<import("../TxSubmitterTypes.js").TxSubmitterType.GNOSIS_SAFE>;
|
|
34
|
+
props: z.ZodObject<{
|
|
35
|
+
chain: z.ZodString;
|
|
36
|
+
safeAddress: z.ZodString;
|
|
37
|
+
}, "strip", z.ZodTypeAny, {
|
|
38
|
+
chain: string;
|
|
39
|
+
safeAddress: string;
|
|
40
|
+
}, {
|
|
41
|
+
chain: string;
|
|
42
|
+
safeAddress: string;
|
|
43
|
+
}>;
|
|
44
|
+
}, "strip", z.ZodTypeAny, {
|
|
45
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.GNOSIS_SAFE;
|
|
46
|
+
props: {
|
|
47
|
+
chain: string;
|
|
48
|
+
safeAddress: string;
|
|
49
|
+
};
|
|
50
|
+
}, {
|
|
51
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.GNOSIS_SAFE;
|
|
52
|
+
props: {
|
|
53
|
+
chain: string;
|
|
54
|
+
safeAddress: string;
|
|
55
|
+
};
|
|
56
|
+
}>]>;
|
|
57
|
+
transforms: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
|
|
58
|
+
type: z.ZodLiteral<import("../../transformer/TxTransformerTypes.js").TxTransformerType>;
|
|
59
|
+
props: z.ZodObject<Pick<{
|
|
60
|
+
chain: z.ZodString;
|
|
61
|
+
destination: z.ZodString;
|
|
62
|
+
innerCalls: z.ZodArray<z.ZodObject<{
|
|
63
|
+
to: z.ZodString;
|
|
64
|
+
data: z.ZodString;
|
|
65
|
+
value: z.ZodOptional<z.ZodString>;
|
|
66
|
+
}, "strip", z.ZodTypeAny, {
|
|
67
|
+
data: string;
|
|
68
|
+
to: string;
|
|
69
|
+
value?: string | undefined;
|
|
70
|
+
}, {
|
|
71
|
+
data: string;
|
|
72
|
+
to: string;
|
|
73
|
+
value?: string | undefined;
|
|
74
|
+
}>, "many">;
|
|
75
|
+
config: z.ZodObject<{
|
|
76
|
+
origin: z.ZodString;
|
|
77
|
+
owner: z.ZodString;
|
|
78
|
+
localRouter: z.ZodOptional<z.ZodString>;
|
|
79
|
+
routerOverride: z.ZodOptional<z.ZodString>;
|
|
80
|
+
ismOverride: z.ZodOptional<z.ZodString>;
|
|
81
|
+
}, "strip", z.ZodTypeAny, {
|
|
82
|
+
owner: string;
|
|
83
|
+
origin: string;
|
|
84
|
+
localRouter?: string | undefined;
|
|
85
|
+
routerOverride?: string | undefined;
|
|
86
|
+
ismOverride?: string | undefined;
|
|
87
|
+
}, {
|
|
88
|
+
owner: string;
|
|
89
|
+
origin: string;
|
|
90
|
+
localRouter?: string | undefined;
|
|
91
|
+
routerOverride?: string | undefined;
|
|
92
|
+
ismOverride?: string | undefined;
|
|
93
|
+
}>;
|
|
94
|
+
hookMetadata: z.ZodOptional<z.ZodString>;
|
|
95
|
+
}, "chain" | "config" | "hookMetadata">, "strip", z.ZodTypeAny, {
|
|
96
|
+
chain: string;
|
|
97
|
+
config: {
|
|
98
|
+
owner: string;
|
|
99
|
+
origin: string;
|
|
100
|
+
localRouter?: string | undefined;
|
|
101
|
+
routerOverride?: string | undefined;
|
|
102
|
+
ismOverride?: string | undefined;
|
|
103
|
+
};
|
|
104
|
+
hookMetadata?: string | undefined;
|
|
105
|
+
}, {
|
|
106
|
+
chain: string;
|
|
107
|
+
config: {
|
|
108
|
+
owner: string;
|
|
109
|
+
origin: string;
|
|
110
|
+
localRouter?: string | undefined;
|
|
111
|
+
routerOverride?: string | undefined;
|
|
112
|
+
ismOverride?: string | undefined;
|
|
113
|
+
};
|
|
114
|
+
hookMetadata?: string | undefined;
|
|
115
|
+
}>;
|
|
116
|
+
}, "strip", z.ZodTypeAny, {
|
|
117
|
+
type: import("../../transformer/TxTransformerTypes.js").TxTransformerType;
|
|
118
|
+
props: {
|
|
119
|
+
chain: string;
|
|
120
|
+
config: {
|
|
121
|
+
owner: string;
|
|
122
|
+
origin: string;
|
|
123
|
+
localRouter?: string | undefined;
|
|
124
|
+
routerOverride?: string | undefined;
|
|
125
|
+
ismOverride?: string | undefined;
|
|
126
|
+
};
|
|
127
|
+
hookMetadata?: string | undefined;
|
|
128
|
+
};
|
|
129
|
+
}, {
|
|
130
|
+
type: import("../../transformer/TxTransformerTypes.js").TxTransformerType;
|
|
131
|
+
props: {
|
|
132
|
+
chain: string;
|
|
133
|
+
config: {
|
|
134
|
+
owner: string;
|
|
135
|
+
origin: string;
|
|
136
|
+
localRouter?: string | undefined;
|
|
137
|
+
routerOverride?: string | undefined;
|
|
138
|
+
ismOverride?: string | undefined;
|
|
139
|
+
};
|
|
140
|
+
hookMetadata?: string | undefined;
|
|
141
|
+
};
|
|
142
|
+
}>]>, "many">>;
|
|
143
|
+
}, "strip", z.ZodTypeAny, {
|
|
144
|
+
chain: string;
|
|
145
|
+
submitter: {
|
|
146
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.JSON_RPC;
|
|
147
|
+
props?: {} | undefined;
|
|
148
|
+
} | {
|
|
149
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.IMPERSONATED_ACCOUNT;
|
|
150
|
+
props: {
|
|
151
|
+
userAddress: string;
|
|
152
|
+
};
|
|
153
|
+
} | {
|
|
154
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.GNOSIS_SAFE;
|
|
155
|
+
props: {
|
|
156
|
+
chain: string;
|
|
157
|
+
safeAddress: string;
|
|
158
|
+
};
|
|
159
|
+
};
|
|
160
|
+
transforms?: {
|
|
161
|
+
type: import("../../transformer/TxTransformerTypes.js").TxTransformerType;
|
|
162
|
+
props: {
|
|
163
|
+
chain: string;
|
|
164
|
+
config: {
|
|
165
|
+
owner: string;
|
|
166
|
+
origin: string;
|
|
167
|
+
localRouter?: string | undefined;
|
|
168
|
+
routerOverride?: string | undefined;
|
|
169
|
+
ismOverride?: string | undefined;
|
|
170
|
+
};
|
|
171
|
+
hookMetadata?: string | undefined;
|
|
172
|
+
};
|
|
173
|
+
}[] | undefined;
|
|
174
|
+
}, {
|
|
175
|
+
chain: string;
|
|
176
|
+
submitter: {
|
|
177
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.JSON_RPC;
|
|
178
|
+
props?: {} | undefined;
|
|
179
|
+
} | {
|
|
180
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.IMPERSONATED_ACCOUNT;
|
|
181
|
+
props: {
|
|
182
|
+
userAddress: string;
|
|
183
|
+
};
|
|
184
|
+
} | {
|
|
185
|
+
type: import("../TxSubmitterTypes.js").TxSubmitterType.GNOSIS_SAFE;
|
|
186
|
+
props: {
|
|
187
|
+
chain: string;
|
|
188
|
+
safeAddress: string;
|
|
189
|
+
};
|
|
190
|
+
};
|
|
191
|
+
transforms?: {
|
|
192
|
+
type: import("../../transformer/TxTransformerTypes.js").TxTransformerType;
|
|
193
|
+
props: {
|
|
194
|
+
chain: string;
|
|
195
|
+
config: {
|
|
196
|
+
owner: string;
|
|
197
|
+
origin: string;
|
|
198
|
+
localRouter?: string | undefined;
|
|
199
|
+
routerOverride?: string | undefined;
|
|
200
|
+
ismOverride?: string | undefined;
|
|
201
|
+
};
|
|
202
|
+
hookMetadata?: string | undefined;
|
|
203
|
+
};
|
|
204
|
+
}[] | undefined;
|
|
205
|
+
}>;
|
|
206
|
+
//# sourceMappingURL=schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/builder/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAInC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { ZChainName } from '../../../../metadata/customZodTypes.js';
|
|
3
|
+
import { TransformerMetadataSchema } from '../../transformer/schemas.js';
|
|
4
|
+
import { SubmitterMetadataSchema } from '../schemas.js';
|
|
5
|
+
export const SubmissionStrategySchema = z.object({
|
|
6
|
+
chain: ZChainName,
|
|
7
|
+
submitter: SubmitterMetadataSchema,
|
|
8
|
+
transforms: z.array(TransformerMetadataSchema).optional(),
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/builder/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,UAAU;IACjB,SAAS,EAAE,uBAAuB;IAClC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE;CAC1D,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/builder/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAExD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/builder/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Logger } from 'pino';
|
|
2
|
+
import { MultiProvider } from '../../../MultiProvider.js';
|
|
3
|
+
import { PopulatedTransaction } from '../../types.js';
|
|
4
|
+
import { TxSubmitterType } from '../TxSubmitterTypes.js';
|
|
5
|
+
import { EV5TxSubmitterInterface } from './EV5TxSubmitterInterface.js';
|
|
6
|
+
import { EV5GnosisSafeTxSubmitterProps } from './types.js';
|
|
7
|
+
export declare class EV5GnosisSafeTxSubmitter implements EV5TxSubmitterInterface {
|
|
8
|
+
readonly multiProvider: MultiProvider;
|
|
9
|
+
readonly props: EV5GnosisSafeTxSubmitterProps;
|
|
10
|
+
readonly txSubmitterType: TxSubmitterType;
|
|
11
|
+
protected readonly logger: Logger;
|
|
12
|
+
constructor(multiProvider: MultiProvider, props: EV5GnosisSafeTxSubmitterProps);
|
|
13
|
+
submit(...txs: PopulatedTransaction[]): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=EV5GnosisSafeTxSubmitter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EV5GnosisSafeTxSubmitter.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAM9B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAE3D,qBAAa,wBAAyB,YAAW,uBAAuB;aASpD,aAAa,EAAE,aAAa;aAC5B,KAAK,EAAE,6BAA6B;IATtD,SAAgB,eAAe,EAAE,eAAe,CAClB;IAE9B,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAE9B;gBAGe,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,6BAA6B;IAGzC,MAAM,CAAC,GAAG,GAAG,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CA+CnE"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { assert, rootLogger } from '@hyperlane-xyz/utils';
|
|
2
|
+
// @ts-ignore
|
|
3
|
+
import { getSafe, getSafeService } from '../../../../utils/gnosisSafe.js';
|
|
4
|
+
import { TxSubmitterType } from '../TxSubmitterTypes.js';
|
|
5
|
+
export class EV5GnosisSafeTxSubmitter {
|
|
6
|
+
multiProvider;
|
|
7
|
+
props;
|
|
8
|
+
txSubmitterType = TxSubmitterType.GNOSIS_SAFE;
|
|
9
|
+
logger = rootLogger.child({
|
|
10
|
+
module: 'gnosis-safe-submitter',
|
|
11
|
+
});
|
|
12
|
+
constructor(multiProvider, props) {
|
|
13
|
+
this.multiProvider = multiProvider;
|
|
14
|
+
this.props = props;
|
|
15
|
+
}
|
|
16
|
+
async submit(...txs) {
|
|
17
|
+
const safe = await getSafe(this.props.chain, this.multiProvider, this.props.safeAddress);
|
|
18
|
+
const safeService = await getSafeService(this.props.chain, this.multiProvider);
|
|
19
|
+
const nextNonce = await safeService.getNextNonce(this.props.safeAddress);
|
|
20
|
+
const safeTransactionBatch = txs.map(({ to, data, value, chainId }) => {
|
|
21
|
+
const txChain = this.multiProvider.getChainName(chainId);
|
|
22
|
+
assert(txChain === this.props.chain, `Invalid PopulatedTransaction: Cannot submit ${txChain} tx to ${this.props.chain} submitter.`);
|
|
23
|
+
return { to, data, value: value?.toString() ?? '0' };
|
|
24
|
+
});
|
|
25
|
+
const safeTransaction = await safe.createTransaction({
|
|
26
|
+
safeTransactionData: safeTransactionBatch,
|
|
27
|
+
options: { nonce: nextNonce },
|
|
28
|
+
});
|
|
29
|
+
const safeTransactionData = safeTransaction.data;
|
|
30
|
+
const safeTxHash = await safe.getTransactionHash(safeTransaction);
|
|
31
|
+
const senderAddress = await this.multiProvider.getSignerAddress(this.props.chain);
|
|
32
|
+
const safeSignature = await safe.signTransactionHash(safeTxHash);
|
|
33
|
+
const senderSignature = safeSignature.data;
|
|
34
|
+
this.logger.debug(`Submitting transaction proposal to ${this.props.safeAddress} on ${this.props.chain}: ${safeTxHash}`);
|
|
35
|
+
return safeService.proposeTransaction({
|
|
36
|
+
safeAddress: this.props.safeAddress,
|
|
37
|
+
safeTransactionData,
|
|
38
|
+
safeTxHash,
|
|
39
|
+
senderAddress,
|
|
40
|
+
senderSignature,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=EV5GnosisSafeTxSubmitter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EV5GnosisSafeTxSubmitter.js","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/EV5GnosisSafeTxSubmitter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAW,MAAM,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEnE,aAAa;AACb,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAG1E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAKzD,MAAM,OAAO,wBAAwB;IASjB;IACA;IATF,eAAe,GAC7B,eAAe,CAAC,WAAW,CAAC;IAEX,MAAM,GAAW,UAAU,CAAC,KAAK,CAAC;QACnD,MAAM,EAAE,uBAAuB;KAChC,CAAC,CAAC;IAEH,YACkB,aAA4B,EAC5B,KAAoC;QADpC,kBAAa,GAAb,aAAa,CAAe;QAC5B,UAAK,GAAL,KAAK,CAA+B;IACnD,CAAC;IAEG,KAAK,CAAC,MAAM,CAAC,GAAG,GAA2B;QAChD,MAAM,IAAI,GAAG,MAAM,OAAO,CACxB,IAAI,CAAC,KAAK,CAAC,KAAK,EAChB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,KAAK,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,WAAW,GAAG,MAAM,cAAc,CACtC,IAAI,CAAC,KAAK,CAAC,KAAK,EAChB,IAAI,CAAC,aAAa,CACnB,CAAC;QACF,MAAM,SAAS,GAAW,MAAM,WAAW,CAAC,YAAY,CACtD,IAAI,CAAC,KAAK,CAAC,WAAW,CACvB,CAAC;QACF,MAAM,oBAAoB,GAAU,GAAG,CAAC,GAAG,CACzC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAwB,EAAE,EAAE;YACrD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACzD,MAAM,CACJ,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,EAC5B,+CAA+C,OAAO,UAAU,IAAI,CAAC,KAAK,CAAC,KAAK,aAAa,CAC9F,CAAC;YACF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC;QACvD,CAAC,CACF,CAAC;QACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC;YACnD,mBAAmB,EAAE,oBAAoB;YACzC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;SAC9B,CAAC,CAAC;QACH,MAAM,mBAAmB,GAAQ,eAAe,CAAC,IAAI,CAAC;QACtD,MAAM,UAAU,GAAW,MAAM,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QAC1E,MAAM,aAAa,GAAY,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CACtE,IAAI,CAAC,KAAK,CAAC,KAAK,CACjB,CAAC;QACF,MAAM,aAAa,GAAQ,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACtE,MAAM,eAAe,GAAW,aAAa,CAAC,IAAI,CAAC;QAEnD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,sCAAsC,IAAI,CAAC,KAAK,CAAC,WAAW,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,UAAU,EAAE,CACrG,CAAC;QAEF,OAAO,WAAW,CAAC,kBAAkB,CAAC;YACpC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;YACnC,mBAAmB;YACnB,UAAU;YACV,aAAa;YACb,eAAe;SAChB,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { TransactionReceipt } from '@ethersproject/providers';
|
|
2
|
+
import { PopulatedTransaction } from 'ethers';
|
|
3
|
+
import { Logger } from 'pino';
|
|
4
|
+
import { MultiProvider } from '../../../MultiProvider.js';
|
|
5
|
+
import { TxSubmitterType } from '../TxSubmitterTypes.js';
|
|
6
|
+
import { EV5JsonRpcTxSubmitter } from './EV5JsonRpcTxSubmitter.js';
|
|
7
|
+
import { EV5ImpersonatedAccountTxSubmitterProps } from './types.js';
|
|
8
|
+
export declare class EV5ImpersonatedAccountTxSubmitter extends EV5JsonRpcTxSubmitter {
|
|
9
|
+
readonly props: EV5ImpersonatedAccountTxSubmitterProps;
|
|
10
|
+
readonly txSubmitterType: TxSubmitterType;
|
|
11
|
+
protected readonly logger: Logger;
|
|
12
|
+
constructor(multiProvider: MultiProvider, props: EV5ImpersonatedAccountTxSubmitterProps);
|
|
13
|
+
submit(...txs: PopulatedTransaction[]): Promise<TransactionReceipt[]>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=EV5ImpersonatedAccountTxSubmitter.d.ts.map
|
package/dist/providers/transactions/submitter/ethersV5/EV5ImpersonatedAccountTxSubmitter.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EV5ImpersonatedAccountTxSubmitter.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/EV5ImpersonatedAccountTxSubmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAQ9B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,sCAAsC,EAAE,MAAM,YAAY,CAAC;AAEpE,qBAAa,iCAAkC,SAAQ,qBAAqB;aAUxD,KAAK,EAAE,sCAAsC;IAT/D,SAAgB,eAAe,EAAE,eAAe,CACT;IAEvC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAE9B;gBAGD,aAAa,EAAE,aAAa,EACZ,KAAK,EAAE,sCAAsC;IAKlD,MAAM,CACjB,GAAG,GAAG,EAAE,oBAAoB,EAAE,GAC7B,OAAO,CAAC,kBAAkB,EAAE,CAAC;CASjC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { rootLogger } from '@hyperlane-xyz/utils';
|
|
2
|
+
import { impersonateAccount, stopImpersonatingAccount, } from '../../../../utils/fork.js';
|
|
3
|
+
import { TxSubmitterType } from '../TxSubmitterTypes.js';
|
|
4
|
+
import { EV5JsonRpcTxSubmitter } from './EV5JsonRpcTxSubmitter.js';
|
|
5
|
+
export class EV5ImpersonatedAccountTxSubmitter extends EV5JsonRpcTxSubmitter {
|
|
6
|
+
props;
|
|
7
|
+
txSubmitterType = TxSubmitterType.IMPERSONATED_ACCOUNT;
|
|
8
|
+
logger = rootLogger.child({
|
|
9
|
+
module: 'impersonated-account-submitter',
|
|
10
|
+
});
|
|
11
|
+
constructor(multiProvider, props) {
|
|
12
|
+
super(multiProvider);
|
|
13
|
+
this.props = props;
|
|
14
|
+
}
|
|
15
|
+
async submit(...txs) {
|
|
16
|
+
const impersonatedAccount = await impersonateAccount(this.props.userAddress);
|
|
17
|
+
this.multiProvider.setSharedSigner(impersonatedAccount);
|
|
18
|
+
const transactionReceipts = await super.submit(...txs);
|
|
19
|
+
await stopImpersonatingAccount(this.props.userAddress);
|
|
20
|
+
return transactionReceipts;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=EV5ImpersonatedAccountTxSubmitter.js.map
|
package/dist/providers/transactions/submitter/ethersV5/EV5ImpersonatedAccountTxSubmitter.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EV5ImpersonatedAccountTxSubmitter.js","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/EV5ImpersonatedAccountTxSubmitter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGnE,MAAM,OAAO,iCAAkC,SAAQ,qBAAqB;IAUxD;IATF,eAAe,GAC7B,eAAe,CAAC,oBAAoB,CAAC;IAEpB,MAAM,GAAW,UAAU,CAAC,KAAK,CAAC;QACnD,MAAM,EAAE,gCAAgC;KACzC,CAAC,CAAC;IAEH,YACE,aAA4B,EACZ,KAA6C;QAE7D,KAAK,CAAC,aAAa,CAAC,CAAC;QAFL,UAAK,GAAL,KAAK,CAAwC;IAG/D,CAAC;IAEM,KAAK,CAAC,MAAM,CACjB,GAAG,GAA2B;QAE9B,MAAM,mBAAmB,GAAG,MAAM,kBAAkB,CAClD,IAAI,CAAC,KAAK,CAAC,WAAW,CACvB,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QACxD,MAAM,mBAAmB,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;QACvD,MAAM,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACvD,OAAO,mBAAmB,CAAC;IAC7B,CAAC;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { TransactionReceipt } from '@ethersproject/providers';
|
|
2
|
+
import { PopulatedTransaction } from 'ethers';
|
|
3
|
+
import { Logger } from 'pino';
|
|
4
|
+
import { MultiProvider } from '../../../MultiProvider.js';
|
|
5
|
+
import { TxSubmitterType } from '../TxSubmitterTypes.js';
|
|
6
|
+
import { EV5TxSubmitterInterface } from './EV5TxSubmitterInterface.js';
|
|
7
|
+
export declare class EV5JsonRpcTxSubmitter implements EV5TxSubmitterInterface {
|
|
8
|
+
readonly multiProvider: MultiProvider;
|
|
9
|
+
readonly txSubmitterType: TxSubmitterType;
|
|
10
|
+
protected readonly logger: Logger;
|
|
11
|
+
constructor(multiProvider: MultiProvider);
|
|
12
|
+
submit(...txs: PopulatedTransaction[]): Promise<TransactionReceipt[]>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=EV5JsonRpcTxSubmitter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EV5JsonRpcTxSubmitter.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAmB,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAI9B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,qBAAa,qBAAsB,YAAW,uBAAuB;aAOvC,aAAa,EAAE,aAAa;IANxD,SAAgB,eAAe,EAAE,eAAe,CAA4B;IAE5E,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAE9B;gBAEyB,aAAa,EAAE,aAAa;IAE3C,MAAM,CACjB,GAAG,GAAG,EAAE,oBAAoB,EAAE,GAC7B,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAgBjC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { assert, rootLogger } from '@hyperlane-xyz/utils';
|
|
2
|
+
import { TxSubmitterType } from '../TxSubmitterTypes.js';
|
|
3
|
+
export class EV5JsonRpcTxSubmitter {
|
|
4
|
+
multiProvider;
|
|
5
|
+
txSubmitterType = TxSubmitterType.JSON_RPC;
|
|
6
|
+
logger = rootLogger.child({
|
|
7
|
+
module: 'json-rpc-submitter',
|
|
8
|
+
});
|
|
9
|
+
constructor(multiProvider) {
|
|
10
|
+
this.multiProvider = multiProvider;
|
|
11
|
+
}
|
|
12
|
+
async submit(...txs) {
|
|
13
|
+
const receipts = [];
|
|
14
|
+
for (const tx of txs) {
|
|
15
|
+
assert(tx.chainId, 'Invalid PopulatedTransaction: Missing chainId field');
|
|
16
|
+
const txChain = this.multiProvider.getChainName(tx.chainId);
|
|
17
|
+
const receipt = await this.multiProvider.sendTransaction(txChain, tx);
|
|
18
|
+
this.logger.debug(`Submitted PopulatedTransaction on ${txChain}: ${receipt.transactionHash}`);
|
|
19
|
+
receipts.push(receipt);
|
|
20
|
+
}
|
|
21
|
+
return receipts;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=EV5JsonRpcTxSubmitter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EV5JsonRpcTxSubmitter.js","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,MAAM,OAAO,qBAAqB;IAOJ;IANZ,eAAe,GAAoB,eAAe,CAAC,QAAQ,CAAC;IAEzD,MAAM,GAAW,UAAU,CAAC,KAAK,CAAC;QACnD,MAAM,EAAE,oBAAoB;KAC7B,CAAC,CAAC;IAEH,YAA4B,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAAG,CAAC;IAErD,KAAK,CAAC,MAAM,CACjB,GAAG,GAA2B;QAE9B,MAAM,QAAQ,GAAyB,EAAE,CAAC;QAC1C,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,qDAAqD,CAAC,CAAC;YAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAoB,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CACvE,OAAO,EACP,EAAE,CACH,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,qCAAqC,OAAO,KAAK,OAAO,CAAC,eAAe,EAAE,CAC3E,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ProtocolType } from '@hyperlane-xyz/utils';
|
|
2
|
+
import { MultiProvider } from '../../../MultiProvider.js';
|
|
3
|
+
import { TxSubmitterInterface } from '../TxSubmitterInterface.js';
|
|
4
|
+
export interface EV5TxSubmitterInterface extends TxSubmitterInterface<ProtocolType.Ethereum> {
|
|
5
|
+
/**
|
|
6
|
+
* The EV5 multi-provider to use for transaction submission.
|
|
7
|
+
*/
|
|
8
|
+
multiProvider: MultiProvider;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=EV5TxSubmitterInterface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EV5TxSubmitterInterface.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/EV5TxSubmitterInterface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,WAAW,uBACf,SAAQ,oBAAoB,CAAC,YAAY,CAAC,QAAQ,CAAC;IACnD;;OAEG;IACH,aAAa,EAAE,aAAa,CAAC;CAC9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EV5TxSubmitterInterface.js","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/EV5TxSubmitterInterface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const EV5GnosisSafeTxSubmitterPropsSchema: z.ZodObject<{
|
|
3
|
+
chain: z.ZodString;
|
|
4
|
+
safeAddress: z.ZodString;
|
|
5
|
+
}, "strip", z.ZodTypeAny, {
|
|
6
|
+
chain: string;
|
|
7
|
+
safeAddress: string;
|
|
8
|
+
}, {
|
|
9
|
+
chain: string;
|
|
10
|
+
safeAddress: string;
|
|
11
|
+
}>;
|
|
12
|
+
export declare const EV5ImpersonatedAccountTxSubmitterPropsSchema: z.ZodObject<{
|
|
13
|
+
userAddress: z.ZodString;
|
|
14
|
+
}, "strip", z.ZodTypeAny, {
|
|
15
|
+
userAddress: string;
|
|
16
|
+
}, {
|
|
17
|
+
userAddress: string;
|
|
18
|
+
}>;
|
|
19
|
+
//# sourceMappingURL=schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,mCAAmC;;;;;;;;;EAG9C,CAAC;AAEH,eAAO,MAAM,4CAA4C;;;;;;EAEvD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { ZChainName, ZHash } from '../../../../metadata/customZodTypes.js';
|
|
3
|
+
export const EV5GnosisSafeTxSubmitterPropsSchema = z.object({
|
|
4
|
+
chain: ZChainName,
|
|
5
|
+
safeAddress: ZHash,
|
|
6
|
+
});
|
|
7
|
+
export const EV5ImpersonatedAccountTxSubmitterPropsSchema = z.object({
|
|
8
|
+
userAddress: ZHash,
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,wCAAwC,CAAC;AAE3E,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1D,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4CAA4C,GAAG,CAAC,CAAC,MAAM,CAAC;IACnE,WAAW,EAAE,KAAK;CACnB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemas.test.d.ts","sourceRoot":"","sources":["../../../../../src/providers/transactions/submitter/ethersV5/schemas.test.ts"],"names":[],"mappings":""}
|