mirror of
https://github.com/Instadapp/dsa-governance.git
synced 2024-07-29 22:27:52 +00:00
Update mint and initial supply
This commit is contained in:
parent
04ec109c71
commit
f3585454fe
|
@ -28,11 +28,14 @@ contract TokenDelegate is TokenDelegateStorageV1, TokenEvents {
|
||||||
* @param mintingAllowedAfter_ Timestamp of the next allowed minting
|
* @param mintingAllowedAfter_ Timestamp of the next allowed minting
|
||||||
* @param transferPaused_ Flag to make the token non-transferable
|
* @param transferPaused_ Flag to make the token non-transferable
|
||||||
*/
|
*/
|
||||||
function initialize(address account, uint mintingAllowedAfter_, bool transferPaused_) public {
|
function initialize(address account, uint initialSupply_, uint mintingAllowedAfter_, bool transferPaused_) public {
|
||||||
require(mintingAllowedAfter == 0, "Token::initialize: can only initialize once");
|
require(mintingAllowedAfter == 0, "Token::initialize: can only initialize once");
|
||||||
require(totalSupply == 0, "Token::initialize: can only initialize once");
|
require(totalSupply == 0, "Token::initialize: can only initialize once");
|
||||||
require(mintingAllowedAfter_ >= block.timestamp, "Token::constructor: minting can only begin after deployment");
|
require(mintingAllowedAfter_ >= block.timestamp, "Token::constructor: minting can only begin after deployment");
|
||||||
require(account != address(0), "Token::initialize: invalid address");
|
require(account != address(0), "Token::initialize: invalid address");
|
||||||
|
require(initialSupply_ > 0, "Token::initialize: invalid initial supply");
|
||||||
|
|
||||||
|
totalSupply = initialSupply_;
|
||||||
|
|
||||||
balances[account] = uint96(totalSupply);
|
balances[account] = uint96(totalSupply);
|
||||||
emit Transfer(address(0), account, totalSupply);
|
emit Transfer(address(0), account, totalSupply);
|
||||||
|
@ -198,8 +201,7 @@ contract TokenDelegate is TokenDelegateStorageV1, TokenEvents {
|
||||||
* @param dst The address of the destination account
|
* @param dst The address of the destination account
|
||||||
* @param rawAmount The number of tokens to be minted
|
* @param rawAmount The number of tokens to be minted
|
||||||
*/
|
*/
|
||||||
function mint(address dst, uint rawAmount) external {
|
function mint(address dst, uint rawAmount) external isMaster {
|
||||||
require(msg.sender == minter, "Tkn::mint: only the minter can mint");
|
|
||||||
require(block.timestamp >= mintingAllowedAfter, "Uni::mint: minting not allowed yet");
|
require(block.timestamp >= mintingAllowedAfter, "Uni::mint: minting not allowed yet");
|
||||||
require(dst != address(0), "Tkn::mint: cannot transfer to the zero address");
|
require(dst != address(0), "Tkn::mint: cannot transfer to the zero address");
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,7 @@ contract TokenDelegator is TokenDelegatorStorage, TokenEvents {
|
||||||
constructor(
|
constructor(
|
||||||
address account,
|
address account,
|
||||||
address implementation_,
|
address implementation_,
|
||||||
|
uint initialSupply_,
|
||||||
uint mintingAllowedAfter_,
|
uint mintingAllowedAfter_,
|
||||||
uint changeImplementationAfter_,
|
uint changeImplementationAfter_,
|
||||||
bool transferPaused_
|
bool transferPaused_
|
||||||
|
@ -14,8 +15,9 @@ contract TokenDelegator is TokenDelegatorStorage, TokenEvents {
|
||||||
delegateTo(
|
delegateTo(
|
||||||
implementation_,
|
implementation_,
|
||||||
abi.encodeWithSignature(
|
abi.encodeWithSignature(
|
||||||
"initialize(address,uint256,bool)",
|
"initialize(address,uint256,uint256,bool)",
|
||||||
account,
|
account,
|
||||||
|
initialSupply_,
|
||||||
mintingAllowedAfter_,
|
mintingAllowedAfter_,
|
||||||
transferPaused_
|
transferPaused_
|
||||||
)
|
)
|
||||||
|
|
|
@ -54,7 +54,7 @@ contract TokenDelegatorStorage {
|
||||||
string public symbol = "<TKN>"; // TODO - Replace it
|
string public symbol = "<TKN>"; // TODO - Replace it
|
||||||
|
|
||||||
/// @notice Total number of tokens in circulation
|
/// @notice Total number of tokens in circulation
|
||||||
uint public totalSupply = 10000000e18; // TODO - Replace it
|
uint public totalSupply;
|
||||||
|
|
||||||
/// @notice EIP-20 token decimals for this token
|
/// @notice EIP-20 token decimals for this token
|
||||||
uint8 public constant decimals = 18;
|
uint8 public constant decimals = 18;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user