@hyperlane-xyz/core 5.0.0 → 5.1.1
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/AttributeCheckpointFraud.sol +140 -0
- package/contracts/CheckpointFraudProofs.sol +143 -0
- package/contracts/client/Router.sol +4 -2
- package/contracts/hooks/OPL2ToL1Hook.sol +84 -0
- package/contracts/hooks/igp/InterchainGasPaymaster.sol +8 -8
- package/contracts/hooks/routing/DomainRoutingHook.sol +8 -7
- package/contracts/interfaces/IInterchainSecurityModule.sol +4 -1
- package/contracts/interfaces/hooks/IPostDispatchHook.sol +2 -1
- package/contracts/interfaces/isms/IWeightedMultisigIsm.sol +39 -0
- package/contracts/interfaces/optimism/ICrossDomainMessenger.sol +2 -0
- package/contracts/interfaces/optimism/IOptimismPortal.sol +28 -0
- package/contracts/isms/hook/OPL2ToL1Ism.sol +109 -0
- package/contracts/isms/libs/MerkleRootMultisigIsmMetadata.sol +16 -0
- package/contracts/isms/libs/MessageIdMultisigIsmMetadata.sol +16 -0
- package/contracts/isms/multisig/AbstractMerkleRootMultisigIsm.sol +14 -9
- package/contracts/isms/multisig/AbstractMessageIdMultisigIsm.sol +13 -8
- package/contracts/isms/multisig/AbstractMultisigIsm.sol +47 -20
- package/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol +100 -0
- package/contracts/isms/multisig/StaticMultisigIsm.sol +10 -2
- package/contracts/isms/multisig/WeightedMultisigIsm.sol +67 -0
- package/contracts/isms/routing/DomainRoutingIsm.sol +4 -2
- package/contracts/libs/CheckpointLib.sol +41 -9
- package/contracts/libs/Merkle.sol +33 -3
- package/contracts/libs/OPL2ToL1Metadata.sol +62 -0
- package/contracts/libs/StaticWeightedValidatorSetFactory.sol +97 -0
- package/contracts/mock/MockArbBridge.sol +78 -0
- package/contracts/mock/MockERC4626YieldSharing.sol +80 -0
- package/contracts/mock/MockHyperlaneEnvironment.sol +2 -2
- package/contracts/mock/MockOptimism.sol +61 -0
- package/contracts/test/ERC20Test.sol +4 -0
- package/contracts/test/ERC4626/ERC4626Test.sol +1 -0
- package/contracts/token/HypNative.sol +24 -0
- package/contracts/token/extensions/HypERC4626.sol +102 -0
- package/contracts/token/extensions/HypERC4626Collateral.sol +111 -0
- package/contracts/token/extensions/{HypERC20CollateralVaultDeposit.sol → HypERC4626OwnerCollateral.sol} +3 -2
- package/contracts/token/extensions/HypNativeScaled.sol +25 -0
- package/dist/buildArtifact.js +1 -1
- package/dist/buildArtifact.json +1 -1
- package/dist/contracts/AttributeCheckpointFraud.d.ts +356 -0
- package/dist/contracts/AttributeCheckpointFraud.d.ts.map +1 -0
- package/dist/contracts/AttributeCheckpointFraud.js +2 -0
- package/dist/contracts/AttributeCheckpointFraud.js.map +1 -0
- package/dist/contracts/CheckpointFraudProofs.d.ts +200 -0
- package/dist/contracts/CheckpointFraudProofs.d.ts.map +1 -0
- package/dist/contracts/CheckpointFraudProofs.js +2 -0
- package/dist/contracts/CheckpointFraudProofs.js.map +1 -0
- package/dist/contracts/hooks/OPL2ToL1Hook.d.ts +396 -0
- package/dist/contracts/hooks/OPL2ToL1Hook.d.ts.map +1 -0
- package/dist/contracts/hooks/OPL2ToL1Hook.js +2 -0
- package/dist/contracts/hooks/OPL2ToL1Hook.js.map +1 -0
- package/dist/contracts/hooks/index.d.ts +1 -0
- package/dist/contracts/hooks/index.d.ts.map +1 -1
- package/dist/contracts/index.d.ts +2 -0
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/interfaces/isms/IWeightedMultisigIsm.sol/IStaticWeightedMultisigIsm.d.ts +142 -0
- package/dist/contracts/interfaces/isms/IWeightedMultisigIsm.sol/IStaticWeightedMultisigIsm.d.ts.map +1 -0
- package/dist/contracts/interfaces/isms/IWeightedMultisigIsm.sol/IStaticWeightedMultisigIsm.js +2 -0
- package/dist/contracts/interfaces/isms/IWeightedMultisigIsm.sol/IStaticWeightedMultisigIsm.js.map +1 -0
- package/dist/contracts/interfaces/isms/IWeightedMultisigIsm.sol/index.d.ts +2 -0
- package/dist/contracts/interfaces/isms/IWeightedMultisigIsm.sol/index.d.ts.map +1 -0
- package/dist/contracts/interfaces/isms/IWeightedMultisigIsm.sol/index.js +2 -0
- package/dist/contracts/interfaces/isms/IWeightedMultisigIsm.sol/index.js.map +1 -0
- package/dist/contracts/interfaces/isms/index.d.ts +2 -0
- package/dist/contracts/interfaces/isms/index.d.ts.map +1 -1
- package/dist/contracts/interfaces/optimism/ICrossDomainMessenger.sol/ICrossDomainMessenger.d.ts +16 -1
- package/dist/contracts/interfaces/optimism/ICrossDomainMessenger.sol/ICrossDomainMessenger.d.ts.map +1 -1
- package/dist/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL1CrossDomainMessenger.d.ts +16 -1
- package/dist/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL1CrossDomainMessenger.d.ts.map +1 -1
- package/dist/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL2CrossDomainMessenger.d.ts +16 -1
- package/dist/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL2CrossDomainMessenger.d.ts.map +1 -1
- package/dist/contracts/interfaces/optimism/IOptimismPortal.d.ts +91 -0
- package/dist/contracts/interfaces/optimism/IOptimismPortal.d.ts.map +1 -0
- package/dist/contracts/interfaces/optimism/IOptimismPortal.js +2 -0
- package/dist/contracts/interfaces/optimism/IOptimismPortal.js.map +1 -0
- package/dist/contracts/interfaces/optimism/index.d.ts +1 -0
- package/dist/contracts/interfaces/optimism/index.d.ts.map +1 -1
- package/dist/contracts/isms/hook/OPL2ToL1Ism.d.ts +273 -0
- package/dist/contracts/isms/hook/OPL2ToL1Ism.d.ts.map +1 -0
- package/dist/contracts/isms/hook/OPL2ToL1Ism.js +2 -0
- package/dist/contracts/isms/hook/OPL2ToL1Ism.js.map +1 -0
- package/dist/contracts/isms/hook/index.d.ts +1 -0
- package/dist/contracts/isms/hook/index.d.ts.map +1 -1
- package/dist/contracts/isms/multisig/AbstractMerkleRootMultisigIsm.d.ts +16 -46
- package/dist/contracts/isms/multisig/AbstractMerkleRootMultisigIsm.d.ts.map +1 -1
- package/dist/contracts/isms/multisig/AbstractMessageIdMultisigIsm.d.ts +16 -46
- package/dist/contracts/isms/multisig/AbstractMessageIdMultisigIsm.d.ts.map +1 -1
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisig.d.ts +50 -0
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisig.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisig.js +2 -0
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisig.js.map +1 -0
- package/dist/contracts/isms/multisig/{AbstractMultisigIsm.d.ts → AbstractMultisigIsm.sol/AbstractMultisigIsm.d.ts} +17 -17
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisigIsm.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisigIsm.js.map +1 -0
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/index.d.ts +3 -0
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/index.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/index.js +2 -0
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.sol/index.js.map +1 -0
- package/dist/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/AbstractStaticWeightedMultisigIsm.d.ts +138 -0
- package/dist/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/AbstractStaticWeightedMultisigIsm.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/AbstractStaticWeightedMultisigIsm.js +2 -0
- package/dist/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/AbstractStaticWeightedMultisigIsm.js.map +1 -0
- package/dist/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/index.d.ts +2 -0
- package/dist/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/index.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/index.js +2 -0
- package/dist/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/index.js.map +1 -0
- package/dist/contracts/isms/multisig/StaticMultisigIsm.sol/AbstractMetaProxyMultisigIsm.d.ts +16 -16
- package/dist/contracts/isms/multisig/StaticMultisigIsm.sol/AbstractMetaProxyMultisigIsm.d.ts.map +1 -1
- package/dist/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm.d.ts +16 -1
- package/dist/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm.d.ts.map +1 -1
- package/dist/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm.d.ts +16 -1
- package/dist/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm.d.ts.map +1 -1
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/AbstractMetaProxyWeightedMultisigIsm.d.ts +138 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/AbstractMetaProxyWeightedMultisigIsm.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/AbstractMetaProxyWeightedMultisigIsm.js +2 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/AbstractMetaProxyWeightedMultisigIsm.js.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm.d.ts +138 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm.js +2 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm.js.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory.d.ts +106 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory.js +2 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory.js.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm.d.ts +138 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm.js +2 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm.js.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory.d.ts +106 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory.js +2 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory.js.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/index.d.ts +6 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/index.d.ts.map +1 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/index.js +2 -0
- package/dist/contracts/isms/multisig/WeightedMultisigIsm.sol/index.js.map +1 -0
- package/dist/contracts/isms/multisig/index.d.ts +6 -1
- package/dist/contracts/isms/multisig/index.d.ts.map +1 -1
- package/dist/contracts/libs/StaticWeightedValidatorSetFactory.d.ts +106 -0
- package/dist/contracts/libs/StaticWeightedValidatorSetFactory.d.ts.map +1 -0
- package/dist/contracts/libs/StaticWeightedValidatorSetFactory.js +2 -0
- package/dist/contracts/libs/StaticWeightedValidatorSetFactory.js.map +1 -0
- package/dist/contracts/libs/index.d.ts +1 -0
- package/dist/contracts/libs/index.d.ts.map +1 -1
- package/dist/contracts/mock/MockArbBridge.sol/MockArbBridge.d.ts +162 -0
- package/dist/contracts/mock/MockArbBridge.sol/MockArbBridge.d.ts.map +1 -0
- package/dist/contracts/mock/MockArbBridge.sol/MockArbBridge.js +2 -0
- package/dist/contracts/mock/MockArbBridge.sol/MockArbBridge.js.map +1 -0
- package/dist/contracts/mock/MockArbBridge.sol/MockArbSys.d.ts +96 -0
- package/dist/contracts/mock/MockArbBridge.sol/MockArbSys.d.ts.map +1 -0
- package/dist/contracts/mock/MockArbBridge.sol/MockArbSys.js +2 -0
- package/dist/contracts/mock/MockArbBridge.sol/MockArbSys.js.map +1 -0
- package/dist/contracts/mock/MockArbBridge.sol/index.d.ts +3 -0
- package/dist/contracts/mock/MockArbBridge.sol/index.d.ts.map +1 -0
- package/dist/contracts/mock/MockArbBridge.sol/index.js +2 -0
- package/dist/contracts/mock/MockArbBridge.sol/index.js.map +1 -0
- package/dist/contracts/mock/MockERC4626YieldSharing.d.ts +853 -0
- package/dist/contracts/mock/MockERC4626YieldSharing.d.ts.map +1 -0
- package/dist/contracts/mock/MockERC4626YieldSharing.js +2 -0
- package/dist/contracts/mock/MockERC4626YieldSharing.js.map +1 -0
- package/dist/contracts/mock/MockHyperlaneEnvironment.d.ts +31 -1
- package/dist/contracts/mock/MockHyperlaneEnvironment.d.ts.map +1 -1
- package/dist/contracts/mock/MockOptimism.sol/MockOptimismMessenger.d.ts +218 -0
- package/dist/contracts/mock/MockOptimism.sol/MockOptimismMessenger.d.ts.map +1 -0
- package/dist/contracts/mock/MockOptimism.sol/MockOptimismMessenger.js +2 -0
- package/dist/contracts/mock/MockOptimism.sol/MockOptimismMessenger.js.map +1 -0
- package/dist/contracts/mock/MockOptimism.sol/MockOptimismPortal.d.ts +91 -0
- package/dist/contracts/mock/MockOptimism.sol/MockOptimismPortal.d.ts.map +1 -0
- package/dist/contracts/mock/MockOptimism.sol/MockOptimismPortal.js +2 -0
- package/dist/contracts/mock/MockOptimism.sol/MockOptimismPortal.js.map +1 -0
- package/dist/contracts/mock/MockOptimism.sol/index.d.ts +3 -0
- package/dist/contracts/mock/MockOptimism.sol/index.d.ts.map +1 -0
- package/dist/contracts/mock/MockOptimism.sol/index.js +2 -0
- package/dist/contracts/mock/MockOptimism.sol/index.js.map +1 -0
- package/dist/contracts/mock/index.d.ts +5 -0
- package/dist/contracts/mock/index.d.ts.map +1 -1
- package/dist/contracts/test/ERC20Test.sol/ERC20Test.d.ts +32 -1
- package/dist/contracts/test/ERC20Test.sol/ERC20Test.d.ts.map +1 -1
- package/dist/contracts/test/ERC20Test.sol/FiatTokenTest.d.ts +32 -1
- package/dist/contracts/test/ERC20Test.sol/FiatTokenTest.d.ts.map +1 -1
- package/dist/contracts/test/ERC20Test.sol/XERC20Test.d.ts +32 -1
- package/dist/contracts/test/ERC20Test.sol/XERC20Test.d.ts.map +1 -1
- package/dist/contracts/token/HypNative.d.ts +5 -5
- package/dist/contracts/token/HypNative.d.ts.map +1 -1
- package/dist/contracts/token/extensions/HypERC4626.d.ts +979 -0
- package/dist/contracts/token/extensions/HypERC4626.d.ts.map +1 -0
- package/dist/contracts/token/extensions/HypERC4626.js +2 -0
- package/dist/contracts/token/extensions/HypERC4626.js.map +1 -0
- package/dist/contracts/token/extensions/HypERC4626Collateral.d.ts +718 -0
- package/dist/contracts/token/extensions/HypERC4626Collateral.d.ts.map +1 -0
- package/dist/contracts/token/extensions/HypERC4626Collateral.js +2 -0
- package/dist/contracts/token/extensions/HypERC4626Collateral.js.map +1 -0
- package/dist/contracts/token/extensions/{HypERC20CollateralVaultDeposit.d.ts → HypERC4626OwnerCollateral.d.ts} +4 -4
- package/dist/contracts/token/extensions/HypERC4626OwnerCollateral.d.ts.map +1 -0
- package/dist/contracts/token/extensions/HypERC4626OwnerCollateral.js +2 -0
- package/dist/contracts/token/extensions/HypERC4626OwnerCollateral.js.map +1 -0
- package/dist/contracts/token/extensions/HypNativeScaled.d.ts +5 -5
- package/dist/contracts/token/extensions/HypNativeScaled.d.ts.map +1 -1
- package/dist/contracts/token/extensions/index.d.ts +3 -1
- package/dist/contracts/token/extensions/index.d.ts.map +1 -1
- package/dist/factories/contracts/AttributeCheckpointFraud__factory.d.ts +296 -0
- package/dist/factories/contracts/AttributeCheckpointFraud__factory.d.ts.map +1 -0
- package/dist/factories/contracts/AttributeCheckpointFraud__factory.js +394 -0
- package/dist/factories/contracts/AttributeCheckpointFraud__factory.js.map +1 -0
- package/dist/factories/contracts/CheckpointFraudProofs__factory.d.ts +239 -0
- package/dist/factories/contracts/CheckpointFraudProofs__factory.d.ts.map +1 -0
- package/dist/factories/contracts/CheckpointFraudProofs__factory.js +325 -0
- package/dist/factories/contracts/CheckpointFraudProofs__factory.js.map +1 -0
- package/dist/factories/contracts/Mailbox__factory.d.ts +1 -1
- package/dist/factories/contracts/Mailbox__factory.js +1 -1
- package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/ArbL2ToL1Hook__factory.js +1 -1
- package/dist/factories/contracts/hooks/MerkleTreeHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/MerkleTreeHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.d.ts +252 -0
- package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.d.ts.map +1 -0
- package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.js +339 -0
- package/dist/factories/contracts/hooks/OPL2ToL1Hook__factory.js.map +1 -0
- package/dist/factories/contracts/hooks/OPStackHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/OPStackHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/PausableHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/PausableHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/PolygonPosHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/PolygonPosHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/ProtocolFee__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/ProtocolFee__factory.js +1 -1
- package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/aggregation/ERC5164Hook__factory.js +1 -1
- package/dist/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/aggregation/StaticAggregationHookFactory__factory.js +1 -1
- package/dist/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/aggregation/StaticAggregationHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.d.ts.map +1 -1
- package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.js +1 -1
- package/dist/factories/contracts/hooks/igp/InterchainGasPaymaster__factory.js.map +1 -1
- package/dist/factories/contracts/hooks/index.d.ts +1 -0
- package/dist/factories/contracts/hooks/index.d.ts.map +1 -1
- package/dist/factories/contracts/hooks/index.js +1 -0
- package/dist/factories/contracts/hooks/index.js.map +1 -1
- package/dist/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/layer-zero/LayerZeroV1Hook__factory.js +1 -1
- package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/layer-zero/LayerZeroV2Hook__factory.js +1 -1
- package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.d.ts.map +1 -1
- package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/routing/DestinationRecipientRoutingHook__factory.js.map +1 -1
- package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.d.ts.map +1 -1
- package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/routing/DomainRoutingHook__factory.js.map +1 -1
- package/dist/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/routing/FallbackDomainRoutingHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/warp-route/RateLimitedHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/warp-route/RateLimitedHook__factory.js +1 -1
- package/dist/factories/contracts/index.d.ts +2 -0
- package/dist/factories/contracts/index.d.ts.map +1 -1
- package/dist/factories/contracts/index.js +2 -0
- package/dist/factories/contracts/index.js.map +1 -1
- package/dist/factories/contracts/interfaces/isms/IWeightedMultisigIsm.sol/IStaticWeightedMultisigIsm__factory.d.ts +64 -0
- package/dist/factories/contracts/interfaces/isms/IWeightedMultisigIsm.sol/IStaticWeightedMultisigIsm__factory.d.ts.map +1 -0
- package/dist/factories/contracts/interfaces/isms/IWeightedMultisigIsm.sol/IStaticWeightedMultisigIsm__factory.js +89 -0
- package/dist/factories/contracts/interfaces/isms/IWeightedMultisigIsm.sol/IStaticWeightedMultisigIsm__factory.js.map +1 -0
- package/dist/factories/contracts/interfaces/isms/IWeightedMultisigIsm.sol/index.d.ts +2 -0
- package/dist/factories/contracts/interfaces/isms/IWeightedMultisigIsm.sol/index.d.ts.map +1 -0
- package/dist/factories/contracts/interfaces/isms/IWeightedMultisigIsm.sol/index.js +5 -0
- package/dist/factories/contracts/interfaces/isms/IWeightedMultisigIsm.sol/index.js.map +1 -0
- package/dist/factories/contracts/interfaces/isms/index.d.ts +1 -0
- package/dist/factories/contracts/interfaces/isms/index.d.ts.map +1 -1
- package/dist/factories/contracts/interfaces/isms/index.js +1 -0
- package/dist/factories/contracts/interfaces/isms/index.js.map +1 -1
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/ICrossDomainMessenger__factory.d.ts +10 -0
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/ICrossDomainMessenger__factory.d.ts.map +1 -1
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/ICrossDomainMessenger__factory.js +13 -0
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/ICrossDomainMessenger__factory.js.map +1 -1
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL1CrossDomainMessenger__factory.d.ts +10 -0
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL1CrossDomainMessenger__factory.d.ts.map +1 -1
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL1CrossDomainMessenger__factory.js +13 -0
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL1CrossDomainMessenger__factory.js.map +1 -1
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL2CrossDomainMessenger__factory.d.ts +10 -0
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL2CrossDomainMessenger__factory.d.ts.map +1 -1
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL2CrossDomainMessenger__factory.js +13 -0
- package/dist/factories/contracts/interfaces/optimism/ICrossDomainMessenger.sol/IL2CrossDomainMessenger__factory.js.map +1 -1
- package/dist/factories/contracts/interfaces/optimism/IOptimismPortal__factory.d.ts +44 -0
- package/dist/factories/contracts/interfaces/optimism/IOptimismPortal__factory.d.ts.map +1 -0
- package/dist/factories/contracts/interfaces/optimism/IOptimismPortal__factory.js +61 -0
- package/dist/factories/contracts/interfaces/optimism/IOptimismPortal__factory.js.map +1 -0
- package/dist/factories/contracts/interfaces/optimism/index.d.ts +1 -0
- package/dist/factories/contracts/interfaces/optimism/index.d.ts.map +1 -1
- package/dist/factories/contracts/interfaces/optimism/index.js +1 -0
- package/dist/factories/contracts/interfaces/optimism/index.js.map +1 -1
- package/dist/factories/contracts/isms/NoopIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/NoopIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/PausableIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/PausableIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/TrustedRelayerIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/TrustedRelayerIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.js +1 -1
- package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js +1 -1
- package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js.map +1 -1
- package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/hook/ERC5164Ism__factory.js +1 -1
- package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.d.ts +169 -0
- package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.js +234 -0
- package/dist/factories/contracts/isms/hook/OPL2ToL1Ism__factory.js.map +1 -0
- package/dist/factories/contracts/isms/hook/OPStackIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/hook/OPStackIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/hook/PolygonPosIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/hook/index.d.ts +1 -0
- package/dist/factories/contracts/isms/hook/index.d.ts.map +1 -1
- package/dist/factories/contracts/isms/hook/index.js +1 -0
- package/dist/factories/contracts/isms/hook/index.js.map +1 -1
- package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/hook/layer-zero/LayerZeroV2Ism__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/AbstractMerkleRootMultisigIsm__factory.d.ts +4 -36
- package/dist/factories/contracts/isms/multisig/AbstractMerkleRootMultisigIsm__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/multisig/AbstractMerkleRootMultisigIsm__factory.js +4 -46
- package/dist/factories/contracts/isms/multisig/AbstractMerkleRootMultisigIsm__factory.js.map +1 -1
- package/dist/factories/contracts/isms/multisig/AbstractMessageIdMultisigIsm__factory.d.ts +4 -36
- package/dist/factories/contracts/isms/multisig/AbstractMessageIdMultisigIsm__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/multisig/AbstractMessageIdMultisigIsm__factory.js +4 -46
- package/dist/factories/contracts/isms/multisig/AbstractMessageIdMultisigIsm__factory.js.map +1 -1
- package/dist/factories/contracts/isms/multisig/{AbstractMultisigIsm__factory.d.ts → AbstractMultisigIsm.sol/AbstractMultisigIsm__factory.d.ts} +10 -6
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisigIsm__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/{AbstractMultisigIsm__factory.js → AbstractMultisigIsm.sol/AbstractMultisigIsm__factory.js} +11 -5
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisigIsm__factory.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisig__factory.d.ts +23 -0
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisig__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisig__factory.js +35 -0
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/AbstractMultisig__factory.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/index.d.ts +3 -0
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/index.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/index.js +6 -0
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm.sol/index.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/AbstractStaticWeightedMultisigIsm__factory.d.ts +88 -0
- package/dist/factories/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/AbstractStaticWeightedMultisigIsm__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/AbstractStaticWeightedMultisigIsm__factory.js +121 -0
- package/dist/factories/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/AbstractStaticWeightedMultisigIsm__factory.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/index.d.ts +2 -0
- package/dist/factories/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/index.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/index.js +5 -0
- package/dist/factories/contracts/isms/multisig/AbstractWeightedMultisigIsm.sol/index.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/AbstractMetaProxyMultisigIsm__factory.d.ts +9 -5
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/AbstractMetaProxyMultisigIsm__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/AbstractMetaProxyMultisigIsm__factory.js +11 -5
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/AbstractMetaProxyMultisigIsm__factory.js.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.js.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.d.ts +15 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.js +20 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.js.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.js.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.d.ts +15 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.js +20 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.js.map +1 -1
- package/dist/factories/contracts/isms/multisig/ValidatorAnnounce__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/multisig/ValidatorAnnounce__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/AbstractMetaProxyWeightedMultisigIsm__factory.d.ts +88 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/AbstractMetaProxyWeightedMultisigIsm__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/AbstractMetaProxyWeightedMultisigIsm__factory.js +121 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/AbstractMetaProxyWeightedMultisigIsm__factory.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.d.ts +85 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.js +124 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsmFactory__factory.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.d.ts +100 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.js +144 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMerkleRootWeightedMultisigIsm__factory.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.d.ts +85 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.js +124 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsmFactory__factory.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.d.ts +100 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.js +144 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/StaticMessageIdWeightedMultisigIsm__factory.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/index.d.ts +6 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/index.d.ts.map +1 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/index.js +9 -0
- package/dist/factories/contracts/isms/multisig/WeightedMultisigIsm.sol/index.js.map +1 -0
- package/dist/factories/contracts/isms/multisig/index.d.ts +3 -1
- package/dist/factories/contracts/isms/multisig/index.d.ts.map +1 -1
- package/dist/factories/contracts/isms/multisig/index.js +3 -1
- package/dist/factories/contracts/isms/multisig/index.js.map +1 -1
- package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/routing/DefaultFallbackRoutingIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.js +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory.sol/DomainRoutingIsmFactory__factory.js.map +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js.map +1 -1
- package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/warp-route/RateLimitedIsm__factory.js +1 -1
- package/dist/factories/contracts/libs/StaticWeightedValidatorSetFactory__factory.d.ts +73 -0
- package/dist/factories/contracts/libs/StaticWeightedValidatorSetFactory__factory.d.ts.map +1 -0
- package/dist/factories/contracts/libs/StaticWeightedValidatorSetFactory__factory.js +101 -0
- package/dist/factories/contracts/libs/StaticWeightedValidatorSetFactory__factory.js.map +1 -0
- package/dist/factories/contracts/libs/index.d.ts +1 -0
- package/dist/factories/contracts/libs/index.d.ts.map +1 -1
- package/dist/factories/contracts/libs/index.js +1 -0
- package/dist/factories/contracts/libs/index.js.map +1 -1
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts.map +1 -1
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +1 -1
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js.map +1 -1
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts.map +1 -1
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +1 -1
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js.map +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts.map +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js.map +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts.map +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js.map +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts.map +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js.map +1 -1
- package/dist/factories/contracts/mock/MockArbBridge.sol/MockArbBridge__factory.d.ts +111 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/MockArbBridge__factory.d.ts.map +1 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/MockArbBridge__factory.js +154 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/MockArbBridge__factory.js.map +1 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/MockArbSys__factory.d.ts +89 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/MockArbSys__factory.d.ts.map +1 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/MockArbSys__factory.js +124 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/MockArbSys__factory.js.map +1 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/index.d.ts +3 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/index.d.ts.map +1 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/index.js +6 -0
- package/dist/factories/contracts/mock/MockArbBridge.sol/index.js.map +1 -0
- package/dist/factories/contracts/mock/MockERC4626YieldSharing__factory.d.ts +643 -0
- package/dist/factories/contracts/mock/MockERC4626YieldSharing__factory.d.ts.map +1 -0
- package/dist/factories/contracts/mock/MockERC4626YieldSharing__factory.js +855 -0
- package/dist/factories/contracts/mock/MockERC4626YieldSharing__factory.js.map +1 -0
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +21 -1
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts.map +1 -1
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +27 -1
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js.map +1 -1
- package/dist/factories/contracts/mock/MockMailbox__factory.d.ts +1 -1
- package/dist/factories/contracts/mock/MockMailbox__factory.js +1 -1
- package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.d.ts +119 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.d.ts.map +1 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.js +165 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismMessenger__factory.js.map +1 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.d.ts +60 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.d.ts.map +1 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.js +89 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/MockOptimismPortal__factory.js.map +1 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/index.d.ts +3 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/index.d.ts.map +1 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/index.js +6 -0
- package/dist/factories/contracts/mock/MockOptimism.sol/index.js.map +1 -0
- package/dist/factories/contracts/mock/index.d.ts +3 -0
- package/dist/factories/contracts/mock/index.d.ts.map +1 -1
- package/dist/factories/contracts/mock/index.js +3 -0
- package/dist/factories/contracts/mock/index.js.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/ERC20Test__factory.d.ts +15 -1
- package/dist/factories/contracts/test/ERC20Test.sol/ERC20Test__factory.d.ts.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/ERC20Test__factory.js +19 -1
- package/dist/factories/contracts/test/ERC20Test.sol/ERC20Test__factory.js.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/FiatTokenTest__factory.d.ts +15 -1
- package/dist/factories/contracts/test/ERC20Test.sol/FiatTokenTest__factory.d.ts.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/FiatTokenTest__factory.js +19 -1
- package/dist/factories/contracts/test/ERC20Test.sol/FiatTokenTest__factory.js.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.d.ts +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.d.ts.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.js +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20LockboxTest__factory.js.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__factory.d.ts +15 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__factory.d.ts.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__factory.js +19 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__factory.js.map +1 -1
- package/dist/factories/contracts/test/ERC4626/ERC4626Test__factory.d.ts +1 -1
- package/dist/factories/contracts/test/ERC4626/ERC4626Test__factory.js +1 -1
- package/dist/factories/contracts/test/LightTestRecipient__factory.d.ts +1 -1
- package/dist/factories/contracts/test/LightTestRecipient__factory.js +1 -1
- package/dist/factories/contracts/test/TestGasRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestGasRouter__factory.d.ts.map +1 -1
- package/dist/factories/contracts/test/TestGasRouter__factory.js +1 -1
- package/dist/factories/contracts/test/TestGasRouter__factory.js.map +1 -1
- package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.d.ts.map +1 -1
- package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.js +1 -1
- package/dist/factories/contracts/test/TestInterchainGasPaymaster__factory.js.map +1 -1
- package/dist/factories/contracts/test/TestIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestIsm__factory.js +1 -1
- package/dist/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestMailbox__factory.js +1 -1
- package/dist/factories/contracts/test/TestMerkleTreeHook__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestMerkleTreeHook__factory.js +1 -1
- package/dist/factories/contracts/test/TestMerkle__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestMerkle__factory.js +1 -1
- package/dist/factories/contracts/test/TestPostDispatchHook__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestPostDispatchHook__factory.js +1 -1
- package/dist/factories/contracts/test/TestQuerySender__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestQuerySender__factory.js +1 -1
- package/dist/factories/contracts/test/TestQuery__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestQuery__factory.js +1 -1
- package/dist/factories/contracts/test/TestRecipient__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestRecipient__factory.js +1 -1
- package/dist/factories/contracts/test/TestRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestRouter__factory.d.ts.map +1 -1
- package/dist/factories/contracts/test/TestRouter__factory.js +1 -1
- package/dist/factories/contracts/test/TestRouter__factory.js.map +1 -1
- package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestSendReceiver__factory.js +1 -1
- package/dist/factories/contracts/token/HypERC20Collateral__factory.d.ts +1 -1
- package/dist/factories/contracts/token/HypERC20Collateral__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/HypERC20Collateral__factory.js +1 -1
- package/dist/factories/contracts/token/HypERC20Collateral__factory.js.map +1 -1
- package/dist/factories/contracts/token/HypERC20__factory.d.ts +1 -1
- package/dist/factories/contracts/token/HypERC20__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/HypERC20__factory.js +1 -1
- package/dist/factories/contracts/token/HypERC20__factory.js.map +1 -1
- package/dist/factories/contracts/token/HypERC721Collateral__factory.d.ts +1 -1
- package/dist/factories/contracts/token/HypERC721Collateral__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/HypERC721Collateral__factory.js +1 -1
- package/dist/factories/contracts/token/HypERC721Collateral__factory.js.map +1 -1
- package/dist/factories/contracts/token/HypERC721__factory.d.ts +1 -1
- package/dist/factories/contracts/token/HypERC721__factory.js +1 -1
- package/dist/factories/contracts/token/HypNative__factory.d.ts +2 -2
- package/dist/factories/contracts/token/HypNative__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/HypNative__factory.js +2 -2
- package/dist/factories/contracts/token/HypNative__factory.js.map +1 -1
- package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.d.ts +1 -1
- package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.js +1 -1
- package/dist/factories/contracts/token/extensions/FastHypERC20Collateral__factory.js.map +1 -1
- package/dist/factories/contracts/token/extensions/FastHypERC20__factory.d.ts +1 -1
- package/dist/factories/contracts/token/extensions/FastHypERC20__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/extensions/FastHypERC20__factory.js +1 -1
- package/dist/factories/contracts/token/extensions/FastHypERC20__factory.js.map +1 -1
- package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.d.ts +469 -0
- package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.d.ts.map +1 -0
- package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.js +621 -0
- package/dist/factories/contracts/token/extensions/HypERC4626Collateral__factory.js.map +1 -0
- package/dist/factories/contracts/token/extensions/{HypERC20CollateralVaultDeposit__factory.d.ts → HypERC4626OwnerCollateral__factory.d.ts} +11 -11
- package/dist/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.d.ts.map +1 -0
- package/dist/factories/contracts/token/extensions/{HypERC20CollateralVaultDeposit__factory.js → HypERC4626OwnerCollateral__factory.js} +3 -3
- package/dist/factories/contracts/token/extensions/HypERC4626OwnerCollateral__factory.js.map +1 -0
- package/dist/factories/contracts/token/extensions/HypERC4626__factory.d.ts +699 -0
- package/dist/factories/contracts/token/extensions/HypERC4626__factory.d.ts.map +1 -0
- package/dist/factories/contracts/token/extensions/HypERC4626__factory.js +923 -0
- package/dist/factories/contracts/token/extensions/HypERC4626__factory.js.map +1 -0
- package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.d.ts +1 -1
- package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.js +1 -1
- package/dist/factories/contracts/token/extensions/HypERC721URICollateral__factory.js.map +1 -1
- package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.d.ts +1 -1
- package/dist/factories/contracts/token/extensions/HypERC721URIStorage__factory.js +1 -1
- package/dist/factories/contracts/token/extensions/HypFiatToken__factory.d.ts +1 -1
- package/dist/factories/contracts/token/extensions/HypFiatToken__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/extensions/HypFiatToken__factory.js +1 -1
- package/dist/factories/contracts/token/extensions/HypFiatToken__factory.js.map +1 -1
- package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.d.ts +2 -2
- package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.js +2 -2
- package/dist/factories/contracts/token/extensions/HypNativeScaled__factory.js.map +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.d.ts +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.js +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20Lockbox__factory.js.map +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20__factory.d.ts +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20__factory.js +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20__factory.js.map +1 -1
- package/dist/factories/contracts/token/extensions/index.d.ts +3 -1
- package/dist/factories/contracts/token/extensions/index.d.ts.map +1 -1
- package/dist/factories/contracts/token/extensions/index.js +3 -1
- package/dist/factories/contracts/token/extensions/index.js.map +1 -1
- package/dist/index.d.ts +46 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -2
- package/dist/index.js.map +1 -1
- package/package.json +5 -4
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.d.ts.map +0 -1
- package/dist/contracts/isms/multisig/AbstractMultisigIsm.js.map +0 -1
- package/dist/contracts/token/extensions/HypERC20CollateralVaultDeposit.d.ts.map +0 -1
- package/dist/contracts/token/extensions/HypERC20CollateralVaultDeposit.js +0 -2
- package/dist/contracts/token/extensions/HypERC20CollateralVaultDeposit.js.map +0 -1
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm__factory.d.ts.map +0 -1
- package/dist/factories/contracts/isms/multisig/AbstractMultisigIsm__factory.js.map +0 -1
- package/dist/factories/contracts/token/extensions/HypERC20CollateralVaultDeposit__factory.d.ts.map +0 -1
- package/dist/factories/contracts/token/extensions/HypERC20CollateralVaultDeposit__factory.js.map +0 -1
- /package/dist/contracts/isms/multisig/{AbstractMultisigIsm.js → AbstractMultisigIsm.sol/AbstractMultisigIsm.js} +0 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT OR Apache-2.0
|
|
2
|
+
pragma solidity >=0.8.0;
|
|
3
|
+
// ============ External Imports ============
|
|
4
|
+
|
|
5
|
+
import {Address} from "@openzeppelin/contracts/utils/Address.sol";
|
|
6
|
+
import {Create2} from "@openzeppelin/contracts/utils/Create2.sol";
|
|
7
|
+
import {IStaticWeightedMultisigIsm} from "../interfaces/isms/IWeightedMultisigIsm.sol";
|
|
8
|
+
|
|
9
|
+
// ============ Internal Imports ============
|
|
10
|
+
import {MetaProxy} from "./MetaProxy.sol";
|
|
11
|
+
|
|
12
|
+
abstract contract StaticWeightedValidatorSetFactory {
|
|
13
|
+
// ============ Immutables ============
|
|
14
|
+
address public immutable implementation;
|
|
15
|
+
|
|
16
|
+
// ============ Constructor ============
|
|
17
|
+
|
|
18
|
+
constructor() {
|
|
19
|
+
implementation = _deployImplementation();
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function _deployImplementation() internal virtual returns (address);
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @notice Deploys a StaticWeightedValidatorSet contract address for the given
|
|
26
|
+
* values
|
|
27
|
+
* @dev Consider sorting addresses to ensure contract reuse
|
|
28
|
+
* @param _validators An array of addresses
|
|
29
|
+
* @param _thresholdWeight The threshold weight value to use
|
|
30
|
+
* @return set The contract address representing this StaticWeightedValidatorSet
|
|
31
|
+
*/
|
|
32
|
+
function deploy(
|
|
33
|
+
IStaticWeightedMultisigIsm.ValidatorInfo[] calldata _validators,
|
|
34
|
+
uint96 _thresholdWeight
|
|
35
|
+
) public returns (address) {
|
|
36
|
+
(bytes32 _salt, bytes memory _bytecode) = _saltAndBytecode(
|
|
37
|
+
_validators,
|
|
38
|
+
_thresholdWeight
|
|
39
|
+
);
|
|
40
|
+
address _set = _getAddress(_salt, _bytecode);
|
|
41
|
+
if (!Address.isContract(_set)) {
|
|
42
|
+
_set = Create2.deploy(0, _salt, _bytecode);
|
|
43
|
+
}
|
|
44
|
+
return _set;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* @notice Returns the StaticWeightedValidatorSet contract address for the given
|
|
49
|
+
* values
|
|
50
|
+
* @dev Consider sorting addresses to ensure contract reuse
|
|
51
|
+
* @param _validators An array of addresses
|
|
52
|
+
* @param _thresholdWeight The threshold weight value to use
|
|
53
|
+
* @return set The contract address representing this StaticWeightedValidatorSet
|
|
54
|
+
*/
|
|
55
|
+
function getAddress(
|
|
56
|
+
IStaticWeightedMultisigIsm.ValidatorInfo[] calldata _validators,
|
|
57
|
+
uint96 _thresholdWeight
|
|
58
|
+
) external view returns (address) {
|
|
59
|
+
(bytes32 _salt, bytes memory _bytecode) = _saltAndBytecode(
|
|
60
|
+
_validators,
|
|
61
|
+
_thresholdWeight
|
|
62
|
+
);
|
|
63
|
+
return _getAddress(_salt, _bytecode);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* @notice Returns the StaticWeightedValidatorSet contract address for the given
|
|
68
|
+
* values
|
|
69
|
+
* @param _salt The salt used in Create2
|
|
70
|
+
* @param _bytecode The metaproxy bytecode used in Create2
|
|
71
|
+
* @return set The contract address representing this StaticWeightedValidatorSet
|
|
72
|
+
*/
|
|
73
|
+
function _getAddress(
|
|
74
|
+
bytes32 _salt,
|
|
75
|
+
bytes memory _bytecode
|
|
76
|
+
) internal view returns (address) {
|
|
77
|
+
bytes32 _bytecodeHash = keccak256(_bytecode);
|
|
78
|
+
return Create2.computeAddress(_salt, _bytecodeHash);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* @notice Returns the create2 salt and bytecode for the given values
|
|
83
|
+
* @param _validators An array of addresses
|
|
84
|
+
* @param _thresholdWeight The threshold weight value to use
|
|
85
|
+
* @return _salt The salt used in Create2
|
|
86
|
+
* @return _bytecode The metaproxy bytecode used in Create2
|
|
87
|
+
*/
|
|
88
|
+
function _saltAndBytecode(
|
|
89
|
+
IStaticWeightedMultisigIsm.ValidatorInfo[] calldata _validators,
|
|
90
|
+
uint96 _thresholdWeight
|
|
91
|
+
) internal view returns (bytes32, bytes memory) {
|
|
92
|
+
bytes memory _metadata = abi.encode(_validators, _thresholdWeight);
|
|
93
|
+
bytes memory _bytecode = MetaProxy.bytecode(implementation, _metadata);
|
|
94
|
+
bytes32 _salt = keccak256(_metadata);
|
|
95
|
+
return (_salt, _bytecode);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT or Apache-2.0
|
|
2
|
+
pragma solidity ^0.8.13;
|
|
3
|
+
|
|
4
|
+
contract MockArbSys {
|
|
5
|
+
event L2ToL1Tx(
|
|
6
|
+
address caller,
|
|
7
|
+
address indexed destination,
|
|
8
|
+
uint256 indexed hash,
|
|
9
|
+
uint256 indexed position,
|
|
10
|
+
uint256 arbBlockNum,
|
|
11
|
+
uint256 ethBlockNum,
|
|
12
|
+
uint256 timestamp,
|
|
13
|
+
uint256 callvalue,
|
|
14
|
+
bytes data
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
function sendTxToL1(
|
|
18
|
+
address destination,
|
|
19
|
+
bytes calldata data
|
|
20
|
+
) external payable returns (uint256) {
|
|
21
|
+
emit L2ToL1Tx(
|
|
22
|
+
msg.sender,
|
|
23
|
+
destination,
|
|
24
|
+
uint256(keccak256(data)),
|
|
25
|
+
42,
|
|
26
|
+
block.number * 10,
|
|
27
|
+
block.number,
|
|
28
|
+
block.timestamp,
|
|
29
|
+
msg.value,
|
|
30
|
+
data
|
|
31
|
+
);
|
|
32
|
+
return 0;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
contract MockArbBridge {
|
|
37
|
+
error BridgeCallFailed();
|
|
38
|
+
|
|
39
|
+
address public activeOutbox;
|
|
40
|
+
address public l2ToL1Sender;
|
|
41
|
+
|
|
42
|
+
constructor() {
|
|
43
|
+
activeOutbox = address(this);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
function setL2ToL1Sender(address _sender) external {
|
|
47
|
+
l2ToL1Sender = _sender;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function bridge() external view returns (address) {
|
|
51
|
+
return address(this);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
function executeTransaction(
|
|
55
|
+
bytes32[] calldata /*proof*/,
|
|
56
|
+
uint256 /*index*/,
|
|
57
|
+
address /*l2Sender*/,
|
|
58
|
+
address to,
|
|
59
|
+
uint256 /*l2Block*/,
|
|
60
|
+
uint256 /*l1Block*/,
|
|
61
|
+
uint256 /*timestamp*/,
|
|
62
|
+
uint256 value,
|
|
63
|
+
bytes calldata data
|
|
64
|
+
) external payable {
|
|
65
|
+
(bool success, bytes memory returndata) = to.call{value: value}(data);
|
|
66
|
+
if (!success) {
|
|
67
|
+
if (returndata.length > 0) {
|
|
68
|
+
// solhint-disable-next-line no-inline-assembly
|
|
69
|
+
assembly {
|
|
70
|
+
let returndata_size := mload(returndata)
|
|
71
|
+
revert(add(32, returndata), returndata_size)
|
|
72
|
+
}
|
|
73
|
+
} else {
|
|
74
|
+
revert BridgeCallFailed();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
pragma solidity >=0.8.0;
|
|
3
|
+
|
|
4
|
+
import "@openzeppelin/contracts/token/ERC20/extensions/ERC4626.sol";
|
|
5
|
+
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
|
|
6
|
+
import "@openzeppelin/contracts/interfaces/IERC20.sol";
|
|
7
|
+
import "@openzeppelin/contracts/access/Ownable.sol";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @title MockERC4626YieldSharing
|
|
11
|
+
* @dev Mock ERC4626 vault for testing yield sharing with the owner of the vault
|
|
12
|
+
* @dev This is a simplified version of the Aave v3 vault here
|
|
13
|
+
* https://github.com/aave/Aave-Vault/blob/main/src/ATokenVault.sol
|
|
14
|
+
*/
|
|
15
|
+
contract MockERC4626YieldSharing is ERC4626, Ownable {
|
|
16
|
+
using Math for uint256;
|
|
17
|
+
|
|
18
|
+
uint256 public constant SCALE = 1e18;
|
|
19
|
+
uint256 public fee;
|
|
20
|
+
uint256 public accumulatedFees;
|
|
21
|
+
uint256 public lastVaultBalance;
|
|
22
|
+
|
|
23
|
+
constructor(
|
|
24
|
+
address _asset,
|
|
25
|
+
string memory _name,
|
|
26
|
+
string memory _symbol,
|
|
27
|
+
uint256 _initialFee
|
|
28
|
+
) ERC4626(IERC20(_asset)) ERC20(_name, _symbol) {
|
|
29
|
+
fee = _initialFee;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function setFee(uint256 newFee) external onlyOwner {
|
|
33
|
+
require(newFee <= SCALE, "Fee too high");
|
|
34
|
+
fee = newFee;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function _accrueYield() internal {
|
|
38
|
+
uint256 newVaultBalance = IERC20(asset()).balanceOf(address(this));
|
|
39
|
+
if (newVaultBalance > lastVaultBalance) {
|
|
40
|
+
uint256 newYield = newVaultBalance - lastVaultBalance;
|
|
41
|
+
uint256 newFees = newYield.mulDiv(fee, SCALE, Math.Rounding.Down);
|
|
42
|
+
accumulatedFees += newFees;
|
|
43
|
+
lastVaultBalance = newVaultBalance;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
function deposit(
|
|
48
|
+
uint256 assets,
|
|
49
|
+
address receiver
|
|
50
|
+
) public override returns (uint256) {
|
|
51
|
+
lastVaultBalance += assets;
|
|
52
|
+
return super.deposit(assets, receiver);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
function redeem(
|
|
56
|
+
uint256 shares,
|
|
57
|
+
address receiver,
|
|
58
|
+
address owner
|
|
59
|
+
) public override returns (uint256) {
|
|
60
|
+
_accrueYield();
|
|
61
|
+
return super.redeem(shares, receiver, owner);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
function getClaimableFees() public view returns (uint256) {
|
|
65
|
+
uint256 newVaultBalance = IERC20(asset()).balanceOf(address(this));
|
|
66
|
+
|
|
67
|
+
if (newVaultBalance <= lastVaultBalance) {
|
|
68
|
+
return accumulatedFees;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
uint256 newYield = newVaultBalance - lastVaultBalance;
|
|
72
|
+
uint256 newFees = newYield.mulDiv(fee, SCALE, Math.Rounding.Down);
|
|
73
|
+
|
|
74
|
+
return accumulatedFees + newFees;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
function totalAssets() public view override returns (uint256) {
|
|
78
|
+
return IERC20(asset()).balanceOf(address(this)) - getClaimableFees();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
@@ -8,8 +8,8 @@ import "../test/TestIsm.sol";
|
|
|
8
8
|
import {TypeCasts} from "../libs/TypeCasts.sol";
|
|
9
9
|
|
|
10
10
|
contract MockHyperlaneEnvironment {
|
|
11
|
-
uint32 originDomain;
|
|
12
|
-
uint32 destinationDomain;
|
|
11
|
+
uint32 public originDomain;
|
|
12
|
+
uint32 public destinationDomain;
|
|
13
13
|
|
|
14
14
|
mapping(uint32 => MockMailbox) public mailboxes;
|
|
15
15
|
mapping(uint32 => TestInterchainGasPaymaster) public igps;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
pragma solidity ^0.8.0;
|
|
3
|
+
|
|
4
|
+
import {CallLib} from "../middleware/libs/Call.sol";
|
|
5
|
+
import {TypeCasts} from "../libs/TypeCasts.sol";
|
|
6
|
+
import {ICrossDomainMessenger} from "../interfaces/optimism/ICrossDomainMessenger.sol";
|
|
7
|
+
import {IOptimismPortal} from "../interfaces/optimism/IOptimismPortal.sol";
|
|
8
|
+
|
|
9
|
+
// for both L1 and L2
|
|
10
|
+
contract MockOptimismMessenger is ICrossDomainMessenger {
|
|
11
|
+
address public xDomainMessageSender;
|
|
12
|
+
address public PORTAL;
|
|
13
|
+
|
|
14
|
+
function sendMessage(
|
|
15
|
+
address _target,
|
|
16
|
+
bytes calldata _message,
|
|
17
|
+
uint32 _gasLimit
|
|
18
|
+
) external payable {}
|
|
19
|
+
|
|
20
|
+
function relayMessage(
|
|
21
|
+
uint256 /*_nonce*/,
|
|
22
|
+
address /*_sender*/,
|
|
23
|
+
address _target,
|
|
24
|
+
uint256 _value,
|
|
25
|
+
uint256 /*_minGasLimit*/,
|
|
26
|
+
bytes calldata _message
|
|
27
|
+
) external payable {
|
|
28
|
+
CallLib.Call memory call = CallLib.Call(
|
|
29
|
+
TypeCasts.addressToBytes32(_target),
|
|
30
|
+
_value,
|
|
31
|
+
_message
|
|
32
|
+
);
|
|
33
|
+
CallLib.call(call);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
function OTHER_MESSENGER() external view returns (address) {}
|
|
37
|
+
|
|
38
|
+
function setXDomainMessageSender(address _sender) external {
|
|
39
|
+
xDomainMessageSender = _sender;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function setPORTAL(address _portal) external {
|
|
43
|
+
PORTAL = _portal;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// mock deployment on L1
|
|
48
|
+
contract MockOptimismPortal is IOptimismPortal {
|
|
49
|
+
error WithdrawalTransactionFailed();
|
|
50
|
+
|
|
51
|
+
function finalizeWithdrawalTransaction(
|
|
52
|
+
WithdrawalTransaction memory _tx
|
|
53
|
+
) external {
|
|
54
|
+
CallLib.Call memory call = CallLib.Call(
|
|
55
|
+
TypeCasts.addressToBytes32(_tx.target),
|
|
56
|
+
_tx.value,
|
|
57
|
+
_tx.data
|
|
58
|
+
);
|
|
59
|
+
CallLib.call(call);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -31,6 +31,10 @@ contract ERC20Test is ERC20 {
|
|
|
31
31
|
function mintTo(address account, uint256 amount) public {
|
|
32
32
|
_mint(account, amount);
|
|
33
33
|
}
|
|
34
|
+
|
|
35
|
+
function burnFrom(address account, uint256 amount) public {
|
|
36
|
+
_burn(account, amount);
|
|
37
|
+
}
|
|
34
38
|
}
|
|
35
39
|
|
|
36
40
|
contract FiatTokenTest is ERC20Test, IFiatToken {
|
|
@@ -48,6 +48,30 @@ contract HypNative is TokenRouter {
|
|
|
48
48
|
return _transferRemote(_destination, _recipient, _amount, _hookPayment);
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
+
/**
|
|
52
|
+
* @inheritdoc TokenRouter
|
|
53
|
+
* @dev uses (`msg.value` - `_amount`) as hook payment.
|
|
54
|
+
*/
|
|
55
|
+
function transferRemote(
|
|
56
|
+
uint32 _destination,
|
|
57
|
+
bytes32 _recipient,
|
|
58
|
+
uint256 _amount,
|
|
59
|
+
bytes calldata _hookMetadata,
|
|
60
|
+
address _hook
|
|
61
|
+
) external payable virtual override returns (bytes32 messageId) {
|
|
62
|
+
require(msg.value >= _amount, "Native: amount exceeds msg.value");
|
|
63
|
+
uint256 _hookPayment = msg.value - _amount;
|
|
64
|
+
return
|
|
65
|
+
_transferRemote(
|
|
66
|
+
_destination,
|
|
67
|
+
_recipient,
|
|
68
|
+
_amount,
|
|
69
|
+
_hookPayment,
|
|
70
|
+
_hookMetadata,
|
|
71
|
+
_hook
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
|
|
51
75
|
function balanceOf(
|
|
52
76
|
address _account
|
|
53
77
|
) external view override returns (uint256) {
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT OR Apache-2.0
|
|
2
|
+
pragma solidity >=0.8.0;
|
|
3
|
+
|
|
4
|
+
import {IXERC20} from "../interfaces/IXERC20.sol";
|
|
5
|
+
import {HypERC20} from "../HypERC20.sol";
|
|
6
|
+
import {Math} from "@openzeppelin/contracts/utils/math/Math.sol";
|
|
7
|
+
import {Message} from "../../libs/Message.sol";
|
|
8
|
+
import {TokenMessage} from "../libs/TokenMessage.sol";
|
|
9
|
+
import {TokenRouter} from "../libs/TokenRouter.sol";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @title Hyperlane ERC20 Rebasing Token
|
|
13
|
+
* @author Abacus Works
|
|
14
|
+
*/
|
|
15
|
+
contract HypERC4626 is HypERC20 {
|
|
16
|
+
using Math for uint256;
|
|
17
|
+
using Message for bytes;
|
|
18
|
+
using TokenMessage for bytes;
|
|
19
|
+
|
|
20
|
+
uint256 public constant PRECISION = 1e10;
|
|
21
|
+
uint32 public immutable collateralDomain;
|
|
22
|
+
uint256 public exchangeRate; // 1e10
|
|
23
|
+
|
|
24
|
+
constructor(
|
|
25
|
+
uint8 _decimals,
|
|
26
|
+
address _mailbox,
|
|
27
|
+
uint32 _collateralDomain
|
|
28
|
+
) HypERC20(_decimals, _mailbox) {
|
|
29
|
+
collateralDomain = _collateralDomain;
|
|
30
|
+
exchangeRate = 1e10;
|
|
31
|
+
_disableInitializers();
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/// Override to send shares instead of assets from synthetic
|
|
35
|
+
/// @inheritdoc TokenRouter
|
|
36
|
+
function _transferRemote(
|
|
37
|
+
uint32 _destination,
|
|
38
|
+
bytes32 _recipient,
|
|
39
|
+
uint256 _amountOrId,
|
|
40
|
+
uint256 _value,
|
|
41
|
+
bytes memory _hookMetadata,
|
|
42
|
+
address _hook
|
|
43
|
+
) internal virtual override returns (bytes32 messageId) {
|
|
44
|
+
uint256 _shares = assetsToShares(_amountOrId);
|
|
45
|
+
_transferFromSender(_shares);
|
|
46
|
+
bytes memory _tokenMessage = TokenMessage.format(
|
|
47
|
+
_recipient,
|
|
48
|
+
_shares,
|
|
49
|
+
bytes("")
|
|
50
|
+
);
|
|
51
|
+
|
|
52
|
+
messageId = _Router_dispatch(
|
|
53
|
+
_destination,
|
|
54
|
+
_value,
|
|
55
|
+
_tokenMessage,
|
|
56
|
+
_hookMetadata,
|
|
57
|
+
_hook
|
|
58
|
+
);
|
|
59
|
+
|
|
60
|
+
emit SentTransferRemote(_destination, _recipient, _amountOrId);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
function _handle(
|
|
64
|
+
uint32 _origin,
|
|
65
|
+
bytes32 _sender,
|
|
66
|
+
bytes calldata _message
|
|
67
|
+
) internal virtual override {
|
|
68
|
+
if (_origin == collateralDomain) {
|
|
69
|
+
exchangeRate = abi.decode(_message.metadata(), (uint256));
|
|
70
|
+
}
|
|
71
|
+
super._handle(_origin, _sender, _message);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// Override to send shares locally instead of assets
|
|
75
|
+
function transfer(
|
|
76
|
+
address to,
|
|
77
|
+
uint256 amount
|
|
78
|
+
) public virtual override returns (bool) {
|
|
79
|
+
address owner = _msgSender();
|
|
80
|
+
_transfer(owner, to, assetsToShares(amount));
|
|
81
|
+
return true;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function shareBalanceOf(address account) public view returns (uint256) {
|
|
85
|
+
return super.balanceOf(account);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
function balanceOf(
|
|
89
|
+
address account
|
|
90
|
+
) public view virtual override returns (uint256) {
|
|
91
|
+
uint256 _balance = super.balanceOf(account);
|
|
92
|
+
return sharesToAssets(_balance);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
function assetsToShares(uint256 _amount) public view returns (uint256) {
|
|
96
|
+
return _amount.mulDiv(PRECISION, exchangeRate);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
function sharesToAssets(uint256 _shares) public view returns (uint256) {
|
|
100
|
+
return _shares.mulDiv(exchangeRate, PRECISION);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
pragma solidity >=0.8.0;
|
|
3
|
+
|
|
4
|
+
import "@openzeppelin/contracts/token/ERC20/extensions/ERC4626.sol";
|
|
5
|
+
import {TokenMessage} from "../libs/TokenMessage.sol";
|
|
6
|
+
import {HypERC20Collateral} from "../HypERC20Collateral.sol";
|
|
7
|
+
import {TypeCasts} from "../../libs/TypeCasts.sol";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @title Hyperlane ERC4626 Token Collateral with deposits collateral to a vault
|
|
11
|
+
* @author Abacus Works
|
|
12
|
+
*/
|
|
13
|
+
contract HypERC4626Collateral is HypERC20Collateral {
|
|
14
|
+
using TypeCasts for address;
|
|
15
|
+
using TokenMessage for bytes;
|
|
16
|
+
using Math for uint256;
|
|
17
|
+
|
|
18
|
+
// Address of the ERC4626 compatible vault
|
|
19
|
+
ERC4626 public immutable vault;
|
|
20
|
+
uint256 public constant PRECISION = 1e10;
|
|
21
|
+
bytes32 public constant NULL_RECIPIENT =
|
|
22
|
+
0x0000000000000000000000000000000000000000000000000000000000000001;
|
|
23
|
+
|
|
24
|
+
constructor(
|
|
25
|
+
ERC4626 _vault,
|
|
26
|
+
address _mailbox
|
|
27
|
+
) HypERC20Collateral(_vault.asset(), _mailbox) {
|
|
28
|
+
vault = _vault;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function initialize(
|
|
32
|
+
address _hook,
|
|
33
|
+
address _interchainSecurityModule,
|
|
34
|
+
address _owner
|
|
35
|
+
) public override initializer {
|
|
36
|
+
_MailboxClient_initialize(_hook, _interchainSecurityModule, _owner);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function _transferRemote(
|
|
40
|
+
uint32 _destination,
|
|
41
|
+
bytes32 _recipient,
|
|
42
|
+
uint256 _amount,
|
|
43
|
+
uint256 _value,
|
|
44
|
+
bytes memory _hookMetadata,
|
|
45
|
+
address _hook
|
|
46
|
+
) internal virtual override returns (bytes32 messageId) {
|
|
47
|
+
// Can't override _transferFromSender only because we need to pass shares in the token message
|
|
48
|
+
_transferFromSender(_amount);
|
|
49
|
+
uint256 _shares = _depositIntoVault(_amount);
|
|
50
|
+
uint256 _exchangeRate = PRECISION.mulDiv(
|
|
51
|
+
vault.totalAssets(),
|
|
52
|
+
vault.totalSupply(),
|
|
53
|
+
Math.Rounding.Down
|
|
54
|
+
);
|
|
55
|
+
bytes memory _tokenMetadata = abi.encode(_exchangeRate);
|
|
56
|
+
|
|
57
|
+
bytes memory _tokenMessage = TokenMessage.format(
|
|
58
|
+
_recipient,
|
|
59
|
+
_shares,
|
|
60
|
+
_tokenMetadata
|
|
61
|
+
);
|
|
62
|
+
|
|
63
|
+
messageId = _Router_dispatch(
|
|
64
|
+
_destination,
|
|
65
|
+
_value,
|
|
66
|
+
_tokenMessage,
|
|
67
|
+
_hookMetadata,
|
|
68
|
+
_hook
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
emit SentTransferRemote(_destination, _recipient, _shares);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* @dev Deposits into the vault and increment assetDeposited
|
|
76
|
+
* @param _amount amount to deposit into vault
|
|
77
|
+
*/
|
|
78
|
+
function _depositIntoVault(uint256 _amount) internal returns (uint256) {
|
|
79
|
+
wrappedToken.approve(address(vault), _amount);
|
|
80
|
+
return vault.deposit(_amount, address(this));
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* @dev Transfers `_amount` of `wrappedToken` from this contract to `_recipient`, and withdraws from vault
|
|
85
|
+
* @inheritdoc HypERC20Collateral
|
|
86
|
+
*/
|
|
87
|
+
function _transferTo(
|
|
88
|
+
address _recipient,
|
|
89
|
+
uint256 _amount,
|
|
90
|
+
bytes calldata
|
|
91
|
+
) internal virtual override {
|
|
92
|
+
// withdraw with the specified amount of shares
|
|
93
|
+
vault.redeem(_amount, _recipient, address(this));
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* @dev Update the exchange rate on the synthetic token by accounting for additional yield accrued to the underlying vault
|
|
98
|
+
* @param _destinationDomain domain of the vault
|
|
99
|
+
*/
|
|
100
|
+
function rebase(uint32 _destinationDomain) public payable {
|
|
101
|
+
// force a rebase with an empty transfer to 0x1
|
|
102
|
+
_transferRemote(
|
|
103
|
+
_destinationDomain,
|
|
104
|
+
NULL_RECIPIENT,
|
|
105
|
+
0,
|
|
106
|
+
msg.value,
|
|
107
|
+
bytes(""),
|
|
108
|
+
address(0)
|
|
109
|
+
);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
|
2
2
|
pragma solidity >=0.8.0;
|
|
3
|
+
|
|
3
4
|
import "@openzeppelin/contracts/token/ERC20/extensions/ERC4626.sol";
|
|
4
5
|
import {HypERC20Collateral} from "../HypERC20Collateral.sol";
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
|
-
* @title Hyperlane ERC20 Token Collateral with deposits collateral to a vault
|
|
8
|
+
* @title Hyperlane ERC20 Token Collateral with deposits collateral to a vault, the yield goes to the owner
|
|
8
9
|
* @author ltyu
|
|
9
10
|
*/
|
|
10
|
-
contract
|
|
11
|
+
contract HypERC4626OwnerCollateral is HypERC20Collateral {
|
|
11
12
|
// Address of the ERC4626 compatible vault
|
|
12
13
|
ERC4626 public immutable vault;
|
|
13
14
|
|
|
@@ -38,6 +38,31 @@ contract HypNativeScaled is HypNative {
|
|
|
38
38
|
);
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
+
/**
|
|
42
|
+
* @inheritdoc TokenRouter
|
|
43
|
+
* @dev uses (`msg.value` - `_amount`) as hook payment.
|
|
44
|
+
*/
|
|
45
|
+
function transferRemote(
|
|
46
|
+
uint32 _destination,
|
|
47
|
+
bytes32 _recipient,
|
|
48
|
+
uint256 _amount,
|
|
49
|
+
bytes calldata _hookMetadata,
|
|
50
|
+
address _hook
|
|
51
|
+
) external payable override returns (bytes32 messageId) {
|
|
52
|
+
require(msg.value >= _amount, "Native: amount exceeds msg.value");
|
|
53
|
+
uint256 _hookPayment = msg.value - _amount;
|
|
54
|
+
uint256 _scaledAmount = _amount / scale;
|
|
55
|
+
return
|
|
56
|
+
_transferRemote(
|
|
57
|
+
_destination,
|
|
58
|
+
_recipient,
|
|
59
|
+
_scaledAmount,
|
|
60
|
+
_hookPayment,
|
|
61
|
+
_hookMetadata,
|
|
62
|
+
_hook
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
|
|
41
66
|
/**
|
|
42
67
|
* @dev Sends scaled `_amount` (multiplied by `scale`) to `_recipient`.
|
|
43
68
|
* @inheritdoc TokenRouter
|