Request form
Cookbook may introduce a token in the future. Share and contribute to be eligible for future airdrops.
close icon
relevant tag icon
Manifold Upgradable ERC721 NFT
copy icon
manifoldxyz
• version 1.0.0
ERC721
NFT
Token
Upgradable
Proxy

Manifold Upgradable ERC721 NFT

Upgradable ERC721 NFT using the Manifold Creator Architecture, providing creators with the ability to deploy smart contracts with functionalities beyond basic NFT minting.

*Visit desktop site to download or deploy

Version

1.0.0

Recent Use

🍞 0xC555 downloaded

Last Publish

11/27/2022
Any contract you deploy is yours.
Fully owned and controlled by your wallet.
Documentation
Source Code
initialize(string,string) :
This function is an initializer for a contract that implements both the ERC721 and Ownable interfaces. It calls the __ERC721_init() and __Ownable_init() functions to initialize the contract with the given name and symbol. The __ERC721_init() function sets the name and symbol of the contract, while the __Ownable_init() function sets the owner of the contract to the address that deployed it. (autogenerated documentation)
supportsInterface(bytes4) :
This function is used to check if a contract supports a given interface. It does this by checking if the interfaceId passed as an argument is supported by the ERC721CreatorCore, ERC721Upgradeable, and AdminControlUpgradeable contracts. If any of these contracts support the interfaceId, the function returns true, otherwise it returns false. (autogenerated documentation)
_beforeTokenTransfer(address,address,uint256) :
This function is an override of the _beforeTokenTransfer() function in the ERC721 contract. It is used to approve a transfer of a token from one address to another. It works by calling the _approveTransfer() function, which checks that the transfer is valid and then approves it. (autogenerated documentation)
registerExtension(address,string) :
This function registers an extension with the contract. It requires the address of the extension, as well as a baseURI string. It is only accessible to the admin of the contract, and the extension address must not be blacklisted. The function sets the extension address and baseURI in the contract storage, and sets a boolean flag to indicate that the extension is registered. (autogenerated documentation)
registerExtension(address,string,bool) :
This function allows an admin to register an extension contract with the base contract. It requires the address of the extension contract, a base URI, and a boolean value indicating whether the base URI is identical to the base URI of the base contract. The function is protected by the adminRequired modifier, which ensures that only an admin can call the function, and the nonBlacklistRequired modifier, which ensures that the extension contract is not blacklisted. Once the function is called, the _registerExtension function is called, which registers the extension contract with the base contract. (autogenerated documentation)
unregisterExtension(address) :
This function allows an admin to unregister an extension from the contract. It takes an address of the extension as an argument and removes it from the list of registered extensions. This function is only accessible to admins and requires them to have the adminRequired permission. (autogenerated documentation)
blacklistExtension(address) :
This function allows an admin to blacklist an extension address. This means that the extension address will no longer be able to interact with the contract. The function works by taking in an address as an argument and then calling the internal _blacklistExtension() function which will add the address to the blacklist. (autogenerated documentation)
setBaseTokenURIExtension(string) :
This function sets the base token URI extension for the contract. It takes a string as an argument and stores it in the contract's storage. This allows the contract to provide additional information about the token, such as its name, symbol, and other details. The function is marked as external and override extensionRequired, meaning that it can only be called by other contracts that have the override extensionRequired modifier. (autogenerated documentation)
setBaseTokenURIExtension(string,bool) :
This function sets the base token URI extension for the contract. It takes two parameters: a string calldata uri, which is the URI to be set, and a boolean identical, which indicates whether the URI should be identical to the base token URI. If identical is set to true, the URI will be set to the same as the base token URI. If it is set to false, the URI will be set to the provided calldata uri. The function is executed by calling it from the external context, and it requires that the extensionRequired modifier is set to true. (autogenerated documentation)
setTokenURIPrefixExtension(string) :
This function allows the contract owner to set a prefix for the token URI of the tokens issued by the contract. The prefix is a string of characters that will be added to the beginning of the token URI for each token. This allows the contract owner to easily identify the tokens issued by the contract and to provide additional information about the tokens. (autogenerated documentation)
setTokenURIExtension(uint256,string) :
This function allows a user to set a URI extension for a specific token. The function takes two parameters, a tokenId (which is a unique identifier for the token) and a URI (which is a string containing a Uniform Resource Identifier). The function then calls the _setTokenURIExtension() function, which sets the URI extension for the specified token. (autogenerated documentation)
setTokenURIExtension(uint256[]) :
This function is an override extension of the setTokenURIExtension function. It takes two parameters, an array of uint256 tokenIds and an array of strings containing URIs. It then iterates through the arrays, setting the URI for each tokenId. This ensures that the URI is set for each tokenId in the array. (autogenerated documentation)
setBaseTokenURI(string) :
This function allows an admin to set the base token URI for the contract. The base token URI is a string that is used to provide a link to more information about the token. This function requires the admin to provide the new URI as a parameter, and then sets the base token URI to the provided value. (autogenerated documentation)
setTokenURIPrefix(string) :
This function allows an admin to set the token URI prefix for the contract. The token URI prefix is a string that is used to identify the token and provide additional information about it. The prefix is used to construct the full token URI, which is then used to access the token's metadata. The function takes a string as an argument and sets the token URI prefix to that string. (autogenerated documentation)
setTokenURI(uint256,string) :
This function allows an admin to set the URI of a token with a given tokenId. The function requires the admin to provide the tokenId and the URI as parameters. The function then calls the _setTokenURI() internal function to set the URI of the token. (autogenerated documentation)
setTokenURI(uint256[]) :
This function allows an admin to set the token URI for multiple tokens at once. It takes two parameters, an array of token IDs and an array of URIs. It then iterates through the arrays, setting the token URI for each token ID to the corresponding URI. (autogenerated documentation)
setMintPermissions(address,address) :
This function sets the minting permissions for a given address (extension) to a given address (permissions). It is an external function that requires admin privileges to execute. It works by calling the internal _setMintPermissions() function, which updates the minting permissions for the given address. (autogenerated documentation)
mintBase(address) :
This function is used to mint a base token to a specified address. It is a virtual override function that requires admin privileges to execute. It calls the _mintBase() function, passing in the address of the recipient and an empty string as arguments. The _mintBase() function then mints the base token to the specified address. (autogenerated documentation)
mintBase(address,string) :
This function is used to mint a new NFT token on the blockchain. It takes two parameters, an address to which the token should be minted and a string containing a URI that points to the metadata associated with the token. The function is marked as virtual, meaning that it can be overridden by a derived contract, and as nonReentrant, meaning that it cannot be called again until the current call has finished. It also requires the caller to have admin privileges. The function calls the _mintBase() internal function, which is responsible for actually minting the token. (autogenerated documentation)
mintBaseBatch(address,uint16) :
This function is used to mint a batch of tokens to a specified address. It takes two parameters, an address to send the tokens to and a count of how many tokens to mint. It returns an array of token IDs for the newly minted tokens. The function first creates an array of the specified size, then uses a for loop to call the _mintBase() function for each token, passing in the address to send the tokens to and an empty string. The _mintBase() function is then used to mint the tokens and the token IDs are stored in the array. (autogenerated documentation)
mintBaseBatch(address) :
This function is used to mint multiple tokens at once. It takes an address and an array of strings (uris) as parameters. It then creates an array of tokenIds, which is the same length as the uris array. It then iterates through the uris array, calling the _mintBase function for each uri, and adding the tokenId returned by the _mintBase function to the tokenIds array. Finally, it returns the tokenIds array. (autogenerated documentation)
_mintBase(address,string) :
This function is used to mint a new token. It takes in an address and a string as parameters. It increments the token count, assigns the tokenId to the token count, and then calls the _safeMint function to mint the token to the address. If the uri string is not empty, it stores the uri in the _tokenURIs mapping. Finally, it calls the _postMintBase function. (autogenerated documentation)
mintExtension(address) :
This function is used to mint an extension to a given address. It takes in an address as an argument and returns a uint256 value. The function is declared as public, virtual, and non-reentrant, and requires an extension. It calls the _mintExtension() function, passing in the address and an empty string as arguments. This function is used to create a new extension token and transfer it to the specified address. (autogenerated documentation)
mintExtension(address,string) :
This function is an override of the mintExtension function from the ERC721Extension contract. It allows a user to mint a new ERC721 token with a given URI. The function takes in two parameters, an address to which the token should be minted and a string containing the URI of the token. It then calls the _mintExtension function from the ERC721Extension contract, passing in the two parameters, and returns the token ID of the newly minted token. (autogenerated documentation)
mintExtensionBatch(address,uint16) :
This function is used to mint a batch of tokens to a given address. It takes in two parameters, an address to send the tokens to and a count of how many tokens to mint. It then creates an array of tokenIds of the given size and iterates through the array, minting a token for each iteration and adding the tokenId to the array. Finally, it returns the array of tokenIds. (autogenerated documentation)
mintExtensionBatch(address) :
This function is used to mint multiple extensions at once. It takes an address and an array of strings (uris) as parameters. It then creates an array of uint256 tokens and iterates through the uris array, calling the _mintExtension function for each uri and storing the returned tokenId in the tokenIds array. Finally, it returns the tokenIds array. (autogenerated documentation)
_mintExtension(address,string) :
This function is used to mint a new token with an optional URI. It increments the token count, checks the mint permissions, and then safely mints the token to the specified address. If a URI is provided, it is stored in the tokenURIs mapping. Finally, it calls the postMintExtension function to complete the minting process. (autogenerated documentation)
tokenExtension(uint256) :
This function allows users to view the address of the token extension associated with a given token ID. It does this by first checking if the token ID exists, and if it does, it returns the address of the token extension associated with that token ID. (autogenerated documentation)
burn(uint256) :
This function burns a token with the given tokenId. It first checks if the caller is the owner or an approved address of the token. If so, it sets the owner of the token to address 0x0 and removes the token from the mapping of tokenIds to owners. Finally, it calls the _postBurn function to perform any additional operations related to burning the token. (autogenerated documentation)
setRoyalties(address,uint256[]) :
This function allows an admin to set royalties for a given set of receivers. The function takes two parameters, an array of addresses of the receivers and an array of basis points. The basis points represent the percentage of the total royalties that each receiver will receive. The function calls the _setRoyaltiesExtension function, passing in a zero address and the two arrays of parameters. (autogenerated documentation)
setRoyalties(uint256,address,uint256[]) :
This function allows an admin to set royalties for a given token. It takes in a token ID, an array of addresses to receive the royalties, and an array of basis points for each address. The function requires that the token ID exists, and then calls the _setRoyalties() function to set the royalties for the token. (autogenerated documentation)
setRoyaltiesExtension(address,address,uint256[]) :
This function sets a royalties extension contract for the current contract. It takes an address of the extension contract, an array of payable addresses of the receivers, and an array of basis points for each receiver as parameters. The function then calls the _setRoyaltiesExtension() internal function to set the royalties extension contract, receivers, and basis points. (autogenerated documentation)
getRoyalties(uint256) :
This function allows users to retrieve the royalties associated with a given token ID. It does this by first checking if the token ID exists, and if it does, it calls the _getRoyalties() function which returns an array of addresses and an array of uint256 values representing the royalties associated with the token ID. (autogenerated documentation)
getFees(uint256) :
This function is used to retrieve the fees associated with a given token ID. It first checks to make sure that the token ID exists, and then returns an array of addresses and an array of uint256 values that represent the fees associated with the token ID. (autogenerated documentation)
getFeeRecipients(uint256) :
This function gets the list of fee recipients for a given token ID. It first checks if the token ID exists, and if it does, it returns the list of royalty receivers associated with that token ID. (autogenerated documentation)
getFeeBps(uint256) :
This function gets the fee bps (basis points) for a given token ID. It does this by first checking if the token exists, and if it does, it returns the royalty BPS associated with the token ID. The royalty BPS is an array of uints that represent the fee bps for the token. (autogenerated documentation)
royaltyInfo(uint256,uint256) :
This function allows users to retrieve royalty information associated with a specific token ID. It takes two parameters, the token ID and a value, and returns a tuple containing the address of the royalty recipient and the amount of royalties associated with the token ID. The function first checks to make sure that the token ID exists, and then calls the _getRoyaltyInfo() internal function to retrieve the royalty information associated with the token ID. (autogenerated documentation)
tokenURI(uint256) :
This function is used to retrieve the URI associated with a given token ID. It requires that the token ID exists, and then calls the _tokenURI() function to retrieve the associated URI. (autogenerated documentation)

Get Cookin'
share iconShare

copy iconDownload Source
copy iconnpx cookbookdev i manifold-upgrable-erc721
copy icon

Recent Use

🍞 0xC555 downloaded

Last Publish

11/27/2022

Version

1.0.0

Cookbook is free.
Any contract you deploy is yours.
Your contract is owned and controlled by you.