Concordium/concordium-rust-smart-contracts

Token contract including all token features

DOBEN opened this issue · 0 comments

Task description

There is a long-term plan to develop a token front-end wizard to allow developers to create/deploy/initialize simple token contracts. Similar to:
https://docs.openzeppelin.com/contracts/5.x/wizard

As a first step, we decided on the features and need a contract that includes all these features.

Sub-tasks

  • Expand cis2-multi contract
  • Add burn function.
  • Add CIS3 standard (for the transfer/updateOpertor/burn/mint entrypoints)
  • Add pausable (transfer/burn/mint/updateOperator entrypoints are paused)
  • Add native upgradability
  • Add blacklist (blacklisted addresses can not transfer their tokens, receive new tokens, or burn their tokens)
  • Add access control (UPGRADER (can upgrade the contract), PAUSER (can pause contract). BLACKLISTER can blacklist addresses