diff --git a/constants.ts b/constants.ts index 5141f3844..b5cc13101 100644 --- a/constants.ts +++ b/constants.ts @@ -192,7 +192,7 @@ export const ERC725YDataKeys = { // keccak256('LSP4TokenSymbol') LSP4TokenSymbol: '0x2f0a68ab07768e01943a599e73362a0e17a63a72e94dd2e384d2c1d4db932756', - // kecca256('LSP4TokenType) + // keccak256('LSP4TokenType) LSP4TokenType: '0xe0261fa95db2eb3b5439bd033cda66d56b96f92f243a8228fd87550ed7bdfdb3', // keccak256('LSP4Metadata') diff --git a/contracts/LSP4DigitalAssetMetadata/LSP4Constants.sol b/contracts/LSP4DigitalAssetMetadata/LSP4Constants.sol index ce82f1eb2..fa9edc516 100644 --- a/contracts/LSP4DigitalAssetMetadata/LSP4Constants.sol +++ b/contracts/LSP4DigitalAssetMetadata/LSP4Constants.sol @@ -1,6 +1,12 @@ // SPDX-License-Identifier: Apache-2.0 pragma solidity ^0.8.4; +// Token types + +uint256 constant _LSP4_TOKEN_TYPE_TOKEN = 0; +uint256 constant _LSP4_TOKEN_TYPE_NFT = 1; +uint256 constant _LSP4_TOKEN_TYPE_COLLECTION = 2; + // --- ERC725Y entries // bytes10(keccak256('SupportedStandards')) + bytes2(0) + bytes20(keccak256('LSP4DigitalAsset')) diff --git a/tests/foundry/GasTests/execute/RestrictedController.sol b/tests/foundry/GasTests/execute/RestrictedController.sol index a7bf58cf0..d6a7497b0 100644 --- a/tests/foundry/GasTests/execute/RestrictedController.sol +++ b/tests/foundry/GasTests/execute/RestrictedController.sol @@ -10,6 +10,10 @@ import "../../../../contracts/Mocks/Tokens/LSP8Tester.sol"; import { _LSP1_UNIVERSAL_RECEIVER_DELEGATE_KEY } from "../../../../contracts/LSP1UniversalReceiver/LSP1Constants.sol"; +import { + _LSP4_TOKEN_TYPE_TOKEN, + _LSP4_TOKEN_TYPE_NFT +} from "../../../../contracts/LSP4DigitalAssetMetadata/LSP4Constants.sol"; import { _LSP6KEY_ADDRESSPERMISSIONS_PERMISSIONS_PREFIX, _PERMISSION_SUPER_SETDATA, @@ -442,7 +446,8 @@ contract ExecuteRestrictedController is UniversalProfileTestsHelper { "TestLSP8", "TSTLSP8", digitalAssetsOwner, - _LSP8_TOKENID_TYPE_NUMBER + _LSP8_TOKENID_TYPE_NUMBER, + _LSP4_TOKEN_TYPE_NFT ); bytes32 tokenID = bytes32(uint256(1)); @@ -467,7 +472,8 @@ contract ExecuteRestrictedController is UniversalProfileTestsHelper { digitalAsset = new LSP7Tester( "TestLSP7", "TSTLSP7", - digitalAssetsOwner + digitalAssetsOwner, + _LSP4_TOKEN_TYPE_TOKEN ); // mint 100 tokens to UniversalProfile diff --git a/tests/foundry/GasTests/execute/UnrestrictedController.sol b/tests/foundry/GasTests/execute/UnrestrictedController.sol index 49ca3b07a..f2fdcbc19 100644 --- a/tests/foundry/GasTests/execute/UnrestrictedController.sol +++ b/tests/foundry/GasTests/execute/UnrestrictedController.sol @@ -10,6 +10,10 @@ import "../../../../contracts/Mocks/Tokens/LSP8Tester.sol"; import { _LSP1_UNIVERSAL_RECEIVER_DELEGATE_KEY } from "../../../../contracts/LSP1UniversalReceiver/LSP1Constants.sol"; +import { + _LSP4_TOKEN_TYPE_TOKEN, + _LSP4_TOKEN_TYPE_NFT +} from "../../../../contracts/LSP4DigitalAssetMetadata/LSP4Constants.sol"; import { _LSP6KEY_ADDRESSPERMISSIONS_PERMISSIONS_PREFIX, _PERMISSION_SUPER_SETDATA, @@ -264,7 +268,8 @@ contract ExecuteUnrestrictedController is UniversalProfileTestsHelper { "TestLSP8", "TSTLSP8", digitalAssetsOwner, - _LSP8_TOKENID_TYPE_NUMBER + _LSP8_TOKENID_TYPE_NUMBER, + _LSP4_TOKEN_TYPE_NFT ); bytes32 tokenID = bytes32(uint256(1)); @@ -289,7 +294,8 @@ contract ExecuteUnrestrictedController is UniversalProfileTestsHelper { digitalAsset = new LSP7Tester( "TestLSP7", "TSTLSP7", - digitalAssetsOwner + digitalAssetsOwner, + _LSP4_TOKEN_TYPE_TOKEN ); // mint 100 tokens to UniversalProfile