-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update token premint logic by adding cancel/update posibility #67
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
EvgeniiZaitsevCW
previously approved these changes
Mar 11, 2024
9517094
to
65a733f
Compare
EvgeniiZaitsevCW
previously approved these changes
Mar 12, 2024
igorsenych-cw
previously approved these changes
Mar 13, 2024
igorsenych-cw
approved these changes
Mar 13, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
With the implementation of the new functionality, the contract now has the ability to update or cancel pending (not expired) premints. Premint operation restrictions were added to limit some actions during the
premint()
function call.New
premint()
function declaration:Key Highlights
The
premint()
function possible usage scenariosrelease
timestamp does not exist andamount != 0
andrestriction == (None || Update)
, a new premint will be created.release
timestamp exists andamount != 0
andrestriction == (None || Create)
, the existing premint will be updated with the new amount. Tokens will be minted or burned according to the difference between the newamount
value and the old one.release
timestamp exists andamount == 0
andrestriction == (None || Create)
, the existing premint will be canceled.The revert conditions for the
premint()
functionrelease
timestamp is not greater than the current block timestamp -- errorPremintReleaseTimePassed
.amount == 0
-- errorZeroPremintAmount
.MaxPendingPremintsLimitReached
.amount
values are the same -- errorPremintUnchanged
.restriction
argument is set asPremintRestriction.Create
, and a new premint is going to be created.restriction
argument is set asPremintRestriction.Update
and an existing premint is going to be updated.The
premint()
function common behaviourpremint()
function checks and removes released premints from the internal array.Test coverage
New functionality was fully covered with tests