git.delta.rocks / unique-network / refs/commits / 5543fa933a08

difftreelog

source

js-packages/scripts/benchmarks/utils/openZeppelin/ERC721/ZeppelinContract.sol1.8 KiBsourcehistory
1// SPDX-License-Identifier: MIT2pragma solidity ^0.8.9;34import "./@openzeppelin/contracts/token/ERC721/ERC721.sol";5import "./@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol";6import "./@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";7import "./@openzeppelin/contracts/token/ERC721/extensions/ERC721Burnable.sol";8import "./@openzeppelin/contracts/access/Ownable.sol";9import "./@openzeppelin/contracts/utils/Counters.sol";1011contract ZeppelinContract is ERC721, ERC721Enumerable, ERC721URIStorage, ERC721Burnable, Ownable {12    using Counters for Counters.Counter;1314    Counters.Counter private _tokenIdCounter;1516    constructor() ERC721("ZeppelinContract", "UNQ") {}1718    function _baseURI() internal pure override returns (string memory) {19        return "test";20    }2122    function safeMint(address to, string memory uri) public onlyOwner {23        uint256 tokenId = _tokenIdCounter.current();24        _tokenIdCounter.increment();25        _safeMint(to, tokenId);26        _setTokenURI(tokenId, uri);27    }2829    // The following functions are overrides required by Solidity.3031    function _beforeTokenTransfer(address from, address to, uint256 tokenId, uint256 batchSize)32        internal33        override(ERC721, ERC721Enumerable)34    {35        super._beforeTokenTransfer(from, to, tokenId, batchSize);36    }3738    function _burn(uint256 tokenId) internal override(ERC721, ERC721URIStorage) {39        super._burn(tokenId);40    }4142    function tokenURI(uint256 tokenId)43        public44        view45        override(ERC721, ERC721URIStorage)46        returns (string memory)47    {48        return super.tokenURI(tokenId);49    }5051    function supportsInterface(bytes4 interfaceId)52        public53        view54        override(ERC721, ERC721Enumerable)55        returns (bool)56    {57        return super.supportsInterface(interfaceId);58    }59}