Since the ERC721consecutive.sol and ERC721Enumerable.sol does not work together, see the conversation Is it possible to use ERC721Consecutive.sol & ERC721Enumerable at the same time with @frangio
I've created a new contract that is compatible with IERC721Enumerable & have batch minting.
I wish to create a pull request to OpenZeppeling repository but before that I wanted to here any feedbacks.
import "OpenZeppelin/openzeppelin-contracts@4.8.0/contracts/token/ERC721/ERC721.sol";
import "OpenZeppelin/openzeppelin-contracts@4.8.0/contracts/token/ERC721/extensions/IERC721Enumerable.sol";
import "OpenZeppelin/openzeppelin-contracts@4.8.0/contracts/interfaces/IERC2309.sol";
import "OpenZeppelin/openzeppelin-contracts@4.8.0/contracts/utils/structs/BitMaps.sol";
import "OpenZeppelin/openzeppelin-contracts@4.8.0/contracts/utils/Checkpoints.sol";
contract ERC721CE is ERC721, IERC721Enumerable, IERC2309 {
using BitMaps for BitMaps.BitMap;
using Checkpoints for Checkpoints.Trace160;
Checkpoints.Trace160 private _sequentialOwnership;
BitMaps.BitMap private _sequentialBurn;
.
.
.
full code is here: Github - ERC721ConsecutiveEnumerable
I've also deployed a test contract on goerli: 0xaF8fA6fC07Da285a94f37148218fFd170eE827ff
this the first time that I try to contribute to openZeppelin so any feedback, guidance is would be huge help.