@hyperlane-xyz/core 0.5.4-3 → 1.0.0-beta0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/contracts/HyperlaneConnectionClient.sol +3 -4
- package/contracts/InterchainGasPaymaster.sol +19 -10
- package/contracts/Mailbox.sol +84 -19
- package/contracts/PausableReentrancyGuard.sol +69 -0
- package/contracts/Router.sol +15 -9
- package/contracts/isms/MultisigIsm.sol +77 -44
- package/contracts/libs/MultisigIsmMetadata.sol +17 -19
- package/contracts/middleware/InterchainAccountRouter.sol +18 -8
- package/contracts/middleware/InterchainQueryRouter.sol +28 -8
- package/contracts/middleware/liquidity-layer/LiquidityLayerRouter.sol +20 -12
- package/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.sol +0 -3
- package/contracts/mock/MockHyperlaneEnvironment.sol +17 -4
- package/contracts/mock/MockInterchainAccountRouter.sol +16 -2
- package/contracts/test/TestHyperlaneConnectionClient.sol +2 -2
- package/contracts/test/TestLiquidityLayerMessageRecipient.sol +1 -1
- package/contracts/test/TestRouter.sol +14 -6
- package/contracts/test/TestSendReceiver.sol +22 -7
- package/contracts/test/TestTokenRecipient.sol +1 -1
- package/contracts/upgrade/ProxyAdmin.sol +6 -0
- package/contracts/upgrade/TransparentUpgradeableProxy.sol +6 -0
- package/interfaces/IInterchainAccountRouter.sol +6 -0
- package/interfaces/IInterchainGasPaymaster.sol +6 -3
- package/interfaces/IInterchainQueryRouter.sol +7 -0
- package/{contracts/middleware/liquidity-layer/interfaces → interfaces}/ILiquidityLayerMessageRecipient.sol +0 -0
- package/interfaces/ILiquidityLayerRouter.sol +15 -0
- package/interfaces/IMultisigIsm.sol +1 -1
- package/package.json +6 -7
- package/contracts/test/MysteryMath.sol +0 -21
- package/contracts/test/MysteryMathV1.sol +0 -22
- package/contracts/test/MysteryMathV2.sol +0 -22
- package/contracts/upgrade/UpgradeBeacon.sol +0 -98
- package/contracts/upgrade/UpgradeBeaconController.sol +0 -48
- package/contracts/upgrade/UpgradeBeaconProxy.sol +0 -176
- package/dist/@openzeppelin/contracts/access/Ownable.d.ts +0 -90
- package/dist/@openzeppelin/contracts/access/Ownable.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts/access/Ownable.js +0 -4
- package/dist/@openzeppelin/contracts/access/Ownable.js.map +0 -1
- package/dist/@openzeppelin/contracts/access/index.d.ts +0 -2
- package/dist/@openzeppelin/contracts/access/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts/access/index.js +0 -3
- package/dist/@openzeppelin/contracts/access/index.js.map +0 -1
- package/dist/@openzeppelin/contracts/index.d.ts +0 -5
- package/dist/@openzeppelin/contracts/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts/index.js +0 -4
- package/dist/@openzeppelin/contracts/index.js.map +0 -1
- package/dist/@openzeppelin/contracts/token/ERC20/IERC20.d.ts +0 -139
- package/dist/@openzeppelin/contracts/token/ERC20/IERC20.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts/token/ERC20/IERC20.js +0 -4
- package/dist/@openzeppelin/contracts/token/ERC20/IERC20.js.map +0 -1
- package/dist/@openzeppelin/contracts/token/ERC20/index.d.ts +0 -2
- package/dist/@openzeppelin/contracts/token/ERC20/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts/token/ERC20/index.js +0 -3
- package/dist/@openzeppelin/contracts/token/ERC20/index.js.map +0 -1
- package/dist/@openzeppelin/contracts/token/index.d.ts +0 -3
- package/dist/@openzeppelin/contracts/token/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts/token/index.js +0 -4
- package/dist/@openzeppelin/contracts/token/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts +0 -99
- package/dist/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/access/index.d.ts +0 -2
- package/dist/@openzeppelin/contracts-upgradeable/access/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/access/index.js +0 -3
- package/dist/@openzeppelin/contracts-upgradeable/access/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/index.d.ts +0 -11
- package/dist/@openzeppelin/contracts-upgradeable/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/index.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/proxy/index.d.ts +0 -3
- package/dist/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/proxy/index.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/proxy/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts +0 -40
- package/dist/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts +0 -2
- package/dist/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/proxy/utils/index.js +0 -3
- package/dist/@openzeppelin/contracts-upgradeable/proxy/utils/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts +0 -40
- package/dist/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/security/index.d.ts +0 -2
- package/dist/@openzeppelin/contracts-upgradeable/security/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/security/index.js +0 -3
- package/dist/@openzeppelin/contracts-upgradeable/security/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.d.ts +0 -204
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts +0 -139
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.d.ts +0 -163
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.d.ts +0 -2
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.js +0 -3
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts +0 -5
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/index.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/token/ERC20/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/index.d.ts +0 -3
- package/dist/@openzeppelin/contracts-upgradeable/token/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/token/index.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/token/index.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts +0 -40
- package/dist/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js +0 -4
- package/dist/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.js.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/utils/index.d.ts +0 -2
- package/dist/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map +0 -1
- package/dist/@openzeppelin/contracts-upgradeable/utils/index.js +0 -3
- package/dist/@openzeppelin/contracts-upgradeable/utils/index.js.map +0 -1
- package/dist/@openzeppelin/index.d.ts +0 -5
- package/dist/@openzeppelin/index.d.ts.map +0 -1
- package/dist/@openzeppelin/index.js +0 -4
- package/dist/@openzeppelin/index.js.map +0 -1
- package/dist/common.d.ts +0 -22
- package/dist/common.d.ts.map +0 -1
- package/dist/common.js +0 -4
- package/dist/common.js.map +0 -1
- package/dist/contracts/Create2Factory.d.ts +0 -94
- package/dist/contracts/Create2Factory.d.ts.map +0 -1
- package/dist/contracts/Create2Factory.js +0 -4
- package/dist/contracts/Create2Factory.js.map +0 -1
- package/dist/contracts/HyperlaneConnectionClient.d.ts +0 -202
- package/dist/contracts/HyperlaneConnectionClient.d.ts.map +0 -1
- package/dist/contracts/HyperlaneConnectionClient.js +0 -4
- package/dist/contracts/HyperlaneConnectionClient.js.map +0 -1
- package/dist/contracts/InterchainGasPaymaster.d.ts +0 -160
- package/dist/contracts/InterchainGasPaymaster.d.ts.map +0 -1
- package/dist/contracts/InterchainGasPaymaster.js +0 -4
- package/dist/contracts/InterchainGasPaymaster.js.map +0 -1
- package/dist/contracts/Mailbox.d.ts +0 -265
- package/dist/contracts/Mailbox.d.ts.map +0 -1
- package/dist/contracts/Mailbox.js +0 -4
- package/dist/contracts/Mailbox.js.map +0 -1
- package/dist/contracts/OwnableMulticall.d.ts +0 -123
- package/dist/contracts/OwnableMulticall.d.ts.map +0 -1
- package/dist/contracts/OwnableMulticall.js +0 -4
- package/dist/contracts/OwnableMulticall.js.map +0 -1
- package/dist/contracts/OwnableSpecifiesISM.d.ts +0 -134
- package/dist/contracts/OwnableSpecifiesISM.d.ts.map +0 -1
- package/dist/contracts/OwnableSpecifiesISM.js +0 -4
- package/dist/contracts/OwnableSpecifiesISM.js.map +0 -1
- package/dist/contracts/Router.d.ts +0 -271
- package/dist/contracts/Router.d.ts.map +0 -1
- package/dist/contracts/Router.js +0 -4
- package/dist/contracts/Router.js.map +0 -1
- package/dist/contracts/index.d.ts +0 -17
- package/dist/contracts/index.d.ts.map +0 -1
- package/dist/contracts/index.js +0 -4
- package/dist/contracts/index.js.map +0 -1
- package/dist/contracts/isms/MultisigIsm.d.ts +0 -235
- package/dist/contracts/isms/MultisigIsm.d.ts.map +0 -1
- package/dist/contracts/isms/MultisigIsm.js +0 -4
- package/dist/contracts/isms/MultisigIsm.js.map +0 -1
- package/dist/contracts/isms/index.d.ts +0 -2
- package/dist/contracts/isms/index.d.ts.map +0 -1
- package/dist/contracts/isms/index.js +0 -3
- package/dist/contracts/isms/index.js.map +0 -1
- package/dist/contracts/middleware/InterchainAccountRouter.d.ts +0 -350
- package/dist/contracts/middleware/InterchainAccountRouter.d.ts.map +0 -1
- package/dist/contracts/middleware/InterchainAccountRouter.js +0 -4
- package/dist/contracts/middleware/InterchainAccountRouter.js.map +0 -1
- package/dist/contracts/middleware/InterchainQueryRouter.d.ts +0 -382
- package/dist/contracts/middleware/InterchainQueryRouter.d.ts.map +0 -1
- package/dist/contracts/middleware/InterchainQueryRouter.js +0 -4
- package/dist/contracts/middleware/InterchainQueryRouter.js.map +0 -1
- package/dist/contracts/middleware/index.d.ts +0 -5
- package/dist/contracts/middleware/index.d.ts.map +0 -1
- package/dist/contracts/middleware/index.js +0 -4
- package/dist/contracts/middleware/index.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/LiquidityLayerRouter.d.ts +0 -340
- package/dist/contracts/middleware/liquidity-layer/LiquidityLayerRouter.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/LiquidityLayerRouter.js +0 -4
- package/dist/contracts/middleware/liquidity-layer/LiquidityLayerRouter.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.d.ts +0 -465
- package/dist/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.js +0 -4
- package/dist/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/adapters/index.d.ts +0 -2
- package/dist/contracts/middleware/liquidity-layer/adapters/index.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/adapters/index.js +0 -3
- package/dist/contracts/middleware/liquidity-layer/adapters/index.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/index.d.ts +0 -6
- package/dist/contracts/middleware/liquidity-layer/index.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/index.js +0 -4
- package/dist/contracts/middleware/liquidity-layer/index.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter.d.ts +0 -67
- package/dist/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter.js +0 -4
- package/dist/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerMessageRecipient.d.ts +0 -51
- package/dist/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerMessageRecipient.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerMessageRecipient.js +0 -4
- package/dist/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerMessageRecipient.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.d.ts +0 -78
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.js +0 -4
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter.d.ts +0 -59
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter.js +0 -4
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/index.d.ts +0 -3
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/index.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/index.js +0 -3
- package/dist/contracts/middleware/liquidity-layer/interfaces/circle/index.js.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/index.d.ts +0 -5
- package/dist/contracts/middleware/liquidity-layer/interfaces/index.d.ts.map +0 -1
- package/dist/contracts/middleware/liquidity-layer/interfaces/index.js +0 -4
- package/dist/contracts/middleware/liquidity-layer/interfaces/index.js.map +0 -1
- package/dist/contracts/mock/MockCircleBridge.d.ts +0 -86
- package/dist/contracts/mock/MockCircleBridge.d.ts.map +0 -1
- package/dist/contracts/mock/MockCircleBridge.js +0 -4
- package/dist/contracts/mock/MockCircleBridge.js.map +0 -1
- package/dist/contracts/mock/MockCircleMessageTransmitter.d.ts +0 -77
- package/dist/contracts/mock/MockCircleMessageTransmitter.d.ts.map +0 -1
- package/dist/contracts/mock/MockCircleMessageTransmitter.js +0 -4
- package/dist/contracts/mock/MockCircleMessageTransmitter.js.map +0 -1
- package/dist/contracts/mock/MockHyperlaneEnvironment.d.ts +0 -83
- package/dist/contracts/mock/MockHyperlaneEnvironment.d.ts.map +0 -1
- package/dist/contracts/mock/MockHyperlaneEnvironment.js +0 -4
- package/dist/contracts/mock/MockHyperlaneEnvironment.js.map +0 -1
- package/dist/contracts/mock/MockInterchainAccountRouter.d.ts +0 -124
- package/dist/contracts/mock/MockInterchainAccountRouter.d.ts.map +0 -1
- package/dist/contracts/mock/MockInterchainAccountRouter.js +0 -4
- package/dist/contracts/mock/MockInterchainAccountRouter.js.map +0 -1
- package/dist/contracts/mock/MockMailbox.d.ts +0 -185
- package/dist/contracts/mock/MockMailbox.d.ts.map +0 -1
- package/dist/contracts/mock/MockMailbox.js +0 -4
- package/dist/contracts/mock/MockMailbox.js.map +0 -1
- package/dist/contracts/mock/MockToken.d.ts +0 -236
- package/dist/contracts/mock/MockToken.d.ts.map +0 -1
- package/dist/contracts/mock/MockToken.js +0 -4
- package/dist/contracts/mock/MockToken.js.map +0 -1
- package/dist/contracts/mock/index.d.ts +0 -7
- package/dist/contracts/mock/index.d.ts.map +0 -1
- package/dist/contracts/mock/index.js +0 -3
- package/dist/contracts/mock/index.js.map +0 -1
- package/dist/contracts/test/MysteryMath.d.ts +0 -77
- package/dist/contracts/test/MysteryMath.d.ts.map +0 -1
- package/dist/contracts/test/MysteryMath.js +0 -4
- package/dist/contracts/test/MysteryMath.js.map +0 -1
- package/dist/contracts/test/MysteryMathV1.d.ts +0 -85
- package/dist/contracts/test/MysteryMathV1.d.ts.map +0 -1
- package/dist/contracts/test/MysteryMathV1.js +0 -4
- package/dist/contracts/test/MysteryMathV1.js.map +0 -1
- package/dist/contracts/test/MysteryMathV2.d.ts +0 -85
- package/dist/contracts/test/MysteryMathV2.d.ts.map +0 -1
- package/dist/contracts/test/MysteryMathV2.js +0 -4
- package/dist/contracts/test/MysteryMathV2.js.map +0 -1
- package/dist/contracts/test/TestHyperlaneConnectionClient.d.ts +0 -226
- package/dist/contracts/test/TestHyperlaneConnectionClient.d.ts.map +0 -1
- package/dist/contracts/test/TestHyperlaneConnectionClient.js +0 -4
- package/dist/contracts/test/TestHyperlaneConnectionClient.js.map +0 -1
- package/dist/contracts/test/TestIsm.d.ts +0 -67
- package/dist/contracts/test/TestIsm.d.ts.map +0 -1
- package/dist/contracts/test/TestIsm.js +0 -4
- package/dist/contracts/test/TestIsm.js.map +0 -1
- package/dist/contracts/test/TestLiquidityLayerMessageRecipient.d.ts +0 -72
- package/dist/contracts/test/TestLiquidityLayerMessageRecipient.d.ts.map +0 -1
- package/dist/contracts/test/TestLiquidityLayerMessageRecipient.js +0 -4
- package/dist/contracts/test/TestLiquidityLayerMessageRecipient.js.map +0 -1
- package/dist/contracts/test/TestMailbox.d.ts +0 -289
- package/dist/contracts/test/TestMailbox.d.ts.map +0 -1
- package/dist/contracts/test/TestMailbox.js +0 -4
- package/dist/contracts/test/TestMailbox.js.map +0 -1
- package/dist/contracts/test/TestMerkle.d.ts +0 -87
- package/dist/contracts/test/TestMerkle.d.ts.map +0 -1
- package/dist/contracts/test/TestMerkle.js +0 -4
- package/dist/contracts/test/TestMerkle.js.map +0 -1
- package/dist/contracts/test/TestMessage.d.ts +0 -123
- package/dist/contracts/test/TestMessage.d.ts.map +0 -1
- package/dist/contracts/test/TestMessage.js +0 -4
- package/dist/contracts/test/TestMessage.js.map +0 -1
- package/dist/contracts/test/TestMultisigIsm.d.ts +0 -251
- package/dist/contracts/test/TestMultisigIsm.d.ts.map +0 -1
- package/dist/contracts/test/TestMultisigIsm.js +0 -4
- package/dist/contracts/test/TestMultisigIsm.js.map +0 -1
- package/dist/contracts/test/TestQuery.d.ts +0 -87
- package/dist/contracts/test/TestQuery.d.ts.map +0 -1
- package/dist/contracts/test/TestQuery.js +0 -4
- package/dist/contracts/test/TestQuery.js.map +0 -1
- package/dist/contracts/test/TestQuerySender.d.ts +0 -215
- package/dist/contracts/test/TestQuerySender.d.ts.map +0 -1
- package/dist/contracts/test/TestQuerySender.js +0 -4
- package/dist/contracts/test/TestQuerySender.js.map +0 -1
- package/dist/contracts/test/TestRecipient.d.ts +0 -131
- package/dist/contracts/test/TestRecipient.d.ts.map +0 -1
- package/dist/contracts/test/TestRecipient.js +0 -4
- package/dist/contracts/test/TestRecipient.js.map +0 -1
- package/dist/contracts/test/TestRouter.d.ts +0 -344
- package/dist/contracts/test/TestRouter.d.ts.map +0 -1
- package/dist/contracts/test/TestRouter.js +0 -4
- package/dist/contracts/test/TestRouter.js.map +0 -1
- package/dist/contracts/test/TestSendReceiver.d.ts +0 -78
- package/dist/contracts/test/TestSendReceiver.d.ts.map +0 -1
- package/dist/contracts/test/TestSendReceiver.js +0 -4
- package/dist/contracts/test/TestSendReceiver.js.map +0 -1
- package/dist/contracts/test/TestTokenRecipient.d.ts +0 -151
- package/dist/contracts/test/TestTokenRecipient.d.ts.map +0 -1
- package/dist/contracts/test/TestTokenRecipient.js +0 -4
- package/dist/contracts/test/TestTokenRecipient.js.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient1.d.ts +0 -43
- package/dist/contracts/test/bad-recipient/BadRecipient1.d.ts.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient1.js +0 -4
- package/dist/contracts/test/bad-recipient/BadRecipient1.js.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient2.d.ts +0 -43
- package/dist/contracts/test/bad-recipient/BadRecipient2.d.ts.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient2.js +0 -4
- package/dist/contracts/test/bad-recipient/BadRecipient2.js.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient3.d.ts +0 -43
- package/dist/contracts/test/bad-recipient/BadRecipient3.d.ts.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient3.js +0 -4
- package/dist/contracts/test/bad-recipient/BadRecipient3.js.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient5.d.ts +0 -43
- package/dist/contracts/test/bad-recipient/BadRecipient5.d.ts.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient5.js +0 -4
- package/dist/contracts/test/bad-recipient/BadRecipient5.js.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient6.d.ts +0 -43
- package/dist/contracts/test/bad-recipient/BadRecipient6.d.ts.map +0 -1
- package/dist/contracts/test/bad-recipient/BadRecipient6.js +0 -4
- package/dist/contracts/test/bad-recipient/BadRecipient6.js.map +0 -1
- package/dist/contracts/test/bad-recipient/index.d.ts +0 -6
- package/dist/contracts/test/bad-recipient/index.d.ts.map +0 -1
- package/dist/contracts/test/bad-recipient/index.js +0 -3
- package/dist/contracts/test/bad-recipient/index.js.map +0 -1
- package/dist/contracts/test/index.d.ts +0 -19
- package/dist/contracts/test/index.d.ts.map +0 -1
- package/dist/contracts/test/index.js +0 -4
- package/dist/contracts/test/index.js.map +0 -1
- package/dist/contracts/upgrade/UpgradeBeacon.d.ts +0 -40
- package/dist/contracts/upgrade/UpgradeBeacon.d.ts.map +0 -1
- package/dist/contracts/upgrade/UpgradeBeacon.js +0 -4
- package/dist/contracts/upgrade/UpgradeBeacon.js.map +0 -1
- package/dist/contracts/upgrade/UpgradeBeaconController.d.ts +0 -119
- package/dist/contracts/upgrade/UpgradeBeaconController.d.ts.map +0 -1
- package/dist/contracts/upgrade/UpgradeBeaconController.js +0 -4
- package/dist/contracts/upgrade/UpgradeBeaconController.js.map +0 -1
- package/dist/contracts/upgrade/UpgradeBeaconProxy.d.ts +0 -28
- package/dist/contracts/upgrade/UpgradeBeaconProxy.d.ts.map +0 -1
- package/dist/contracts/upgrade/UpgradeBeaconProxy.js +0 -4
- package/dist/contracts/upgrade/UpgradeBeaconProxy.js.map +0 -1
- package/dist/contracts/upgrade/Versioned.d.ts +0 -43
- package/dist/contracts/upgrade/Versioned.d.ts.map +0 -1
- package/dist/contracts/upgrade/Versioned.js +0 -4
- package/dist/contracts/upgrade/Versioned.js.map +0 -1
- package/dist/contracts/upgrade/index.d.ts +0 -5
- package/dist/contracts/upgrade/index.d.ts.map +0 -1
- package/dist/contracts/upgrade/index.js +0 -3
- package/dist/contracts/upgrade/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts +0 -43
- package/dist/factories/@openzeppelin/contracts/access/Ownable__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts/access/Ownable__factory.js +0 -70
- package/dist/factories/@openzeppelin/contracts/access/Ownable__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts/access/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts/access/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts/access/index.js +0 -9
- package/dist/factories/@openzeppelin/contracts/access/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts/index.d.ts +0 -3
- package/dist/factories/@openzeppelin/contracts/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts/index.js +0 -32
- package/dist/factories/@openzeppelin/contracts/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts +0 -36
- package/dist/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js +0 -201
- package/dist/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts/token/ERC20/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts/token/ERC20/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts/token/ERC20/index.js +0 -9
- package/dist/factories/@openzeppelin/contracts/token/ERC20/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts/token/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts/token/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts/token/index.js +0 -31
- package/dist/factories/@openzeppelin/contracts/token/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts +0 -43
- package/dist/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js +0 -83
- package/dist/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts-upgradeable/access/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/access/index.js +0 -9
- package/dist/factories/@openzeppelin/contracts-upgradeable/access/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/index.d.ts +0 -6
- package/dist/factories/@openzeppelin/contracts-upgradeable/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/index.js +0 -35
- package/dist/factories/@openzeppelin/contracts-upgradeable/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/index.js +0 -31
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts +0 -19
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js +0 -31
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js +0 -9
- package/dist/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts +0 -19
- package/dist/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js +0 -31
- package/dist/factories/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts-upgradeable/security/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/security/index.js +0 -9
- package/dist/factories/@openzeppelin/contracts-upgradeable/security/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable__factory.d.ts +0 -48
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable__factory.js +0 -324
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts +0 -36
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js +0 -201
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable__factory.d.ts +0 -36
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable__factory.js +0 -240
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.js +0 -9
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts +0 -4
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js +0 -35
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/index.js +0 -31
- package/dist/factories/@openzeppelin/contracts-upgradeable/token/index.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts +0 -19
- package/dist/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js +0 -31
- package/dist/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts +0 -2
- package/dist/factories/@openzeppelin/contracts-upgradeable/utils/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/contracts-upgradeable/utils/index.js +0 -9
- package/dist/factories/@openzeppelin/contracts-upgradeable/utils/index.js.map +0 -1
- package/dist/factories/@openzeppelin/index.d.ts +0 -3
- package/dist/factories/@openzeppelin/index.d.ts.map +0 -1
- package/dist/factories/@openzeppelin/index.js +0 -32
- package/dist/factories/@openzeppelin/index.js.map +0 -1
- package/dist/factories/contracts/Create2Factory__factory.d.ts +0 -55
- package/dist/factories/contracts/Create2Factory__factory.d.ts.map +0 -1
- package/dist/factories/contracts/Create2Factory__factory.js +0 -163
- package/dist/factories/contracts/Create2Factory__factory.js.map +0 -1
- package/dist/factories/contracts/HyperlaneConnectionClient__factory.d.ts +0 -43
- package/dist/factories/contracts/HyperlaneConnectionClient__factory.d.ts.map +0 -1
- package/dist/factories/contracts/HyperlaneConnectionClient__factory.js +0 -200
- package/dist/factories/contracts/HyperlaneConnectionClient__factory.js.map +0 -1
- package/dist/factories/contracts/InterchainGasPaymaster__factory.d.ts +0 -62
- package/dist/factories/contracts/InterchainGasPaymaster__factory.d.ts.map +0 -1
- package/dist/factories/contracts/InterchainGasPaymaster__factory.js +0 -162
- package/dist/factories/contracts/InterchainGasPaymaster__factory.js.map +0 -1
- package/dist/factories/contracts/Mailbox__factory.d.ts +0 -59
- package/dist/factories/contracts/Mailbox__factory.d.ts.map +0 -1
- package/dist/factories/contracts/Mailbox__factory.js +0 -363
- package/dist/factories/contracts/Mailbox__factory.js.map +0 -1
- package/dist/factories/contracts/OwnableMulticall__factory.d.ts +0 -78
- package/dist/factories/contracts/OwnableMulticall__factory.d.ts.map +0 -1
- package/dist/factories/contracts/OwnableMulticall__factory.js +0 -136
- package/dist/factories/contracts/OwnableMulticall__factory.js.map +0 -1
- package/dist/factories/contracts/OwnableSpecifiesISM__factory.d.ts +0 -55
- package/dist/factories/contracts/OwnableSpecifiesISM__factory.d.ts.map +0 -1
- package/dist/factories/contracts/OwnableSpecifiesISM__factory.js +0 -145
- package/dist/factories/contracts/OwnableSpecifiesISM__factory.js.map +0 -1
- package/dist/factories/contracts/Router__factory.d.ts +0 -36
- package/dist/factories/contracts/Router__factory.d.ts.map +0 -1
- package/dist/factories/contracts/Router__factory.js +0 -297
- package/dist/factories/contracts/Router__factory.js.map +0 -1
- package/dist/factories/contracts/index.d.ts +0 -12
- package/dist/factories/contracts/index.d.ts.map +0 -1
- package/dist/factories/contracts/index.js +0 -47
- package/dist/factories/contracts/index.js.map +0 -1
- package/dist/factories/contracts/isms/MultisigIsm__factory.d.ts +0 -55
- package/dist/factories/contracts/isms/MultisigIsm__factory.d.ts.map +0 -1
- package/dist/factories/contracts/isms/MultisigIsm__factory.js +0 -363
- package/dist/factories/contracts/isms/MultisigIsm__factory.js.map +0 -1
- package/dist/factories/contracts/isms/index.d.ts +0 -2
- package/dist/factories/contracts/isms/index.d.ts.map +0 -1
- package/dist/factories/contracts/isms/index.js +0 -9
- package/dist/factories/contracts/isms/index.js.map +0 -1
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +0 -58
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +0 -452
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js.map +0 -1
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +0 -58
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +0 -507
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js.map +0 -1
- package/dist/factories/contracts/middleware/index.d.ts +0 -4
- package/dist/factories/contracts/middleware/index.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/index.js +0 -35
- package/dist/factories/contracts/middleware/index.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +0 -48
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +0 -437
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +0 -48
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +0 -641
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/index.d.ts +0 -2
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/index.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/index.js +0 -9
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/index.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/index.d.ts +0 -4
- package/dist/factories/contracts/middleware/liquidity-layer/index.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/index.js +0 -34
- package/dist/factories/contracts/middleware/liquidity-layer/index.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter__factory.d.ts +0 -23
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter__factory.js +0 -91
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter__factory.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerMessageRecipient__factory.d.ts +0 -19
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerMessageRecipient__factory.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerMessageRecipient__factory.js +0 -51
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerMessageRecipient__factory.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.d.ts +0 -36
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.js +0 -104
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleBridge__factory.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter__factory.d.ts +0 -23
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter__factory.js +0 -61
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter__factory.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/index.d.ts +0 -3
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/index.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/index.js +0 -11
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/circle/index.js.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/index.d.ts +0 -4
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/index.d.ts.map +0 -1
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/index.js +0 -35
- package/dist/factories/contracts/middleware/liquidity-layer/interfaces/index.js.map +0 -1
- package/dist/factories/contracts/mock/MockCircleBridge__factory.d.ts +0 -59
- package/dist/factories/contracts/mock/MockCircleBridge__factory.d.ts.map +0 -1
- package/dist/factories/contracts/mock/MockCircleBridge__factory.js +0 -151
- package/dist/factories/contracts/mock/MockCircleBridge__factory.js.map +0 -1
- package/dist/factories/contracts/mock/MockCircleMessageTransmitter__factory.d.ts +0 -45
- package/dist/factories/contracts/mock/MockCircleMessageTransmitter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/mock/MockCircleMessageTransmitter__factory.js +0 -142
- package/dist/factories/contracts/mock/MockCircleMessageTransmitter__factory.js.map +0 -1
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +0 -45
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts.map +0 -1
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +0 -109
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js.map +0 -1
- package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.d.ts +0 -69
- package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.js +0 -181
- package/dist/factories/contracts/mock/MockInterchainAccountRouter__factory.js.map +0 -1
- package/dist/factories/contracts/mock/MockMailbox__factory.d.ts +0 -45
- package/dist/factories/contracts/mock/MockMailbox__factory.d.ts.map +0 -1
- package/dist/factories/contracts/mock/MockMailbox__factory.js +0 -252
- package/dist/factories/contracts/mock/MockMailbox__factory.js.map +0 -1
- package/dist/factories/contracts/mock/MockToken__factory.d.ts +0 -48
- package/dist/factories/contracts/mock/MockToken__factory.d.ts.map +0 -1
- package/dist/factories/contracts/mock/MockToken__factory.js +0 -355
- package/dist/factories/contracts/mock/MockToken__factory.js.map +0 -1
- package/dist/factories/contracts/mock/index.d.ts +0 -7
- package/dist/factories/contracts/mock/index.d.ts.map +0 -1
- package/dist/factories/contracts/mock/index.js +0 -19
- package/dist/factories/contracts/mock/index.js.map +0 -1
- package/dist/factories/contracts/test/MysteryMathV1__factory.d.ts +0 -41
- package/dist/factories/contracts/test/MysteryMathV1__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/MysteryMathV1__factory.js +0 -122
- package/dist/factories/contracts/test/MysteryMathV1__factory.js.map +0 -1
- package/dist/factories/contracts/test/MysteryMathV2__factory.d.ts +0 -41
- package/dist/factories/contracts/test/MysteryMathV2__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/MysteryMathV2__factory.js +0 -122
- package/dist/factories/contracts/test/MysteryMathV2__factory.js.map +0 -1
- package/dist/factories/contracts/test/MysteryMath__factory.d.ts +0 -23
- package/dist/factories/contracts/test/MysteryMath__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/MysteryMath__factory.js +0 -81
- package/dist/factories/contracts/test/MysteryMath__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestHyperlaneConnectionClient__factory.d.ts +0 -55
- package/dist/factories/contracts/test/TestHyperlaneConnectionClient__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestHyperlaneConnectionClient__factory.js +0 -249
- package/dist/factories/contracts/test/TestHyperlaneConnectionClient__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestIsm__factory.d.ts +0 -35
- package/dist/factories/contracts/test/TestIsm__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestIsm__factory.js +0 -91
- package/dist/factories/contracts/test/TestIsm__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestLiquidityLayerMessageRecipient__factory.d.ts +0 -44
- package/dist/factories/contracts/test/TestLiquidityLayerMessageRecipient__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestLiquidityLayerMessageRecipient__factory.js +0 -111
- package/dist/factories/contracts/test/TestLiquidityLayerMessageRecipient__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestMailbox__factory.d.ts +0 -59
- package/dist/factories/contracts/test/TestMailbox__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestMailbox__factory.js +0 -404
- package/dist/factories/contracts/test/TestMailbox__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestMerkle__factory.d.ts +0 -41
- package/dist/factories/contracts/test/TestMerkle__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestMerkle__factory.js +0 -127
- package/dist/factories/contracts/test/TestMerkle__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestMessage__factory.d.ts +0 -35
- package/dist/factories/contracts/test/TestMessage__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestMessage__factory.js +0 -212
- package/dist/factories/contracts/test/TestMessage__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestMultisigIsm__factory.d.ts +0 -48
- package/dist/factories/contracts/test/TestMultisigIsm__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestMultisigIsm__factory.js +0 -406
- package/dist/factories/contracts/test/TestMultisigIsm__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestQuerySender__factory.d.ts +0 -55
- package/dist/factories/contracts/test/TestQuerySender__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestQuerySender__factory.js +0 -253
- package/dist/factories/contracts/test/TestQuerySender__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestQuery__factory.d.ts +0 -66
- package/dist/factories/contracts/test/TestQuery__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestQuery__factory.js +0 -120
- package/dist/factories/contracts/test/TestQuery__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestRecipient__factory.d.ts +0 -55
- package/dist/factories/contracts/test/TestRecipient__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestRecipient__factory.js +0 -184
- package/dist/factories/contracts/test/TestRecipient__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestRouter__factory.d.ts +0 -48
- package/dist/factories/contracts/test/TestRouter__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestRouter__factory.js +0 -423
- package/dist/factories/contracts/test/TestRouter__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts +0 -44
- package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestSendReceiver__factory.js +0 -105
- package/dist/factories/contracts/test/TestSendReceiver__factory.js.map +0 -1
- package/dist/factories/contracts/test/TestTokenRecipient__factory.d.ts +0 -55
- package/dist/factories/contracts/test/TestTokenRecipient__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/TestTokenRecipient__factory.js +0 -232
- package/dist/factories/contracts/test/TestTokenRecipient__factory.js.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient1__factory.d.ts +0 -31
- package/dist/factories/contracts/test/bad-recipient/BadRecipient1__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient1__factory.js +0 -64
- package/dist/factories/contracts/test/bad-recipient/BadRecipient1__factory.js.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient2__factory.d.ts +0 -31
- package/dist/factories/contracts/test/bad-recipient/BadRecipient2__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient2__factory.js +0 -59
- package/dist/factories/contracts/test/bad-recipient/BadRecipient2__factory.js.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient3__factory.d.ts +0 -31
- package/dist/factories/contracts/test/bad-recipient/BadRecipient3__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient3__factory.js +0 -64
- package/dist/factories/contracts/test/bad-recipient/BadRecipient3__factory.js.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient5__factory.d.ts +0 -31
- package/dist/factories/contracts/test/bad-recipient/BadRecipient5__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient5__factory.js +0 -64
- package/dist/factories/contracts/test/bad-recipient/BadRecipient5__factory.js.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient6__factory.d.ts +0 -31
- package/dist/factories/contracts/test/bad-recipient/BadRecipient6__factory.d.ts.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/BadRecipient6__factory.js +0 -64
- package/dist/factories/contracts/test/bad-recipient/BadRecipient6__factory.js.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/index.d.ts +0 -6
- package/dist/factories/contracts/test/bad-recipient/index.d.ts.map +0 -1
- package/dist/factories/contracts/test/bad-recipient/index.js +0 -17
- package/dist/factories/contracts/test/bad-recipient/index.js.map +0 -1
- package/dist/factories/contracts/test/index.d.ts +0 -18
- package/dist/factories/contracts/test/index.d.ts.map +0 -1
- package/dist/factories/contracts/test/index.js +0 -63
- package/dist/factories/contracts/test/index.js.map +0 -1
- package/dist/factories/contracts/upgrade/UpgradeBeaconController__factory.d.ts +0 -55
- package/dist/factories/contracts/upgrade/UpgradeBeaconController__factory.d.ts.map +0 -1
- package/dist/factories/contracts/upgrade/UpgradeBeaconController__factory.js +0 -130
- package/dist/factories/contracts/upgrade/UpgradeBeaconController__factory.js.map +0 -1
- package/dist/factories/contracts/upgrade/UpgradeBeaconProxy__factory.d.ts +0 -33
- package/dist/factories/contracts/upgrade/UpgradeBeaconProxy__factory.d.ts.map +0 -1
- package/dist/factories/contracts/upgrade/UpgradeBeaconProxy__factory.js +0 -65
- package/dist/factories/contracts/upgrade/UpgradeBeaconProxy__factory.js.map +0 -1
- package/dist/factories/contracts/upgrade/UpgradeBeacon__factory.d.ts +0 -48
- package/dist/factories/contracts/upgrade/UpgradeBeacon__factory.d.ts.map +0 -1
- package/dist/factories/contracts/upgrade/UpgradeBeacon__factory.js +0 -74
- package/dist/factories/contracts/upgrade/UpgradeBeacon__factory.js.map +0 -1
- package/dist/factories/contracts/upgrade/Versioned__factory.d.ts +0 -31
- package/dist/factories/contracts/upgrade/Versioned__factory.d.ts.map +0 -1
- package/dist/factories/contracts/upgrade/Versioned__factory.js +0 -54
- package/dist/factories/contracts/upgrade/Versioned__factory.js.map +0 -1
- package/dist/factories/contracts/upgrade/index.d.ts +0 -5
- package/dist/factories/contracts/upgrade/index.d.ts.map +0 -1
- package/dist/factories/contracts/upgrade/index.js +0 -15
- package/dist/factories/contracts/upgrade/index.js.map +0 -1
- package/dist/factories/index.d.ts +0 -4
- package/dist/factories/index.d.ts.map +0 -1
- package/dist/factories/index.js +0 -33
- package/dist/factories/index.js.map +0 -1
- package/dist/factories/interfaces/IInterchainAccountRouter__factory.d.ts +0 -33
- package/dist/factories/interfaces/IInterchainAccountRouter__factory.d.ts.map +0 -1
- package/dist/factories/interfaces/IInterchainAccountRouter__factory.js +0 -78
- package/dist/factories/interfaces/IInterchainAccountRouter__factory.js.map +0 -1
- package/dist/factories/interfaces/IInterchainGasPaymaster__factory.d.ts +0 -19
- package/dist/factories/interfaces/IInterchainGasPaymaster__factory.d.ts.map +0 -1
- package/dist/factories/interfaces/IInterchainGasPaymaster__factory.js +0 -36
- package/dist/factories/interfaces/IInterchainGasPaymaster__factory.js.map +0 -1
- package/dist/factories/interfaces/IInterchainQueryRouter__factory.d.ts +0 -33
- package/dist/factories/interfaces/IInterchainQueryRouter__factory.d.ts.map +0 -1
- package/dist/factories/interfaces/IInterchainQueryRouter__factory.js +0 -100
- package/dist/factories/interfaces/IInterchainQueryRouter__factory.js.map +0 -1
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule__factory.d.ts +0 -23
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule__factory.d.ts.map +0 -1
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule__factory.js +0 -42
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule__factory.js.map +0 -1
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule__factory.d.ts +0 -19
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule__factory.d.ts.map +0 -1
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule__factory.js +0 -31
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule__factory.js.map +0 -1
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/index.d.ts +0 -3
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/index.d.ts.map +0 -1
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/index.js +0 -11
- package/dist/factories/interfaces/IInterchainSecurityModule.sol/index.js.map +0 -1
- package/dist/factories/interfaces/IMailbox__factory.d.ts +0 -23
- package/dist/factories/interfaces/IMailbox__factory.d.ts.map +0 -1
- package/dist/factories/interfaces/IMailbox__factory.js +0 -122
- package/dist/factories/interfaces/IMailbox__factory.js.map +0 -1
- package/dist/factories/interfaces/IMessageRecipient__factory.d.ts +0 -19
- package/dist/factories/interfaces/IMessageRecipient__factory.d.ts.map +0 -1
- package/dist/factories/interfaces/IMessageRecipient__factory.js +0 -41
- package/dist/factories/interfaces/IMessageRecipient__factory.js.map +0 -1
- package/dist/factories/interfaces/IMultisigIsm__factory.d.ts +0 -23
- package/dist/factories/interfaces/IMultisigIsm__factory.d.ts.map +0 -1
- package/dist/factories/interfaces/IMultisigIsm__factory.js +0 -104
- package/dist/factories/interfaces/IMultisigIsm__factory.js.map +0 -1
- package/dist/factories/interfaces/index.d.ts +0 -8
- package/dist/factories/interfaces/index.d.ts.map +0 -1
- package/dist/factories/interfaces/index.js +0 -43
- package/dist/factories/interfaces/index.js.map +0 -1
- package/dist/index.d.ts +0 -134
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -156
- package/dist/index.js.map +0 -1
- package/dist/interfaces/IInterchainAccountRouter.d.ts +0 -67
- package/dist/interfaces/IInterchainAccountRouter.d.ts.map +0 -1
- package/dist/interfaces/IInterchainAccountRouter.js +0 -4
- package/dist/interfaces/IInterchainAccountRouter.js.map +0 -1
- package/dist/interfaces/IInterchainGasPaymaster.d.ts +0 -51
- package/dist/interfaces/IInterchainGasPaymaster.d.ts.map +0 -1
- package/dist/interfaces/IInterchainGasPaymaster.js +0 -4
- package/dist/interfaces/IInterchainGasPaymaster.js.map +0 -1
- package/dist/interfaces/IInterchainQueryRouter.d.ts +0 -75
- package/dist/interfaces/IInterchainQueryRouter.d.ts.map +0 -1
- package/dist/interfaces/IInterchainQueryRouter.js +0 -4
- package/dist/interfaces/IInterchainQueryRouter.js.map +0 -1
- package/dist/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule.d.ts +0 -51
- package/dist/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule.d.ts.map +0 -1
- package/dist/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule.js +0 -4
- package/dist/interfaces/IInterchainSecurityModule.sol/IInterchainSecurityModule.js.map +0 -1
- package/dist/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule.d.ts +0 -43
- package/dist/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule.d.ts.map +0 -1
- package/dist/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule.js +0 -4
- package/dist/interfaces/IInterchainSecurityModule.sol/ISpecifiesInterchainSecurityModule.js.map +0 -1
- package/dist/interfaces/IInterchainSecurityModule.sol/index.d.ts +0 -3
- package/dist/interfaces/IInterchainSecurityModule.sol/index.d.ts.map +0 -1
- package/dist/interfaces/IInterchainSecurityModule.sol/index.js +0 -3
- package/dist/interfaces/IInterchainSecurityModule.sol/index.js.map +0 -1
- package/dist/interfaces/IMailbox.d.ts +0 -99
- package/dist/interfaces/IMailbox.d.ts.map +0 -1
- package/dist/interfaces/IMailbox.js +0 -4
- package/dist/interfaces/IMailbox.js.map +0 -1
- package/dist/interfaces/IMessageRecipient.d.ts +0 -51
- package/dist/interfaces/IMessageRecipient.d.ts.map +0 -1
- package/dist/interfaces/IMessageRecipient.js +0 -4
- package/dist/interfaces/IMessageRecipient.js.map +0 -1
- package/dist/interfaces/IMultisigIsm.d.ts +0 -75
- package/dist/interfaces/IMultisigIsm.d.ts.map +0 -1
- package/dist/interfaces/IMultisigIsm.js +0 -4
- package/dist/interfaces/IMultisigIsm.js.map +0 -1
- package/dist/interfaces/index.d.ts +0 -9
- package/dist/interfaces/index.d.ts.map +0 -1
- package/dist/interfaces/index.js +0 -4
- package/dist/interfaces/index.js.map +0 -1
|
@@ -26,16 +26,16 @@ contract InterchainAccountRouter is Router, IInterchainAccountRouter {
|
|
|
26
26
|
);
|
|
27
27
|
|
|
28
28
|
function initialize(
|
|
29
|
-
address _owner,
|
|
30
29
|
address _mailbox,
|
|
31
|
-
address _interchainGasPaymaster
|
|
30
|
+
address _interchainGasPaymaster,
|
|
31
|
+
address _interchainSecurityModule
|
|
32
32
|
) public initializer {
|
|
33
|
-
// Transfer ownership of the contract to
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
// Transfer ownership of the contract to `msg.sender`
|
|
34
|
+
__HyperlaneConnectionClient_initialize(
|
|
35
|
+
_mailbox,
|
|
36
|
+
_interchainGasPaymaster,
|
|
37
|
+
_interchainSecurityModule
|
|
38
|
+
);
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
function dispatch(uint32 _destinationDomain, Call[] calldata calls)
|
|
@@ -45,6 +45,16 @@ contract InterchainAccountRouter is Router, IInterchainAccountRouter {
|
|
|
45
45
|
return _dispatch(_destinationDomain, abi.encode(msg.sender, calls));
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
+
function dispatch(
|
|
49
|
+
uint32 _destinationDomain,
|
|
50
|
+
address target,
|
|
51
|
+
bytes calldata data
|
|
52
|
+
) external returns (bytes32) {
|
|
53
|
+
Call[] memory calls = new Call[](1);
|
|
54
|
+
calls[0] = Call({to: target, data: data});
|
|
55
|
+
return _dispatch(_destinationDomain, abi.encode(msg.sender, calls));
|
|
56
|
+
}
|
|
57
|
+
|
|
48
58
|
function getInterchainAccount(uint32 _origin, address _sender)
|
|
49
59
|
public
|
|
50
60
|
view
|
|
@@ -32,16 +32,36 @@ contract InterchainQueryRouter is
|
|
|
32
32
|
);
|
|
33
33
|
|
|
34
34
|
function initialize(
|
|
35
|
-
address _owner,
|
|
36
35
|
address _mailbox,
|
|
37
|
-
address _interchainGasPaymaster
|
|
36
|
+
address _interchainGasPaymaster,
|
|
37
|
+
address _interchainSecurityModule
|
|
38
38
|
) public initializer {
|
|
39
|
-
// Transfer ownership of the contract to
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
// Transfer ownership of the contract to `msg.sender`
|
|
40
|
+
__HyperlaneConnectionClient_initialize(
|
|
41
|
+
_mailbox,
|
|
42
|
+
_interchainGasPaymaster,
|
|
43
|
+
_interchainSecurityModule
|
|
44
|
+
);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* @param _destinationDomain Domain of destination chain
|
|
49
|
+
* @param target The address of the contract to query on destination chain.
|
|
50
|
+
* @param queryData The calldata of the view call to make on the destination chain.
|
|
51
|
+
* @param callback Callback function selector on `msg.sender` and optionally abi-encoded prefix arguments.
|
|
52
|
+
*/
|
|
53
|
+
function query(
|
|
54
|
+
uint32 _destinationDomain,
|
|
55
|
+
address target,
|
|
56
|
+
bytes calldata queryData,
|
|
57
|
+
bytes calldata callback
|
|
58
|
+
) external returns (bytes32 messageId) {
|
|
59
|
+
// TODO: fix this ugly arrayification
|
|
60
|
+
Call[] memory calls = new Call[](1);
|
|
61
|
+
calls[0] = Call({to: target, data: queryData});
|
|
62
|
+
bytes[] memory callbacks = new bytes[](1);
|
|
63
|
+
callbacks[0] = callback;
|
|
64
|
+
messageId = query(_destinationDomain, calls, callbacks);
|
|
45
65
|
}
|
|
46
66
|
|
|
47
67
|
/**
|
|
@@ -3,32 +3,33 @@ pragma solidity ^0.8.13;
|
|
|
3
3
|
|
|
4
4
|
import {Router} from "../../Router.sol";
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import {ILiquidityLayerRouter} from "../../../interfaces/ILiquidityLayerRouter.sol";
|
|
7
7
|
import {ICircleBridge} from "./interfaces/circle/ICircleBridge.sol";
|
|
8
8
|
import {ICircleMessageTransmitter} from "./interfaces/circle/ICircleMessageTransmitter.sol";
|
|
9
9
|
import {ILiquidityLayerAdapter} from "./interfaces/ILiquidityLayerAdapter.sol";
|
|
10
|
-
import {ILiquidityLayerMessageRecipient} from "
|
|
10
|
+
import {ILiquidityLayerMessageRecipient} from "../../../interfaces/ILiquidityLayerMessageRecipient.sol";
|
|
11
11
|
|
|
12
12
|
import {TypeCasts} from "../../libs/TypeCasts.sol";
|
|
13
13
|
|
|
14
14
|
import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
|
|
15
15
|
|
|
16
|
-
contract LiquidityLayerRouter is Router {
|
|
16
|
+
contract LiquidityLayerRouter is Router, ILiquidityLayerRouter {
|
|
17
17
|
// Token bridge => adapter address
|
|
18
18
|
mapping(string => address) public liquidityLayerAdapters;
|
|
19
19
|
|
|
20
20
|
event LiquidityLayerAdapterSet(string indexed bridge, address adapter);
|
|
21
21
|
|
|
22
22
|
function initialize(
|
|
23
|
-
address _owner,
|
|
24
23
|
address _mailbox,
|
|
25
|
-
address _interchainGasPaymaster
|
|
24
|
+
address _interchainGasPaymaster,
|
|
25
|
+
address _interchainSecurityModule
|
|
26
26
|
) public initializer {
|
|
27
|
-
// Transfer ownership of the contract to
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
// Transfer ownership of the contract to `msg.sender`
|
|
28
|
+
__HyperlaneConnectionClient_initialize(
|
|
29
|
+
_mailbox,
|
|
30
|
+
_interchainGasPaymaster,
|
|
31
|
+
_interchainSecurityModule
|
|
32
|
+
);
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
function dispatchWithTokens(
|
|
@@ -38,7 +39,7 @@ contract LiquidityLayerRouter is Router {
|
|
|
38
39
|
address _token,
|
|
39
40
|
uint256 _amount,
|
|
40
41
|
string calldata _bridge
|
|
41
|
-
) external payable {
|
|
42
|
+
) external payable returns (bytes32) {
|
|
42
43
|
ILiquidityLayerAdapter _adapter = _getAdapter(_bridge);
|
|
43
44
|
|
|
44
45
|
// Transfer the tokens to the adapter
|
|
@@ -70,7 +71,14 @@ contract LiquidityLayerRouter is Router {
|
|
|
70
71
|
);
|
|
71
72
|
|
|
72
73
|
// Dispatch the _messageWithMetadata to the destination's LiquidityLayerRouter.
|
|
73
|
-
|
|
74
|
+
return
|
|
75
|
+
_dispatchWithGas(
|
|
76
|
+
_destinationDomain,
|
|
77
|
+
_messageWithMetadata,
|
|
78
|
+
0, // TODO eventually accommodate gas amounts
|
|
79
|
+
msg.value,
|
|
80
|
+
msg.sender
|
|
81
|
+
);
|
|
74
82
|
}
|
|
75
83
|
|
|
76
84
|
// Handles a message from an enrolled remote LiquidityLayerRouter
|
|
@@ -74,9 +74,6 @@ contract CircleBridgeAdapter is ILiquidityLayerAdapter, Router {
|
|
|
74
74
|
// Transfer ownership of the contract to deployer
|
|
75
75
|
_transferOwnership(_owner);
|
|
76
76
|
|
|
77
|
-
// Set the addresses for the IGP to address(0) - it's not used.
|
|
78
|
-
_setInterchainGasPaymaster(address(0));
|
|
79
|
-
|
|
80
77
|
circleBridge = ICircleBridge(_circleBridge);
|
|
81
78
|
circleMessageTransmitter = ICircleMessageTransmitter(
|
|
82
79
|
_circleMessageTransmitter
|
|
@@ -3,6 +3,8 @@ pragma solidity ^0.8.13;
|
|
|
3
3
|
|
|
4
4
|
import "./MockMailbox.sol";
|
|
5
5
|
import "../middleware/InterchainQueryRouter.sol";
|
|
6
|
+
import "../InterchainGasPaymaster.sol";
|
|
7
|
+
import "../test/TestIsm.sol";
|
|
6
8
|
|
|
7
9
|
import {TypeCasts} from "../libs/TypeCasts.sol";
|
|
8
10
|
|
|
@@ -11,6 +13,8 @@ contract MockHyperlaneEnvironment {
|
|
|
11
13
|
uint32 destinationDomain;
|
|
12
14
|
|
|
13
15
|
mapping(uint32 => MockMailbox) public mailboxes;
|
|
16
|
+
mapping(uint32 => InterchainGasPaymaster) public igps;
|
|
17
|
+
mapping(uint32 => IInterchainSecurityModule) public isms;
|
|
14
18
|
mapping(uint32 => InterchainQueryRouter) public queryRouters;
|
|
15
19
|
|
|
16
20
|
constructor(uint32 _originDomain, uint32 _destinationDomain) {
|
|
@@ -20,6 +24,15 @@ contract MockHyperlaneEnvironment {
|
|
|
20
24
|
MockMailbox originMailbox = new MockMailbox(_originDomain);
|
|
21
25
|
MockMailbox destinationMailbox = new MockMailbox(_destinationDomain);
|
|
22
26
|
|
|
27
|
+
originMailbox.addRemoteMailbox(_destinationDomain, destinationMailbox);
|
|
28
|
+
destinationMailbox.addRemoteMailbox(_originDomain, originMailbox);
|
|
29
|
+
|
|
30
|
+
igps[originDomain] = new InterchainGasPaymaster();
|
|
31
|
+
igps[destinationDomain] = new InterchainGasPaymaster();
|
|
32
|
+
|
|
33
|
+
isms[originDomain] = new TestIsm();
|
|
34
|
+
isms[destinationDomain] = new TestIsm();
|
|
35
|
+
|
|
23
36
|
mailboxes[_originDomain] = originMailbox;
|
|
24
37
|
mailboxes[_destinationDomain] = destinationMailbox;
|
|
25
38
|
|
|
@@ -27,14 +40,14 @@ contract MockHyperlaneEnvironment {
|
|
|
27
40
|
InterchainQueryRouter destinationQueryRouter = new InterchainQueryRouter();
|
|
28
41
|
|
|
29
42
|
originQueryRouter.initialize(
|
|
30
|
-
address(this),
|
|
31
43
|
address(originMailbox),
|
|
32
|
-
address(
|
|
44
|
+
address(igps[originDomain]),
|
|
45
|
+
address(isms[originDomain])
|
|
33
46
|
);
|
|
34
47
|
destinationQueryRouter.initialize(
|
|
35
|
-
address(this),
|
|
36
48
|
address(destinationMailbox),
|
|
37
|
-
address(
|
|
49
|
+
address(igps[destinationDomain]),
|
|
50
|
+
address(isms[destinationDomain])
|
|
38
51
|
);
|
|
39
52
|
|
|
40
53
|
originQueryRouter.enrollRemoteRouter(
|
|
@@ -38,10 +38,24 @@ contract MockInterchainAccountRouter is IInterchainAccountRouter {
|
|
|
38
38
|
originDomain = _originDomain;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
function dispatch(uint32, Call[] calldata calls)
|
|
42
|
-
|
|
41
|
+
function dispatch(uint32 _destinationDomain, Call[] calldata calls)
|
|
42
|
+
public
|
|
43
43
|
returns (bytes32)
|
|
44
44
|
{
|
|
45
|
+
return _dispatch(_destinationDomain, calls);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function dispatch(
|
|
49
|
+
uint32 _destinationDomain,
|
|
50
|
+
address target,
|
|
51
|
+
bytes calldata data
|
|
52
|
+
) external returns (bytes32) {
|
|
53
|
+
Call[] memory calls = new Call[](1);
|
|
54
|
+
calls[0] = Call({to: target, data: data});
|
|
55
|
+
return _dispatch(_destinationDomain, calls);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
function _dispatch(uint32, Call[] memory calls) internal returns (bytes32) {
|
|
45
59
|
pendingCalls[totalCalls] = PendingCall(
|
|
46
60
|
originDomain,
|
|
47
61
|
msg.sender,
|
|
@@ -4,8 +4,8 @@ import {HyperlaneConnectionClient} from "../HyperlaneConnectionClient.sol";
|
|
|
4
4
|
import {IMailbox} from "../../interfaces/IMailbox.sol";
|
|
5
5
|
|
|
6
6
|
contract TestHyperlaneConnectionClient is HyperlaneConnectionClient {
|
|
7
|
-
function initialize(address
|
|
8
|
-
__HyperlaneConnectionClient_initialize(
|
|
7
|
+
function initialize(address _mailbox) external initializer {
|
|
8
|
+
__HyperlaneConnectionClient_initialize(_mailbox);
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
function localDomain() external view returns (uint32) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
|
2
2
|
pragma solidity ^0.8.13;
|
|
3
3
|
|
|
4
|
-
import {ILiquidityLayerMessageRecipient} from "
|
|
4
|
+
import {ILiquidityLayerMessageRecipient} from "../../interfaces/ILiquidityLayerMessageRecipient.sol";
|
|
5
5
|
|
|
6
6
|
contract TestLiquidityLayerMessageRecipient is ILiquidityLayerMessageRecipient {
|
|
7
7
|
event HandledWithTokens(
|
|
@@ -6,8 +6,8 @@ import "../Router.sol";
|
|
|
6
6
|
contract TestRouter is Router {
|
|
7
7
|
event InitializeOverload();
|
|
8
8
|
|
|
9
|
-
function initialize(address
|
|
10
|
-
__Router_initialize(
|
|
9
|
+
function initialize(address _mailbox) external initializer {
|
|
10
|
+
__Router_initialize(_mailbox);
|
|
11
11
|
emit InitializeOverload();
|
|
12
12
|
}
|
|
13
13
|
|
|
@@ -38,10 +38,18 @@ contract TestRouter is Router {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
function dispatchWithGas(
|
|
41
|
-
uint32
|
|
42
|
-
bytes memory
|
|
43
|
-
uint256
|
|
41
|
+
uint32 _destinationDomain,
|
|
42
|
+
bytes memory _messageBody,
|
|
43
|
+
uint256 _gasAmount,
|
|
44
|
+
uint256 _gasPayment,
|
|
45
|
+
address _gasPaymentRefundAddress
|
|
44
46
|
) external payable {
|
|
45
|
-
_dispatchWithGas(
|
|
47
|
+
_dispatchWithGas(
|
|
48
|
+
_destinationDomain,
|
|
49
|
+
_messageBody,
|
|
50
|
+
_gasAmount,
|
|
51
|
+
_gasPayment,
|
|
52
|
+
_gasPaymentRefundAddress
|
|
53
|
+
);
|
|
46
54
|
}
|
|
47
55
|
}
|
|
@@ -10,15 +10,17 @@ import {IMailbox} from "../../interfaces/IMailbox.sol";
|
|
|
10
10
|
contract TestSendReceiver is IMessageRecipient {
|
|
11
11
|
using TypeCasts for address;
|
|
12
12
|
|
|
13
|
+
uint256 public constant HANDLE_GAS_AMOUNT = 50_000;
|
|
14
|
+
|
|
13
15
|
event Handled(bytes32 blockHash);
|
|
14
16
|
|
|
15
17
|
function dispatchToSelf(
|
|
16
|
-
IMailbox
|
|
18
|
+
IMailbox _mailbox,
|
|
17
19
|
IInterchainGasPaymaster _paymaster,
|
|
18
20
|
uint32 _destinationDomain,
|
|
19
21
|
bytes calldata _messageBody
|
|
20
22
|
) external payable {
|
|
21
|
-
bytes32 _messageId =
|
|
23
|
+
bytes32 _messageId = _mailbox.dispatch(
|
|
22
24
|
_destinationDomain,
|
|
23
25
|
address(this).addressToBytes32(),
|
|
24
26
|
_messageBody
|
|
@@ -27,15 +29,28 @@ contract TestSendReceiver is IMessageRecipient {
|
|
|
27
29
|
uint256 _value = msg.value;
|
|
28
30
|
if (_blockHashNum % 5 == 0) {
|
|
29
31
|
// Pay in two separate calls, resulting in 2 distinct events
|
|
30
|
-
uint256
|
|
31
|
-
|
|
32
|
-
_paymaster.
|
|
32
|
+
uint256 _halfPayment = _value / 2;
|
|
33
|
+
uint256 _halfGasAmount = HANDLE_GAS_AMOUNT / 2;
|
|
34
|
+
_paymaster.payForGas{value: _halfPayment}(
|
|
35
|
+
_messageId,
|
|
36
|
+
_destinationDomain,
|
|
37
|
+
_halfGasAmount,
|
|
38
|
+
msg.sender
|
|
39
|
+
);
|
|
40
|
+
_paymaster.payForGas{value: _value - _halfPayment}(
|
|
33
41
|
_messageId,
|
|
34
|
-
_destinationDomain
|
|
42
|
+
_destinationDomain,
|
|
43
|
+
HANDLE_GAS_AMOUNT - _halfGasAmount,
|
|
44
|
+
msg.sender
|
|
35
45
|
);
|
|
36
46
|
} else {
|
|
37
47
|
// Pay the entire msg.value in one call
|
|
38
|
-
_paymaster.
|
|
48
|
+
_paymaster.payForGas{value: _value}(
|
|
49
|
+
_messageId,
|
|
50
|
+
_destinationDomain,
|
|
51
|
+
HANDLE_GAS_AMOUNT,
|
|
52
|
+
msg.sender
|
|
53
|
+
);
|
|
39
54
|
}
|
|
40
55
|
}
|
|
41
56
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// SPDX-License-Identifier: MIT OR Apache-2.0
|
|
2
2
|
pragma solidity >=0.8.0;
|
|
3
3
|
|
|
4
|
-
import {ILiquidityLayerMessageRecipient} from "
|
|
4
|
+
import {ILiquidityLayerMessageRecipient} from "../../interfaces/ILiquidityLayerMessageRecipient.sol";
|
|
5
5
|
|
|
6
6
|
contract TestTokenRecipient is ILiquidityLayerMessageRecipient {
|
|
7
7
|
bytes32 public lastSender;
|
|
@@ -8,6 +8,12 @@ interface IInterchainAccountRouter {
|
|
|
8
8
|
external
|
|
9
9
|
returns (bytes32);
|
|
10
10
|
|
|
11
|
+
function dispatch(
|
|
12
|
+
uint32 _destinationDomain,
|
|
13
|
+
address target,
|
|
14
|
+
bytes calldata data
|
|
15
|
+
) external returns (bytes32);
|
|
16
|
+
|
|
11
17
|
function getInterchainAccount(uint32 _originDomain, address _sender)
|
|
12
18
|
external
|
|
13
19
|
view
|
|
@@ -7,7 +7,10 @@ pragma solidity >=0.6.11;
|
|
|
7
7
|
* messages to destination chains.
|
|
8
8
|
*/
|
|
9
9
|
interface IInterchainGasPaymaster {
|
|
10
|
-
function
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
function payForGas(
|
|
11
|
+
bytes32 _messageId,
|
|
12
|
+
uint32 _destinationDomain,
|
|
13
|
+
uint256 _gas,
|
|
14
|
+
address _refundAddress
|
|
15
|
+
) external payable;
|
|
13
16
|
}
|
|
@@ -4,6 +4,13 @@ pragma solidity >=0.6.11;
|
|
|
4
4
|
import {Call} from "../contracts/Call.sol";
|
|
5
5
|
|
|
6
6
|
interface IInterchainQueryRouter {
|
|
7
|
+
function query(
|
|
8
|
+
uint32 _destinationDomain,
|
|
9
|
+
address target,
|
|
10
|
+
bytes calldata queryData,
|
|
11
|
+
bytes calldata callback
|
|
12
|
+
) external returns (bytes32);
|
|
13
|
+
|
|
7
14
|
function query(
|
|
8
15
|
uint32 _destinationDomain,
|
|
9
16
|
Call calldata call,
|
|
File without changes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT OR Apache-2.0
|
|
2
|
+
pragma solidity >=0.6.11;
|
|
3
|
+
|
|
4
|
+
import {Call} from "../contracts/Call.sol";
|
|
5
|
+
|
|
6
|
+
interface ILiquidityLayerRouter {
|
|
7
|
+
function dispatchWithTokens(
|
|
8
|
+
uint32 _destinationDomain,
|
|
9
|
+
bytes32 _recipientAddress,
|
|
10
|
+
bytes calldata _messageBody,
|
|
11
|
+
address _token,
|
|
12
|
+
uint256 _amount,
|
|
13
|
+
string calldata _bridge
|
|
14
|
+
) external payable returns (bytes32);
|
|
15
|
+
}
|
|
@@ -9,7 +9,7 @@ interface IMultisigIsm is IInterchainSecurityModule {
|
|
|
9
9
|
view
|
|
10
10
|
returns (bool);
|
|
11
11
|
|
|
12
|
-
function threshold(uint32 _domain) external view returns (
|
|
12
|
+
function threshold(uint32 _domain) external view returns (uint8);
|
|
13
13
|
|
|
14
14
|
function validators(uint32 _domain)
|
|
15
15
|
external
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hyperlane-xyz/core",
|
|
3
3
|
"description": "Core solidity contracts for Hyperlane",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "1.0.0-beta0",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@hyperlane-xyz/utils": "0.
|
|
7
|
-
"@openzeppelin/contracts": "^4.
|
|
8
|
-
"@openzeppelin/contracts-upgradeable": "^4.
|
|
6
|
+
"@hyperlane-xyz/utils": "1.0.0-beta0",
|
|
7
|
+
"@openzeppelin/contracts": "^4.8.0",
|
|
8
|
+
"@openzeppelin/contracts-upgradeable": "^4.8.0"
|
|
9
9
|
},
|
|
10
10
|
"devDependencies": {
|
|
11
11
|
"@nomiclabs/hardhat-ethers": "^2.0.5",
|
|
@@ -47,8 +47,7 @@
|
|
|
47
47
|
"clean": "hardhat clean && rm -rf ./dist ./cache",
|
|
48
48
|
"coverage": "hardhat coverage",
|
|
49
49
|
"prettier": "prettier --write ./contracts ./interfaces ./test",
|
|
50
|
-
"test": "hardhat test"
|
|
50
|
+
"test": "hardhat test && forge test -vvv"
|
|
51
51
|
},
|
|
52
|
-
"types": "dist/index.d.ts"
|
|
53
|
-
"stableVersion": "0.5.3"
|
|
52
|
+
"types": "dist/index.d.ts"
|
|
54
53
|
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
|
|
3
|
-
pragma solidity >=0.8.0;
|
|
4
|
-
|
|
5
|
-
abstract contract MysteryMath {
|
|
6
|
-
uint256 public stateVar;
|
|
7
|
-
|
|
8
|
-
function setState(uint256 _var) external {
|
|
9
|
-
stateVar = _var;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
function getState() external view returns (uint256) {
|
|
13
|
-
return stateVar;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
function doMath(uint256 a, uint256 b)
|
|
17
|
-
external
|
|
18
|
-
pure
|
|
19
|
-
virtual
|
|
20
|
-
returns (uint256 _result);
|
|
21
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
|
|
3
|
-
pragma solidity >=0.8.0;
|
|
4
|
-
|
|
5
|
-
import "./MysteryMath.sol";
|
|
6
|
-
|
|
7
|
-
contract MysteryMathV1 is MysteryMath {
|
|
8
|
-
uint32 public immutable version;
|
|
9
|
-
|
|
10
|
-
constructor() {
|
|
11
|
-
version = 1;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
function doMath(uint256 a, uint256 b)
|
|
15
|
-
external
|
|
16
|
-
pure
|
|
17
|
-
override
|
|
18
|
-
returns (uint256 _result)
|
|
19
|
-
{
|
|
20
|
-
_result = a + b;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
|
|
3
|
-
pragma solidity >=0.8.0;
|
|
4
|
-
|
|
5
|
-
import "./MysteryMath.sol";
|
|
6
|
-
|
|
7
|
-
contract MysteryMathV2 is MysteryMath {
|
|
8
|
-
uint32 public immutable version;
|
|
9
|
-
|
|
10
|
-
constructor() {
|
|
11
|
-
version = 2;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
function doMath(uint256 a, uint256 b)
|
|
15
|
-
external
|
|
16
|
-
pure
|
|
17
|
-
override
|
|
18
|
-
returns (uint256 _result)
|
|
19
|
-
{
|
|
20
|
-
_result = a * b;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: MIT
|
|
2
|
-
pragma solidity >=0.8.0;
|
|
3
|
-
|
|
4
|
-
// ============ External Imports ============
|
|
5
|
-
import {Address} from "@openzeppelin/contracts/utils/Address.sol";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @title UpgradeBeacon
|
|
9
|
-
* @notice Stores the address of an implementation contract
|
|
10
|
-
* and allows a controller to upgrade the implementation address
|
|
11
|
-
* @dev This implementation combines the gas savings of having no function selectors
|
|
12
|
-
* found in 0age's implementation:
|
|
13
|
-
* https://github.com/dharma-eng/dharma-smart-wallet/blob/master/contracts/proxies/smart-wallet/UpgradeBeaconProxyV1.sol
|
|
14
|
-
* With the added niceties of a safety check that each implementation is a contract
|
|
15
|
-
* and an Upgrade event emitted each time the implementation is changed
|
|
16
|
-
* found in OpenZeppelin's implementation:
|
|
17
|
-
* https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/proxy/beacon/BeaconProxy.sol
|
|
18
|
-
*/
|
|
19
|
-
contract UpgradeBeacon {
|
|
20
|
-
// ============ Immutables ============
|
|
21
|
-
|
|
22
|
-
// The controller is capable of modifying the implementation address
|
|
23
|
-
address private immutable controller;
|
|
24
|
-
|
|
25
|
-
// ============ Private Storage Variables ============
|
|
26
|
-
|
|
27
|
-
// The implementation address is held in storage slot zero.
|
|
28
|
-
address private implementation;
|
|
29
|
-
|
|
30
|
-
// ============ Events ============
|
|
31
|
-
|
|
32
|
-
// Upgrade event is emitted each time the implementation address is set
|
|
33
|
-
// (including deployment)
|
|
34
|
-
event Upgrade(address indexed implementation);
|
|
35
|
-
|
|
36
|
-
// ============ Constructor ============
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
* @notice Validate the initial implementation and store it.
|
|
40
|
-
* Store the controller immutably.
|
|
41
|
-
* @param _initialImplementation Address of the initial implementation contract
|
|
42
|
-
* @param _controller Address of the controller who can upgrade the implementation
|
|
43
|
-
*/
|
|
44
|
-
constructor(address _initialImplementation, address _controller) payable {
|
|
45
|
-
_setImplementation(_initialImplementation);
|
|
46
|
-
controller = _controller;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
// ============ External Functions ============
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* @notice For all callers except the controller, return the current implementation address.
|
|
53
|
-
* If called by the Controller, update the implementation address
|
|
54
|
-
* to the address passed in the calldata.
|
|
55
|
-
* Note: this requires inline assembly because Solidity fallback functions
|
|
56
|
-
* do not natively take arguments or return values.
|
|
57
|
-
*/
|
|
58
|
-
fallback() external payable {
|
|
59
|
-
if (msg.sender != controller) {
|
|
60
|
-
// if not called by the controller,
|
|
61
|
-
// load implementation address from storage slot zero
|
|
62
|
-
// and return it.
|
|
63
|
-
assembly {
|
|
64
|
-
mstore(0, sload(0))
|
|
65
|
-
return(0, 32)
|
|
66
|
-
}
|
|
67
|
-
} else {
|
|
68
|
-
// if called by the controller,
|
|
69
|
-
// load new implementation address from the first word of the calldata
|
|
70
|
-
address _newImplementation;
|
|
71
|
-
assembly {
|
|
72
|
-
_newImplementation := calldataload(0)
|
|
73
|
-
}
|
|
74
|
-
// set the new implementation
|
|
75
|
-
_setImplementation(_newImplementation);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
// ============ Private Functions ============
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* @notice Perform checks on the new implementation address
|
|
83
|
-
* then upgrade the stored implementation.
|
|
84
|
-
* @param _newImplementation Address of the new implementation contract which will replace the old one
|
|
85
|
-
*/
|
|
86
|
-
function _setImplementation(address _newImplementation) private {
|
|
87
|
-
// Require that the new implementation is different from the current one
|
|
88
|
-
require(implementation != _newImplementation, "!upgrade");
|
|
89
|
-
// Require that the new implementation is a contract
|
|
90
|
-
require(
|
|
91
|
-
Address.isContract(_newImplementation),
|
|
92
|
-
"implementation !contract"
|
|
93
|
-
);
|
|
94
|
-
// set the new implementation
|
|
95
|
-
implementation = _newImplementation;
|
|
96
|
-
emit Upgrade(_newImplementation);
|
|
97
|
-
}
|
|
98
|
-
}
|