From 49ed2a2797e242cbc034a0c7a9a4983d72e47171 Mon Sep 17 00:00:00 2001 From: Alex Saft Date: Fri, 14 Oct 2022 19:45:09 +0000 Subject: [PATCH] fix: hide mintWithTokenURI and temporary unhide mintBulk --- --- a/pallets/nonfungible/src/erc.rs +++ b/pallets/nonfungible/src/erc.rs @@ -510,7 +510,7 @@ /// @param to The new owner /// @param tokenId ID of the minted NFT /// @param tokenUri Token URI that would be stored in the NFT properties - #[solidity(/*hide,*/ rename_selector = "mintWithTokenURI")] + #[solidity(hide, rename_selector = "mintWithTokenURI")] #[weight(>::create_item())] fn mint_with_token_uri_check_id( &mut self, @@ -668,7 +668,7 @@ /// should be obtained with `nextTokenId` method /// @param to The new owner /// @param tokenIds IDs of the minted NFTs - #[solidity(hide)] + // #[solidity(hide)] #[weight(>::create_multiple_items(token_ids.len() as u32))] fn mint_bulk(&mut self, caller: caller, to: address, token_ids: Vec) -> Result { let caller = T::CrossAccountId::from_eth(caller); --- a/pallets/nonfungible/src/stubs/UniqueNFT.sol +++ b/pallets/nonfungible/src/stubs/UniqueNFT.sol @@ -500,26 +500,22 @@ return 0; } - /// @notice Function to mint token with the given tokenUri. - /// @dev `tokenId` should be obtained with `nextTokenId` method, - /// unlike standard, you can't specify it manually - /// @param to The new owner - /// @param tokenId ID of the minted NFT - /// @param tokenUri Token URI that would be stored in the NFT properties - /// @dev EVM selector for this function is: 0x50bb4e7f, - /// or in textual repr: mintWithTokenURI(address,uint256,string) - function mintWithTokenURI( - address to, - uint256 tokenId, - string memory tokenUri - ) public returns (bool) { - require(false, stub_error); - to; - tokenId; - tokenUri; - dummy = 0; - return false; - } + // /// @notice Function to mint token with the given tokenUri. + // /// @dev `tokenId` should be obtained with `nextTokenId` method, + // /// unlike standard, you can't specify it manually + // /// @param to The new owner + // /// @param tokenId ID of the minted NFT + // /// @param tokenUri Token URI that would be stored in the NFT properties + // /// @dev EVM selector for this function is: 0x50bb4e7f, + // /// or in textual repr: mintWithTokenURI(address,uint256,string) + // function mintWithTokenURI(address to, uint256 tokenId, string memory tokenUri) public returns (bool) { + // require(false, stub_error); + // to; + // tokenId; + // tokenUri; + // dummy = 0; + // return false; + // } /// @dev Not implemented /// @dev EVM selector for this function is: 0x7d64bcb4, @@ -590,20 +586,20 @@ return 0; } - // /// @notice Function to mint multiple tokens. - // /// @dev `tokenIds` should be an array of consecutive numbers and first number - // /// should be obtained with `nextTokenId` method - // /// @param to The new owner - // /// @param tokenIds IDs of the minted NFTs - // /// @dev EVM selector for this function is: 0x44a9945e, - // /// or in textual repr: mintBulk(address,uint256[]) - // function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) { - // require(false, stub_error); - // to; - // tokenIds; - // dummy = 0; - // return false; - // } + /// @notice Function to mint multiple tokens. + /// @dev `tokenIds` should be an array of consecutive numbers and first number + /// should be obtained with `nextTokenId` method + /// @param to The new owner + /// @param tokenIds IDs of the minted NFTs + /// @dev EVM selector for this function is: 0x44a9945e, + /// or in textual repr: mintBulk(address,uint256[]) + function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) { + require(false, stub_error); + to; + tokenIds; + dummy = 0; + return false; + } /// @notice Function to mint multiple tokens with the given tokenUris. /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive --- a/pallets/refungible/src/erc.rs +++ b/pallets/refungible/src/erc.rs @@ -536,7 +536,7 @@ /// @param to The new owner /// @param tokenId ID of the minted RFT /// @param tokenUri Token URI that would be stored in the RFT properties - #[solidity(/*hide,*/ rename_selector = "mintWithTokenURI")] + #[solidity(hide, rename_selector = "mintWithTokenURI")] #[weight(>::create_item())] fn mint_with_token_uri_check_id( &mut self, @@ -705,7 +705,7 @@ /// should be obtained with `nextTokenId` method /// @param to The new owner /// @param tokenIds IDs of the minted RFTs - #[solidity(hide)] + // #[solidity(hide)] #[weight(>::create_multiple_items(token_ids.len() as u32))] fn mint_bulk(&mut self, caller: caller, to: address, token_ids: Vec) -> Result { let caller = T::CrossAccountId::from_eth(caller); --- a/pallets/refungible/src/stubs/UniqueRefungible.sol +++ b/pallets/refungible/src/stubs/UniqueRefungible.sol @@ -498,26 +498,22 @@ return 0; } - /// @notice Function to mint token with the given tokenUri. - /// @dev `tokenId` should be obtained with `nextTokenId` method, - /// unlike standard, you can't specify it manually - /// @param to The new owner - /// @param tokenId ID of the minted RFT - /// @param tokenUri Token URI that would be stored in the RFT properties - /// @dev EVM selector for this function is: 0x50bb4e7f, - /// or in textual repr: mintWithTokenURI(address,uint256,string) - function mintWithTokenURI( - address to, - uint256 tokenId, - string memory tokenUri - ) public returns (bool) { - require(false, stub_error); - to; - tokenId; - tokenUri; - dummy = 0; - return false; - } + // /// @notice Function to mint token with the given tokenUri. + // /// @dev `tokenId` should be obtained with `nextTokenId` method, + // /// unlike standard, you can't specify it manually + // /// @param to The new owner + // /// @param tokenId ID of the minted RFT + // /// @param tokenUri Token URI that would be stored in the RFT properties + // /// @dev EVM selector for this function is: 0x50bb4e7f, + // /// or in textual repr: mintWithTokenURI(address,uint256,string) + // function mintWithTokenURI(address to, uint256 tokenId, string memory tokenUri) public returns (bool) { + // require(false, stub_error); + // to; + // tokenId; + // tokenUri; + // dummy = 0; + // return false; + // } /// @dev Not implemented /// @dev EVM selector for this function is: 0x7d64bcb4, @@ -590,20 +586,20 @@ return 0; } - // /// @notice Function to mint multiple tokens. - // /// @dev `tokenIds` should be an array of consecutive numbers and first number - // /// should be obtained with `nextTokenId` method - // /// @param to The new owner - // /// @param tokenIds IDs of the minted RFTs - // /// @dev EVM selector for this function is: 0x44a9945e, - // /// or in textual repr: mintBulk(address,uint256[]) - // function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) { - // require(false, stub_error); - // to; - // tokenIds; - // dummy = 0; - // return false; - // } + /// @notice Function to mint multiple tokens. + /// @dev `tokenIds` should be an array of consecutive numbers and first number + /// should be obtained with `nextTokenId` method + /// @param to The new owner + /// @param tokenIds IDs of the minted RFTs + /// @dev EVM selector for this function is: 0x44a9945e, + /// or in textual repr: mintBulk(address,uint256[]) + function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) { + require(false, stub_error); + to; + tokenIds; + dummy = 0; + return false; + } /// @notice Function to mint multiple tokens with the given tokenUris. /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive --- a/tests/src/eth/api/UniqueNFT.sol +++ b/tests/src/eth/api/UniqueNFT.sol @@ -332,19 +332,15 @@ /// or in textual repr: mintWithTokenURI(address,string) function mintWithTokenURI(address to, string memory tokenUri) external returns (uint256); - /// @notice Function to mint token with the given tokenUri. - /// @dev `tokenId` should be obtained with `nextTokenId` method, - /// unlike standard, you can't specify it manually - /// @param to The new owner - /// @param tokenId ID of the minted NFT - /// @param tokenUri Token URI that would be stored in the NFT properties - /// @dev EVM selector for this function is: 0x50bb4e7f, - /// or in textual repr: mintWithTokenURI(address,uint256,string) - function mintWithTokenURI( - address to, - uint256 tokenId, - string memory tokenUri - ) external returns (bool); + // /// @notice Function to mint token with the given tokenUri. + // /// @dev `tokenId` should be obtained with `nextTokenId` method, + // /// unlike standard, you can't specify it manually + // /// @param to The new owner + // /// @param tokenId ID of the minted NFT + // /// @param tokenUri Token URI that would be stored in the NFT properties + // /// @dev EVM selector for this function is: 0x50bb4e7f, + // /// or in textual repr: mintWithTokenURI(address,uint256,string) + // function mintWithTokenURI(address to, uint256 tokenId, string memory tokenUri) external returns (bool); /// @dev Not implemented /// @dev EVM selector for this function is: 0x7d64bcb4, @@ -389,14 +385,14 @@ /// or in textual repr: nextTokenId() function nextTokenId() external view returns (uint256); - // /// @notice Function to mint multiple tokens. - // /// @dev `tokenIds` should be an array of consecutive numbers and first number - // /// should be obtained with `nextTokenId` method - // /// @param to The new owner - // /// @param tokenIds IDs of the minted NFTs - // /// @dev EVM selector for this function is: 0x44a9945e, - // /// or in textual repr: mintBulk(address,uint256[]) - // function mintBulk(address to, uint256[] memory tokenIds) external returns (bool); + /// @notice Function to mint multiple tokens. + /// @dev `tokenIds` should be an array of consecutive numbers and first number + /// should be obtained with `nextTokenId` method + /// @param to The new owner + /// @param tokenIds IDs of the minted NFTs + /// @dev EVM selector for this function is: 0x44a9945e, + /// or in textual repr: mintBulk(address,uint256[]) + function mintBulk(address to, uint256[] memory tokenIds) external returns (bool); /// @notice Function to mint multiple tokens with the given tokenUris. /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive --- a/tests/src/eth/api/UniqueRefungible.sol +++ b/tests/src/eth/api/UniqueRefungible.sol @@ -330,19 +330,15 @@ /// or in textual repr: mintWithTokenURI(address,string) function mintWithTokenURI(address to, string memory tokenUri) external returns (uint256); - /// @notice Function to mint token with the given tokenUri. - /// @dev `tokenId` should be obtained with `nextTokenId` method, - /// unlike standard, you can't specify it manually - /// @param to The new owner - /// @param tokenId ID of the minted RFT - /// @param tokenUri Token URI that would be stored in the RFT properties - /// @dev EVM selector for this function is: 0x50bb4e7f, - /// or in textual repr: mintWithTokenURI(address,uint256,string) - function mintWithTokenURI( - address to, - uint256 tokenId, - string memory tokenUri - ) external returns (bool); + // /// @notice Function to mint token with the given tokenUri. + // /// @dev `tokenId` should be obtained with `nextTokenId` method, + // /// unlike standard, you can't specify it manually + // /// @param to The new owner + // /// @param tokenId ID of the minted RFT + // /// @param tokenUri Token URI that would be stored in the RFT properties + // /// @dev EVM selector for this function is: 0x50bb4e7f, + // /// or in textual repr: mintWithTokenURI(address,uint256,string) + // function mintWithTokenURI(address to, uint256 tokenId, string memory tokenUri) external returns (bool); /// @dev Not implemented /// @dev EVM selector for this function is: 0x7d64bcb4, @@ -389,14 +385,14 @@ /// or in textual repr: nextTokenId() function nextTokenId() external view returns (uint256); - // /// @notice Function to mint multiple tokens. - // /// @dev `tokenIds` should be an array of consecutive numbers and first number - // /// should be obtained with `nextTokenId` method - // /// @param to The new owner - // /// @param tokenIds IDs of the minted RFTs - // /// @dev EVM selector for this function is: 0x44a9945e, - // /// or in textual repr: mintBulk(address,uint256[]) - // function mintBulk(address to, uint256[] memory tokenIds) external returns (bool); + /// @notice Function to mint multiple tokens. + /// @dev `tokenIds` should be an array of consecutive numbers and first number + /// should be obtained with `nextTokenId` method + /// @param to The new owner + /// @param tokenIds IDs of the minted RFTs + /// @dev EVM selector for this function is: 0x44a9945e, + /// or in textual repr: mintBulk(address,uint256[]) + function mintBulk(address to, uint256[] memory tokenIds) external returns (bool); /// @notice Function to mint multiple tokens with the given tokenUris. /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive --- a/tests/src/eth/nonFungibleAbi.json +++ b/tests/src/eth/nonFungibleAbi.json @@ -269,6 +269,16 @@ { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, + { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } + ], + "name": "mintBulk", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "to", "type": "address" }, { "components": [ { "internalType": "uint256", "name": "field_0", "type": "uint256" }, @@ -291,17 +301,6 @@ ], "name": "mintWithTokenURI", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "to", "type": "address" }, - { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, - { "internalType": "string", "name": "tokenUri", "type": "string" } - ], - "name": "mintWithTokenURI", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "nonpayable", "type": "function" }, --- a/tests/src/eth/reFungibleAbi.json +++ b/tests/src/eth/reFungibleAbi.json @@ -269,6 +269,16 @@ { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, + { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" } + ], + "name": "mintBulk", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "to", "type": "address" }, { "components": [ { "internalType": "uint256", "name": "field_0", "type": "uint256" }, @@ -291,17 +301,6 @@ ], "name": "mintWithTokenURI", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "to", "type": "address" }, - { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, - { "internalType": "string", "name": "tokenUri", "type": "string" } - ], - "name": "mintWithTokenURI", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "nonpayable", "type": "function" }, -- gitstuff