@hyperlane-xyz/core 4.1.0 → 4.2.0-beta1
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/isms/hook/ArbL2ToL1Ism.sol +3 -5
- package/contracts/test/ERC20Test.sol +12 -0
- package/contracts/token/interfaces/IXERC20.sol +21 -0
- package/dist/buildArtifact.js +1 -1
- package/dist/buildArtifact.json +1 -1
- package/dist/contracts/test/ERC20Test.sol/XERC20Test.d.ts +31 -1
- package/dist/contracts/test/ERC20Test.sol/XERC20Test.d.ts.map +1 -1
- package/dist/contracts/token/interfaces/IXERC20.d.ts +39 -1
- package/dist/contracts/token/interfaces/IXERC20.d.ts.map +1 -1
- package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts +3 -7
- package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.d.ts.map +1 -1
- package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js +5 -10
- package/dist/factories/contracts/isms/hook/ArbL2ToL1Ism__factory.js.map +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/ERC20Test__factory.d.ts +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/ERC20Test__factory.js +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/FiatTokenTest__factory.d.ts +1 -1
- package/dist/factories/contracts/test/ERC20Test.sol/FiatTokenTest__factory.js +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 +29 -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 +39 -1
- package/dist/factories/contracts/test/ERC20Test.sol/XERC20Test__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.js +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20__factory.d.ts +1 -1
- package/dist/factories/contracts/token/extensions/HypXERC20__factory.js +1 -1
- package/dist/factories/contracts/token/interfaces/IXERC20__factory.d.ts +28 -0
- package/dist/factories/contracts/token/interfaces/IXERC20__factory.d.ts.map +1 -1
- package/dist/factories/contracts/token/interfaces/IXERC20__factory.js +38 -0
- package/dist/factories/contracts/token/interfaces/IXERC20__factory.js.map +1 -1
- package/package.json +2 -2
|
@@ -22,6 +22,7 @@ import {AbstractMessageIdAuthorizedIsm} from "./AbstractMessageIdAuthorizedIsm.s
|
|
|
22
22
|
|
|
23
23
|
// ============ External Imports ============
|
|
24
24
|
|
|
25
|
+
import {IBridge} from "@arbitrum/nitro-contracts/src/bridge/IBridge.sol";
|
|
25
26
|
import {IOutbox} from "@arbitrum/nitro-contracts/src/bridge/IOutbox.sol";
|
|
26
27
|
import {CrossChainEnabledArbitrumL1} from "@openzeppelin/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL1.sol";
|
|
27
28
|
import {Address} from "@openzeppelin/contracts/utils/Address.sol";
|
|
@@ -45,15 +46,12 @@ contract ArbL2ToL1Ism is
|
|
|
45
46
|
|
|
46
47
|
// ============ Constructor ============
|
|
47
48
|
|
|
48
|
-
constructor(
|
|
49
|
-
address _bridge,
|
|
50
|
-
address _outbox
|
|
51
|
-
) CrossChainEnabledArbitrumL1(_bridge) {
|
|
49
|
+
constructor(address _bridge) CrossChainEnabledArbitrumL1(_bridge) {
|
|
52
50
|
require(
|
|
53
51
|
Address.isContract(_bridge),
|
|
54
52
|
"ArbL2ToL1Ism: invalid Arbitrum Bridge"
|
|
55
53
|
);
|
|
56
|
-
arbOutbox = IOutbox(
|
|
54
|
+
arbOutbox = IOutbox(IBridge(_bridge).activeOutbox());
|
|
57
55
|
}
|
|
58
56
|
|
|
59
57
|
// ============ External Functions ============
|
|
@@ -86,6 +86,18 @@ contract XERC20Test is ERC20Test, IXERC20 {
|
|
|
86
86
|
) external view returns (uint256) {
|
|
87
87
|
return type(uint256).max;
|
|
88
88
|
}
|
|
89
|
+
|
|
90
|
+
function mintingMaxLimitOf(
|
|
91
|
+
address _bridge
|
|
92
|
+
) external view returns (uint256) {
|
|
93
|
+
return type(uint256).max;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
function burningMaxLimitOf(
|
|
97
|
+
address _bridge
|
|
98
|
+
) external view returns (uint256) {
|
|
99
|
+
return type(uint256).max;
|
|
100
|
+
}
|
|
89
101
|
}
|
|
90
102
|
|
|
91
103
|
contract XERC20LockboxTest is IXERC20Lockbox {
|
|
@@ -54,4 +54,25 @@ interface IXERC20 is IERC20 {
|
|
|
54
54
|
function mintingCurrentLimitOf(
|
|
55
55
|
address _bridge
|
|
56
56
|
) external view returns (uint256 _limit);
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* @notice Returns the max limit of a minter
|
|
60
|
+
*
|
|
61
|
+
* @param _minter The minter we are viewing the limits of
|
|
62
|
+
* @return _limit The limit the minter has
|
|
63
|
+
*/
|
|
64
|
+
function mintingMaxLimitOf(
|
|
65
|
+
address _minter
|
|
66
|
+
) external view returns (uint256 _limit);
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* @notice Returns the max limit of a bridge
|
|
70
|
+
*
|
|
71
|
+
* @param _bridge the bridge we are viewing the limits of
|
|
72
|
+
* @return _limit The limit the bridge has
|
|
73
|
+
*/
|
|
74
|
+
|
|
75
|
+
function burningMaxLimitOf(
|
|
76
|
+
address _bridge
|
|
77
|
+
) external view returns (uint256 _limit);
|
|
57
78
|
}
|