Add timestamp based governor with EIP-6372 and EIP-5805 (#3934)
Co-authored-by: Francisco Giordano <fg@frang.io> Co-authored-by: Ernesto García <ernestognw@gmail.com> Co-authored-by: Francisco <frangio.1@gmail.com>
This commit is contained in:
40
contracts/mocks/token/VotesTimestamp.sol
Normal file
40
contracts/mocks/token/VotesTimestamp.sol
Normal file
@ -0,0 +1,40 @@
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
pragma solidity ^0.8.0;
|
||||
|
||||
import "../../token/ERC20/extensions/ERC20Votes.sol";
|
||||
import "../../token/ERC20/extensions/ERC20VotesComp.sol";
|
||||
import "../../token/ERC721/extensions/ERC721Votes.sol";
|
||||
|
||||
abstract contract ERC20VotesTimestampMock is ERC20Votes {
|
||||
function clock() public view virtual override returns (uint48) {
|
||||
return SafeCast.toUint48(block.timestamp);
|
||||
}
|
||||
|
||||
// solhint-disable-next-line func-name-mixedcase
|
||||
function CLOCK_MODE() public view virtual override returns (string memory) {
|
||||
return "mode=timestamp";
|
||||
}
|
||||
}
|
||||
|
||||
abstract contract ERC20VotesCompTimestampMock is ERC20VotesComp {
|
||||
function clock() public view virtual override returns (uint48) {
|
||||
return SafeCast.toUint48(block.timestamp);
|
||||
}
|
||||
|
||||
// solhint-disable-next-line func-name-mixedcase
|
||||
function CLOCK_MODE() public view virtual override returns (string memory) {
|
||||
return "mode=timestamp";
|
||||
}
|
||||
}
|
||||
|
||||
abstract contract ERC721VotesTimestampMock is ERC721Votes {
|
||||
function clock() public view virtual override returns (uint48) {
|
||||
return SafeCast.toUint48(block.timestamp);
|
||||
}
|
||||
|
||||
// solhint-disable-next-line func-name-mixedcase
|
||||
function CLOCK_MODE() public view virtual override returns (string memory) {
|
||||
return "mode=timestamp";
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user