From 99128dfd38e5b99773fc2131635168c2feb6897b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sami=20M=C3=A4kel=C3=A4?= Date: Wed, 16 Aug 2023 16:50:32 +0300 Subject: [PATCH 1/6] committing deploy --- .openzeppelin/polygon-mumbai.json | 1238 ++++++++++++++++++-- .openzeppelin/unknown-80001.json.public | 1422 ++++++++++++++++++++++- 2 files changed, 2513 insertions(+), 147 deletions(-) diff --git a/.openzeppelin/polygon-mumbai.json b/.openzeppelin/polygon-mumbai.json index e65d26ba..9a01695b 100644 --- a/.openzeppelin/polygon-mumbai.json +++ b/.openzeppelin/polygon-mumbai.json @@ -20,6 +20,11 @@ "txHash": "0xe2a1dc80975dcfb81952a8fa108e01c23d629eeabb8ad2a898c7cd57053bf413", "kind": "transparent" }, + { + "address": "0x65a79deE6B06cB3f3F50b635414bD20E8472b0A5", + "txHash": "0x3e1b7551156441cb59952fed483457f0058d81390bd492ce28dd8967528fd446", + "kind": "transparent" + }, { "address": "0x28fba8A6b0499Ed6c71FCaAA7fdc2F0a246E50fb", "txHash": "0xe1e2854a331a7cff7d8918cb860e48cdfd489203dd8324837063be7de893396f", @@ -251,12 +256,8 @@ "kind": "transparent" }, { - "address": "0x65a79deE6B06cB3f3F50b635414bD20E8472b0A5", - "kind": "transparent" - }, - { - "address": "0x17d059d9298278BB0B4eFAc41e93B3AEEE1517dE", - "txHash": "0x4aaf23198d7f5b12dd4bf1ff24505f24664009e1e6d32327eaa621c2aa3de084", + "address": "0x4D6cbf3168044aB6cBd851838a236f2FE8cD02DA", + "txHash": "0x9063228e7b2072949921ff3730ec2e58916fecfd2e6543bfcf4478128e67e6ad", "kind": "transparent" } ], @@ -638,7 +639,7 @@ "label": "provenanceRegistry", "offset": 0, "slot": "201", - "type": "t_struct(ProvenanceRegistryList)30009_storage", + "type": "t_struct(ProvenanceRegistryList)30940_storage", "contract": "ProvenanceRegistry", "src": "contracts/registry/ProvenanceRegistry.sol:56" }, @@ -646,7 +647,7 @@ "label": "didRegisterList", "offset": 0, "slot": "202", - "type": "t_struct(DIDRegisterList)29144_storage", + "type": "t_struct(DIDRegisterList)30075_storage", "contract": "DIDFactory", "src": "contracts/registry/DIDFactory.sol:27" }, @@ -670,7 +671,7 @@ "label": "erc1155", "offset": 0, "slot": "205", - "type": "t_contract(NFT1155Upgradeable)37332", + "type": "t_contract(NFT1155Upgradeable)38294", "contract": "DIDRegistry", "src": "contracts/registry/DIDRegistry.sol:35" }, @@ -678,7 +679,7 @@ "label": "erc721", "offset": 0, "slot": "206", - "type": "t_contract(NFT721Upgradeable)38327", + "type": "t_contract(NFT721Upgradeable)39289", "contract": "DIDRegistry", "src": "contracts/registry/DIDRegistry.sol:36" }, @@ -694,7 +695,7 @@ "label": "defaultRoyalties", "offset": 0, "slot": "208", - "type": "t_contract(StandardRoyalties)31336", + "type": "t_contract(StandardRoyalties)32267", "contract": "DIDRegistry", "src": "contracts/registry/DIDRegistry.sol:39" }, @@ -702,7 +703,7 @@ "label": "nvmConfig", "offset": 0, "slot": "209", - "type": "t_contract(INVMConfig)22577", + "type": "t_contract(INVMConfig)23508", "contract": "DIDRegistry", "src": "contracts/registry/DIDRegistry.sol:41" } @@ -736,23 +737,23 @@ "label": "bytes", "numberOfBytes": "32" }, - "t_contract(INVMConfig)22577": { + "t_contract(INVMConfig)23508": { "label": "contract INVMConfig", "numberOfBytes": "20" }, - "t_contract(IRoyaltyScheme)23811": { + "t_contract(IRoyaltyScheme)24742": { "label": "contract IRoyaltyScheme", "numberOfBytes": "20" }, - "t_contract(NFT1155Upgradeable)37332": { + "t_contract(NFT1155Upgradeable)38294": { "label": "contract NFT1155Upgradeable", "numberOfBytes": "20" }, - "t_contract(NFT721Upgradeable)38327": { + "t_contract(NFT721Upgradeable)39289": { "label": "contract NFT721Upgradeable", "numberOfBytes": "20" }, - "t_contract(StandardRoyalties)31336": { + "t_contract(StandardRoyalties)32267": { "label": "contract StandardRoyalties", "numberOfBytes": "20" }, @@ -764,11 +765,11 @@ "label": "mapping(bytes32 => mapping(address => bool))", "numberOfBytes": "32" }, - "t_mapping(t_bytes32,t_struct(DIDRegister)29138_storage)": { + "t_mapping(t_bytes32,t_struct(DIDRegister)30069_storage)": { "label": "mapping(bytes32 => struct DIDRegistryLibrary.DIDRegister)", "numberOfBytes": "32" }, - "t_mapping(t_bytes32,t_struct(Provenance)30003_storage)": { + "t_mapping(t_bytes32,t_struct(Provenance)30934_storage)": { "label": "mapping(bytes32 => struct ProvenanceRegistry.Provenance)", "numberOfBytes": "32" }, @@ -780,7 +781,7 @@ "label": "string", "numberOfBytes": "32" }, - "t_struct(DIDRegister)29138_storage": { + "t_struct(DIDRegister)30069_storage": { "label": "struct DIDRegistryLibrary.DIDRegister", "members": [ { @@ -857,7 +858,7 @@ }, { "label": "royaltyScheme", - "type": "t_contract(IRoyaltyScheme)23811", + "type": "t_contract(IRoyaltyScheme)24742", "offset": 0, "slot": "10" }, @@ -870,19 +871,19 @@ ], "numberOfBytes": "384" }, - "t_struct(DIDRegisterList)29144_storage": { + "t_struct(DIDRegisterList)30075_storage": { "label": "struct DIDRegistryLibrary.DIDRegisterList", "members": [ { "label": "didRegisters", - "type": "t_mapping(t_bytes32,t_struct(DIDRegister)29138_storage)", + "type": "t_mapping(t_bytes32,t_struct(DIDRegister)30069_storage)", "offset": 0, "slot": "0" } ], "numberOfBytes": "32" }, - "t_struct(Provenance)30003_storage": { + "t_struct(Provenance)30934_storage": { "label": "struct ProvenanceRegistry.Provenance", "members": [ { @@ -942,12 +943,12 @@ ], "numberOfBytes": "256" }, - "t_struct(ProvenanceRegistryList)30009_storage": { + "t_struct(ProvenanceRegistryList)30940_storage": { "label": "struct ProvenanceRegistry.ProvenanceRegistryList", "members": [ { "label": "list", - "type": "t_mapping(t_bytes32,t_struct(Provenance)30003_storage)", + "type": "t_mapping(t_bytes32,t_struct(Provenance)30934_storage)", "offset": 0, "slot": "0" } @@ -1010,7 +1011,7 @@ "label": "registry", "offset": 2, "slot": "0", - "type": "t_contract(DIDRegistry)28438", + "type": "t_contract(DIDRegistry)30033", "contract": "StandardRoyalties", "src": "contracts/royalties/StandardRoyalties.sol:18" }, @@ -1032,7 +1033,7 @@ "label": "bytes32", "numberOfBytes": "32" }, - "t_contract(DIDRegistry)28438": { + "t_contract(DIDRegistry)30033": { "label": "contract DIDRegistry", "numberOfBytes": "20" }, @@ -3046,7 +3047,7 @@ "label": "conditionStoreManager", "offset": 0, "slot": "101", - "type": "t_contract(ConditionStoreManager)14081", + "type": "t_contract(ConditionStoreManager)13643", "contract": "Condition", "src": "contracts/conditions/Condition.sol:25" }, @@ -3084,7 +3085,7 @@ "label": "bool", "numberOfBytes": "1" }, - "t_contract(ConditionStoreManager)14081": { + "t_contract(ConditionStoreManager)13643": { "label": "contract ConditionStoreManager", "numberOfBytes": "20" }, @@ -3097,11 +3098,7 @@ "numberOfBytes": "1" } } - }, - "allAddresses": [ - "0xd165F4d9EBF284b0Cb73443B9725e4472a38867C", - "0xd43ED4494E2fe26D668DF291f695D0622425D02E" - ] + } }, "82f3e1b042b43c6a4e2442f9406e0016233bdda86ba4be141fb90f4280c49c96": { "address": "0x25DF636d634549e0AcC6f086e2de7593dC57B08d", @@ -7251,9 +7248,8 @@ } } }, - "85a565a5bf5635513c02d5f61e9f22c27f1de21da1225d92483c74e67042f5fc": { - "address": "0xD436f64641bC72faf4fbeC3fA41843e07bc407d4", - "txHash": "0x0e49f9ae0dcafec4db2ae25885df9d18171b2fdaead98045acde70c83500f512", + "a7767b02d7d6d34e880523d61326f1f255d473464c2e0872fc185219d08b63d2": { + "address": "0xd43ED4494E2fe26D668DF291f695D0622425D02E", "layout": { "solcVersion": "0.8.17", "storage": [ @@ -7307,60 +7303,36 @@ "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" }, { - "label": "_name", + "label": "_balances", "offset": 0, "slot": "151", - "type": "t_string_storage", - "contract": "ERC721Upgradeable", - "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25" + "type": "t_mapping(t_uint256,t_mapping(t_address,t_uint256))", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:25" }, { - "label": "_symbol", + "label": "_operatorApprovals", "offset": 0, "slot": "152", - "type": "t_string_storage", - "contract": "ERC721Upgradeable", - "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28" + "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:28" }, { - "label": "_owners", + "label": "_uri", "offset": 0, "slot": "153", - "type": "t_mapping(t_uint256,t_address)", - "contract": "ERC721Upgradeable", - "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31" - }, - { - "label": "_balances", - "offset": 0, - "slot": "154", - "type": "t_mapping(t_address,t_uint256)", - "contract": "ERC721Upgradeable", - "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34" - }, - { - "label": "_tokenApprovals", - "offset": 0, - "slot": "155", - "type": "t_mapping(t_uint256,t_address)", - "contract": "ERC721Upgradeable", - "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37" - }, - { - "label": "_operatorApprovals", - "offset": 0, - "slot": "156", - "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", - "contract": "ERC721Upgradeable", - "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40" + "type": "t_string_storage", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:31" }, { "label": "__gap", "offset": 0, - "slot": "157", - "type": "t_array(t_uint256)44_storage", - "contract": "ERC721Upgradeable", - "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:517" + "slot": "154", + "type": "t_array(t_uint256)47_storage", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:528" }, { "label": "_roles", @@ -7382,7 +7354,7 @@ "label": "_royalties", "offset": 0, "slot": "251", - "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)35838_storage)", + "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)", "contract": "NFTBase", "src": "contracts/token/NFTBase.sol:56" }, @@ -7390,7 +7362,7 @@ "label": "_nftAttributes", "offset": 0, "slot": "252", - "type": "t_mapping(t_uint256,t_struct(NFTAttributes)35847_storage)", + "type": "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)", "contract": "NFTBase", "src": "contracts/token/NFTBase.sol:58" }, @@ -7419,36 +7391,28 @@ "src": "contracts/token/NFTBase.sol:67" }, { - "label": "_nftContractCap", + "label": "name", "offset": 0, "slot": "256", - "type": "t_uint256", - "contract": "NFT721Upgradeable", - "src": "contracts/token/erc721/NFT721Upgradeable.sol:19" + "type": "t_string_storage", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:17" }, { - "label": "nftRegistry", + "label": "symbol", "offset": 0, "slot": "257", - "type": "t_contract(IExternalRegistry)23771", - "contract": "NFT721Upgradeable", - "src": "contracts/token/erc721/NFT721Upgradeable.sol:21" + "type": "t_string_storage", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:20" }, { - "label": "_counterMinted", + "label": "nftRegistry", "offset": 0, "slot": "258", - "type": "t_struct(Counter)8119_storage", - "contract": "NFT721Upgradeable", - "src": "contracts/token/erc721/NFT721Upgradeable.sol:26" - }, - { - "label": "_tokens", - "offset": 0, - "slot": "259", - "type": "t_mapping(t_address,t_array(t_struct(MintedTokens)37345_storage)dyn_storage)", - "contract": "NFT721SubscriptionUpgradeable", - "src": "contracts/token/erc721/NFT721SubscriptionUpgradeable.sol:17" + "type": "t_contract(IExternalRegistry)24702", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:22" } ], "types": { @@ -7456,13 +7420,9 @@ "label": "address", "numberOfBytes": "20" }, - "t_array(t_struct(MintedTokens)37345_storage)dyn_storage": { - "label": "struct NFT721SubscriptionUpgradeable.MintedTokens[]", - "numberOfBytes": "32" - }, - "t_array(t_uint256)44_storage": { - "label": "uint256[44]", - "numberOfBytes": "1408" + "t_array(t_uint256)47_storage": { + "label": "uint256[47]", + "numberOfBytes": "1504" }, "t_array(t_uint256)49_storage": { "label": "uint256[49]", @@ -7480,14 +7440,10 @@ "label": "bytes32", "numberOfBytes": "32" }, - "t_contract(IExternalRegistry)23771": { + "t_contract(IExternalRegistry)24702": { "label": "contract IExternalRegistry", "numberOfBytes": "20" }, - "t_mapping(t_address,t_array(t_struct(MintedTokens)37345_storage)dyn_storage)": { - "label": "mapping(address => struct NFT721SubscriptionUpgradeable.MintedTokens[])", - "numberOfBytes": "32" - }, "t_mapping(t_address,t_bool)": { "label": "mapping(address => bool)", "numberOfBytes": "32" @@ -7504,15 +7460,15 @@ "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", "numberOfBytes": "32" }, - "t_mapping(t_uint256,t_address)": { - "label": "mapping(uint256 => address)", + "t_mapping(t_uint256,t_mapping(t_address,t_uint256))": { + "label": "mapping(uint256 => mapping(address => uint256))", "numberOfBytes": "32" }, - "t_mapping(t_uint256,t_struct(NFTAttributes)35847_storage)": { + "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)": { "label": "mapping(uint256 => struct NFTBase.NFTAttributes)", "numberOfBytes": "32" }, - "t_mapping(t_uint256,t_struct(RoyaltyInfo)35838_storage)": { + "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)": { "label": "mapping(uint256 => struct NFTBase.RoyaltyInfo)", "numberOfBytes": "32" }, @@ -7520,23 +7476,1055 @@ "label": "string", "numberOfBytes": "32" }, - "t_struct(Counter)8119_storage": { - "label": "struct CountersUpgradeable.Counter", + "t_struct(NFTAttributes)36788_storage": { + "label": "struct NFTBase.NFTAttributes", "members": [ { - "label": "_value", + "label": "nftInitialized", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "nftSupply", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintCap", "type": "t_uint256", "offset": 0, + "slot": "2" + }, + { + "label": "nftURI", + "type": "t_string_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(RoleData)2646_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" } ], - "numberOfBytes": "32" + "numberOfBytes": "64" }, - "t_struct(MintedTokens)37345_storage": { - "label": "struct NFT721SubscriptionUpgradeable.MintedTokens", + "t_struct(RoyaltyInfo)36779_storage": { + "label": "struct NFTBase.RoyaltyInfo", "members": [ { - "label": "tokenId", + "label": "receiver", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "royaltyAmount", + "type": "t_uint256", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + } + } + }, + "3c3f22ec4df5181d538b70f3b6e709f0b379e6f5798c71bbfa4b67eeed34ed5b": { + "address": "0xbFfaBD088F107F8ec5a5D93ed956591aB246BBAb", + "layout": { + "solcVersion": "0.8.17", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "__gap", + "offset": 0, + "slot": "101", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_name", + "offset": 0, + "slot": "151", + "type": "t_string_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25" + }, + { + "label": "_symbol", + "offset": 0, + "slot": "152", + "type": "t_string_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28" + }, + { + "label": "_owners", + "offset": 0, + "slot": "153", + "type": "t_mapping(t_uint256,t_address)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31" + }, + { + "label": "_balances", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34" + }, + { + "label": "_tokenApprovals", + "offset": 0, + "slot": "155", + "type": "t_mapping(t_uint256,t_address)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37" + }, + { + "label": "_operatorApprovals", + "offset": 0, + "slot": "156", + "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40" + }, + { + "label": "__gap", + "offset": 0, + "slot": "157", + "type": "t_array(t_uint256)44_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:517" + }, + { + "label": "_roles", + "offset": 0, + "slot": "201", + "type": "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61" + }, + { + "label": "__gap", + "offset": 0, + "slot": "202", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259" + }, + { + "label": "_royalties", + "offset": 0, + "slot": "251", + "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:56" + }, + { + "label": "_nftAttributes", + "offset": 0, + "slot": "252", + "type": "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:58" + }, + { + "label": "_expiration", + "offset": 0, + "slot": "253", + "type": "t_mapping(t_address,t_uint256)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:62" + }, + { + "label": "_contractMetadataUri", + "offset": 0, + "slot": "254", + "type": "t_string_storage", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:65" + }, + { + "label": "nvmConfig", + "offset": 0, + "slot": "255", + "type": "t_address", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:67" + }, + { + "label": "_nftContractCap", + "offset": 0, + "slot": "256", + "type": "t_uint256", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:19" + }, + { + "label": "nftRegistry", + "offset": 0, + "slot": "257", + "type": "t_contract(IExternalRegistry)24702", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:21" + }, + { + "label": "_counterMinted", + "offset": 0, + "slot": "258", + "type": "t_struct(Counter)8119_storage", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:26" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)44_storage": { + "label": "uint256[44]", + "numberOfBytes": "1408" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_contract(IExternalRegistry)24702": { + "label": "contract IExternalRegistry", + "numberOfBytes": "20" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_mapping(t_address,t_bool))": { + "label": "mapping(address => mapping(address => bool))", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_address)": { + "label": "mapping(uint256 => address)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)": { + "label": "mapping(uint256 => struct NFTBase.NFTAttributes)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)": { + "label": "mapping(uint256 => struct NFTBase.RoyaltyInfo)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Counter)8119_storage": { + "label": "struct CountersUpgradeable.Counter", + "members": [ + { + "label": "_value", + "type": "t_uint256", + "offset": 0, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(NFTAttributes)36788_storage": { + "label": "struct NFTBase.NFTAttributes", + "members": [ + { + "label": "nftInitialized", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "nftSupply", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintCap", + "type": "t_uint256", + "offset": 0, + "slot": "2" + }, + { + "label": "nftURI", + "type": "t_string_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(RoleData)2646_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_struct(RoyaltyInfo)36779_storage": { + "label": "struct NFTBase.RoyaltyInfo", + "members": [ + { + "label": "receiver", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "royaltyAmount", + "type": "t_uint256", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + } + } + }, + "85a565a5bf5635513c02d5f61e9f22c27f1de21da1225d92483c74e67042f5fc": { + "address": "0xD436f64641bC72faf4fbeC3fA41843e07bc407d4", + "layout": { + "solcVersion": "0.8.17", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "__gap", + "offset": 0, + "slot": "101", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_name", + "offset": 0, + "slot": "151", + "type": "t_string_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25" + }, + { + "label": "_symbol", + "offset": 0, + "slot": "152", + "type": "t_string_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28" + }, + { + "label": "_owners", + "offset": 0, + "slot": "153", + "type": "t_mapping(t_uint256,t_address)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31" + }, + { + "label": "_balances", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34" + }, + { + "label": "_tokenApprovals", + "offset": 0, + "slot": "155", + "type": "t_mapping(t_uint256,t_address)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37" + }, + { + "label": "_operatorApprovals", + "offset": 0, + "slot": "156", + "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40" + }, + { + "label": "__gap", + "offset": 0, + "slot": "157", + "type": "t_array(t_uint256)44_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:517" + }, + { + "label": "_roles", + "offset": 0, + "slot": "201", + "type": "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61" + }, + { + "label": "__gap", + "offset": 0, + "slot": "202", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259" + }, + { + "label": "_royalties", + "offset": 0, + "slot": "251", + "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:56" + }, + { + "label": "_nftAttributes", + "offset": 0, + "slot": "252", + "type": "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:58" + }, + { + "label": "_expiration", + "offset": 0, + "slot": "253", + "type": "t_mapping(t_address,t_uint256)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:62" + }, + { + "label": "_contractMetadataUri", + "offset": 0, + "slot": "254", + "type": "t_string_storage", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:65" + }, + { + "label": "nvmConfig", + "offset": 0, + "slot": "255", + "type": "t_address", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:67" + }, + { + "label": "_nftContractCap", + "offset": 0, + "slot": "256", + "type": "t_uint256", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:19" + }, + { + "label": "nftRegistry", + "offset": 0, + "slot": "257", + "type": "t_contract(IExternalRegistry)24702", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:21" + }, + { + "label": "_counterMinted", + "offset": 0, + "slot": "258", + "type": "t_struct(Counter)8119_storage", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:26" + }, + { + "label": "_tokens", + "offset": 0, + "slot": "259", + "type": "t_mapping(t_address,t_array(t_struct(MintedTokens)38307_storage)dyn_storage)", + "contract": "NFT721SubscriptionUpgradeable", + "src": "contracts/token/erc721/NFT721SubscriptionUpgradeable.sol:17" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_struct(MintedTokens)38307_storage)dyn_storage": { + "label": "struct NFT721SubscriptionUpgradeable.MintedTokens[]", + "numberOfBytes": "32" + }, + "t_array(t_uint256)44_storage": { + "label": "uint256[44]", + "numberOfBytes": "1408" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_contract(IExternalRegistry)24702": { + "label": "contract IExternalRegistry", + "numberOfBytes": "20" + }, + "t_mapping(t_address,t_array(t_struct(MintedTokens)38307_storage)dyn_storage)": { + "label": "mapping(address => struct NFT721SubscriptionUpgradeable.MintedTokens[])", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_mapping(t_address,t_bool))": { + "label": "mapping(address => mapping(address => bool))", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_address)": { + "label": "mapping(uint256 => address)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)": { + "label": "mapping(uint256 => struct NFTBase.NFTAttributes)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)": { + "label": "mapping(uint256 => struct NFTBase.RoyaltyInfo)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Counter)8119_storage": { + "label": "struct CountersUpgradeable.Counter", + "members": [ + { + "label": "_value", + "type": "t_uint256", + "offset": 0, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(MintedTokens)38307_storage": { + "label": "struct NFT721SubscriptionUpgradeable.MintedTokens", + "members": [ + { + "label": "tokenId", + "type": "t_uint256", + "offset": 0, + "slot": "0" + }, + { + "label": "expirationBlock", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintBlock", + "type": "t_uint256", + "offset": 0, + "slot": "2" + } + ], + "numberOfBytes": "96" + }, + "t_struct(NFTAttributes)36788_storage": { + "label": "struct NFTBase.NFTAttributes", + "members": [ + { + "label": "nftInitialized", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "nftSupply", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintCap", + "type": "t_uint256", + "offset": 0, + "slot": "2" + }, + { + "label": "nftURI", + "type": "t_string_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(RoleData)2646_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_struct(RoyaltyInfo)36779_storage": { + "label": "struct NFTBase.RoyaltyInfo", + "members": [ + { + "label": "receiver", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "royaltyAmount", + "type": "t_uint256", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + } + } + }, + "111ec6bc6b672b5dd8ef2ca5f73c5099fd0ed1d0bc138173fd9fd9e149729e94": { + "address": "0x6a03649699EbCA0F50Ab4E3bCB77ea14C5720B5B", + "txHash": "0x5587e5e3d2515febfc5d98ee8944fe1cba8ed993ecc8dd6d8dc62039bd107f01", + "layout": { + "solcVersion": "0.8.17", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "__gap", + "offset": 0, + "slot": "101", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_balances", + "offset": 0, + "slot": "151", + "type": "t_mapping(t_uint256,t_mapping(t_address,t_uint256))", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:25" + }, + { + "label": "_operatorApprovals", + "offset": 0, + "slot": "152", + "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:28" + }, + { + "label": "_uri", + "offset": 0, + "slot": "153", + "type": "t_string_storage", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:31" + }, + { + "label": "__gap", + "offset": 0, + "slot": "154", + "type": "t_array(t_uint256)47_storage", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:528" + }, + { + "label": "_roles", + "offset": 0, + "slot": "201", + "type": "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61" + }, + { + "label": "__gap", + "offset": 0, + "slot": "202", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259" + }, + { + "label": "_royalties", + "offset": 0, + "slot": "251", + "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:56" + }, + { + "label": "_nftAttributes", + "offset": 0, + "slot": "252", + "type": "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:58" + }, + { + "label": "_expiration", + "offset": 0, + "slot": "253", + "type": "t_mapping(t_address,t_uint256)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:62" + }, + { + "label": "_contractMetadataUri", + "offset": 0, + "slot": "254", + "type": "t_string_storage", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:65" + }, + { + "label": "nvmConfig", + "offset": 0, + "slot": "255", + "type": "t_address", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:67" + }, + { + "label": "name", + "offset": 0, + "slot": "256", + "type": "t_string_storage", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:17" + }, + { + "label": "symbol", + "offset": 0, + "slot": "257", + "type": "t_string_storage", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:20" + }, + { + "label": "nftRegistry", + "offset": 0, + "slot": "258", + "type": "t_contract(IExternalRegistry)24702", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:22" + }, + { + "label": "_tokens", + "offset": 0, + "slot": "259", + "type": "t_mapping(t_bytes32,t_array(t_struct(MintedTokens)37146_storage)dyn_storage)", + "contract": "NFT1155SubscriptionUpgradeable", + "src": "contracts/token/erc1155/NFT1155SubscriptionUpgradeable.sol:17" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_struct(MintedTokens)37146_storage)dyn_storage": { + "label": "struct NFT1155SubscriptionUpgradeable.MintedTokens[]", + "numberOfBytes": "32" + }, + "t_array(t_uint256)47_storage": { + "label": "uint256[47]", + "numberOfBytes": "1504" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_contract(IExternalRegistry)24702": { + "label": "contract IExternalRegistry", + "numberOfBytes": "20" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_mapping(t_address,t_bool))": { + "label": "mapping(address => mapping(address => bool))", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_array(t_struct(MintedTokens)37146_storage)dyn_storage)": { + "label": "mapping(bytes32 => struct NFT1155SubscriptionUpgradeable.MintedTokens[])", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_mapping(t_address,t_uint256))": { + "label": "mapping(uint256 => mapping(address => uint256))", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)": { + "label": "mapping(uint256 => struct NFTBase.NFTAttributes)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)": { + "label": "mapping(uint256 => struct NFTBase.RoyaltyInfo)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(MintedTokens)37146_storage": { + "label": "struct NFT1155SubscriptionUpgradeable.MintedTokens", + "members": [ + { + "label": "amountMinted", "type": "t_uint256", "offset": 0, "slot": "0" @@ -7556,7 +8544,7 @@ ], "numberOfBytes": "96" }, - "t_struct(NFTAttributes)35847_storage": { + "t_struct(NFTAttributes)36788_storage": { "label": "struct NFTBase.NFTAttributes", "members": [ { @@ -7604,7 +8592,7 @@ ], "numberOfBytes": "64" }, - "t_struct(RoyaltyInfo)35838_storage": { + "t_struct(RoyaltyInfo)36779_storage": { "label": "struct NFTBase.RoyaltyInfo", "members": [ { diff --git a/.openzeppelin/unknown-80001.json.public b/.openzeppelin/unknown-80001.json.public index 7cbfd63a..9a01695b 100644 --- a/.openzeppelin/unknown-80001.json.public +++ b/.openzeppelin/unknown-80001.json.public @@ -254,6 +254,11 @@ "address": "0xcA392496fD4B2bE33e278198b53555a63B38dfeB", "txHash": "0xa8e4696a2c27a4314a0e2bad200bd1ac52f8befe1227fa72f7a59208717a9890", "kind": "transparent" + }, + { + "address": "0x4D6cbf3168044aB6cBd851838a236f2FE8cD02DA", + "txHash": "0x9063228e7b2072949921ff3730ec2e58916fecfd2e6543bfcf4478128e67e6ad", + "kind": "transparent" } ], "impls": { @@ -634,7 +639,7 @@ "label": "provenanceRegistry", "offset": 0, "slot": "201", - "type": "t_struct(ProvenanceRegistryList)29345_storage", + "type": "t_struct(ProvenanceRegistryList)30940_storage", "contract": "ProvenanceRegistry", "src": "contracts/registry/ProvenanceRegistry.sol:56" }, @@ -642,7 +647,7 @@ "label": "didRegisterList", "offset": 0, "slot": "202", - "type": "t_struct(DIDRegisterList)28480_storage", + "type": "t_struct(DIDRegisterList)30075_storage", "contract": "DIDFactory", "src": "contracts/registry/DIDFactory.sol:27" }, @@ -666,7 +671,7 @@ "label": "erc1155", "offset": 0, "slot": "205", - "type": "t_contract(NFT1155Upgradeable)35709", + "type": "t_contract(NFT1155Upgradeable)38294", "contract": "DIDRegistry", "src": "contracts/registry/DIDRegistry.sol:35" }, @@ -674,7 +679,7 @@ "label": "erc721", "offset": 0, "slot": "206", - "type": "t_contract(NFT721Upgradeable)36392", + "type": "t_contract(NFT721Upgradeable)39289", "contract": "DIDRegistry", "src": "contracts/registry/DIDRegistry.sol:36" }, @@ -690,7 +695,7 @@ "label": "defaultRoyalties", "offset": 0, "slot": "208", - "type": "t_contract(StandardRoyalties)30672", + "type": "t_contract(StandardRoyalties)32267", "contract": "DIDRegistry", "src": "contracts/registry/DIDRegistry.sol:39" }, @@ -698,7 +703,7 @@ "label": "nvmConfig", "offset": 0, "slot": "209", - "type": "t_contract(INVMConfig)22135", + "type": "t_contract(INVMConfig)23508", "contract": "DIDRegistry", "src": "contracts/registry/DIDRegistry.sol:41" } @@ -732,23 +737,23 @@ "label": "bytes", "numberOfBytes": "32" }, - "t_contract(INVMConfig)22135": { + "t_contract(INVMConfig)23508": { "label": "contract INVMConfig", "numberOfBytes": "20" }, - "t_contract(IRoyaltyScheme)23369": { + "t_contract(IRoyaltyScheme)24742": { "label": "contract IRoyaltyScheme", "numberOfBytes": "20" }, - "t_contract(NFT1155Upgradeable)35709": { + "t_contract(NFT1155Upgradeable)38294": { "label": "contract NFT1155Upgradeable", "numberOfBytes": "20" }, - "t_contract(NFT721Upgradeable)36392": { + "t_contract(NFT721Upgradeable)39289": { "label": "contract NFT721Upgradeable", "numberOfBytes": "20" }, - "t_contract(StandardRoyalties)30672": { + "t_contract(StandardRoyalties)32267": { "label": "contract StandardRoyalties", "numberOfBytes": "20" }, @@ -760,11 +765,11 @@ "label": "mapping(bytes32 => mapping(address => bool))", "numberOfBytes": "32" }, - "t_mapping(t_bytes32,t_struct(DIDRegister)28474_storage)": { + "t_mapping(t_bytes32,t_struct(DIDRegister)30069_storage)": { "label": "mapping(bytes32 => struct DIDRegistryLibrary.DIDRegister)", "numberOfBytes": "32" }, - "t_mapping(t_bytes32,t_struct(Provenance)29339_storage)": { + "t_mapping(t_bytes32,t_struct(Provenance)30934_storage)": { "label": "mapping(bytes32 => struct ProvenanceRegistry.Provenance)", "numberOfBytes": "32" }, @@ -776,7 +781,7 @@ "label": "string", "numberOfBytes": "32" }, - "t_struct(DIDRegister)28474_storage": { + "t_struct(DIDRegister)30069_storage": { "label": "struct DIDRegistryLibrary.DIDRegister", "members": [ { @@ -853,7 +858,7 @@ }, { "label": "royaltyScheme", - "type": "t_contract(IRoyaltyScheme)23369", + "type": "t_contract(IRoyaltyScheme)24742", "offset": 0, "slot": "10" }, @@ -866,19 +871,19 @@ ], "numberOfBytes": "384" }, - "t_struct(DIDRegisterList)28480_storage": { + "t_struct(DIDRegisterList)30075_storage": { "label": "struct DIDRegistryLibrary.DIDRegisterList", "members": [ { "label": "didRegisters", - "type": "t_mapping(t_bytes32,t_struct(DIDRegister)28474_storage)", + "type": "t_mapping(t_bytes32,t_struct(DIDRegister)30069_storage)", "offset": 0, "slot": "0" } ], "numberOfBytes": "32" }, - "t_struct(Provenance)29339_storage": { + "t_struct(Provenance)30934_storage": { "label": "struct ProvenanceRegistry.Provenance", "members": [ { @@ -938,12 +943,12 @@ ], "numberOfBytes": "256" }, - "t_struct(ProvenanceRegistryList)29345_storage": { + "t_struct(ProvenanceRegistryList)30940_storage": { "label": "struct ProvenanceRegistry.ProvenanceRegistryList", "members": [ { "label": "list", - "type": "t_mapping(t_bytes32,t_struct(Provenance)29339_storage)", + "type": "t_mapping(t_bytes32,t_struct(Provenance)30934_storage)", "offset": 0, "slot": "0" } @@ -1006,7 +1011,7 @@ "label": "registry", "offset": 2, "slot": "0", - "type": "t_contract(DIDRegistry)28438", + "type": "t_contract(DIDRegistry)30033", "contract": "StandardRoyalties", "src": "contracts/royalties/StandardRoyalties.sol:18" }, @@ -1028,7 +1033,7 @@ "label": "bytes32", "numberOfBytes": "32" }, - "t_contract(DIDRegistry)28438": { + "t_contract(DIDRegistry)30033": { "label": "contract DIDRegistry", "numberOfBytes": "20" }, @@ -7242,6 +7247,1379 @@ } } } + }, + "a7767b02d7d6d34e880523d61326f1f255d473464c2e0872fc185219d08b63d2": { + "address": "0xd43ED4494E2fe26D668DF291f695D0622425D02E", + "layout": { + "solcVersion": "0.8.17", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "__gap", + "offset": 0, + "slot": "101", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_balances", + "offset": 0, + "slot": "151", + "type": "t_mapping(t_uint256,t_mapping(t_address,t_uint256))", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:25" + }, + { + "label": "_operatorApprovals", + "offset": 0, + "slot": "152", + "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:28" + }, + { + "label": "_uri", + "offset": 0, + "slot": "153", + "type": "t_string_storage", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:31" + }, + { + "label": "__gap", + "offset": 0, + "slot": "154", + "type": "t_array(t_uint256)47_storage", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:528" + }, + { + "label": "_roles", + "offset": 0, + "slot": "201", + "type": "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61" + }, + { + "label": "__gap", + "offset": 0, + "slot": "202", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259" + }, + { + "label": "_royalties", + "offset": 0, + "slot": "251", + "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:56" + }, + { + "label": "_nftAttributes", + "offset": 0, + "slot": "252", + "type": "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:58" + }, + { + "label": "_expiration", + "offset": 0, + "slot": "253", + "type": "t_mapping(t_address,t_uint256)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:62" + }, + { + "label": "_contractMetadataUri", + "offset": 0, + "slot": "254", + "type": "t_string_storage", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:65" + }, + { + "label": "nvmConfig", + "offset": 0, + "slot": "255", + "type": "t_address", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:67" + }, + { + "label": "name", + "offset": 0, + "slot": "256", + "type": "t_string_storage", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:17" + }, + { + "label": "symbol", + "offset": 0, + "slot": "257", + "type": "t_string_storage", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:20" + }, + { + "label": "nftRegistry", + "offset": 0, + "slot": "258", + "type": "t_contract(IExternalRegistry)24702", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:22" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)47_storage": { + "label": "uint256[47]", + "numberOfBytes": "1504" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_contract(IExternalRegistry)24702": { + "label": "contract IExternalRegistry", + "numberOfBytes": "20" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_mapping(t_address,t_bool))": { + "label": "mapping(address => mapping(address => bool))", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_mapping(t_address,t_uint256))": { + "label": "mapping(uint256 => mapping(address => uint256))", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)": { + "label": "mapping(uint256 => struct NFTBase.NFTAttributes)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)": { + "label": "mapping(uint256 => struct NFTBase.RoyaltyInfo)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(NFTAttributes)36788_storage": { + "label": "struct NFTBase.NFTAttributes", + "members": [ + { + "label": "nftInitialized", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "nftSupply", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintCap", + "type": "t_uint256", + "offset": 0, + "slot": "2" + }, + { + "label": "nftURI", + "type": "t_string_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(RoleData)2646_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_struct(RoyaltyInfo)36779_storage": { + "label": "struct NFTBase.RoyaltyInfo", + "members": [ + { + "label": "receiver", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "royaltyAmount", + "type": "t_uint256", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + } + } + }, + "3c3f22ec4df5181d538b70f3b6e709f0b379e6f5798c71bbfa4b67eeed34ed5b": { + "address": "0xbFfaBD088F107F8ec5a5D93ed956591aB246BBAb", + "layout": { + "solcVersion": "0.8.17", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "__gap", + "offset": 0, + "slot": "101", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_name", + "offset": 0, + "slot": "151", + "type": "t_string_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25" + }, + { + "label": "_symbol", + "offset": 0, + "slot": "152", + "type": "t_string_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28" + }, + { + "label": "_owners", + "offset": 0, + "slot": "153", + "type": "t_mapping(t_uint256,t_address)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31" + }, + { + "label": "_balances", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34" + }, + { + "label": "_tokenApprovals", + "offset": 0, + "slot": "155", + "type": "t_mapping(t_uint256,t_address)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37" + }, + { + "label": "_operatorApprovals", + "offset": 0, + "slot": "156", + "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40" + }, + { + "label": "__gap", + "offset": 0, + "slot": "157", + "type": "t_array(t_uint256)44_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:517" + }, + { + "label": "_roles", + "offset": 0, + "slot": "201", + "type": "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61" + }, + { + "label": "__gap", + "offset": 0, + "slot": "202", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259" + }, + { + "label": "_royalties", + "offset": 0, + "slot": "251", + "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:56" + }, + { + "label": "_nftAttributes", + "offset": 0, + "slot": "252", + "type": "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:58" + }, + { + "label": "_expiration", + "offset": 0, + "slot": "253", + "type": "t_mapping(t_address,t_uint256)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:62" + }, + { + "label": "_contractMetadataUri", + "offset": 0, + "slot": "254", + "type": "t_string_storage", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:65" + }, + { + "label": "nvmConfig", + "offset": 0, + "slot": "255", + "type": "t_address", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:67" + }, + { + "label": "_nftContractCap", + "offset": 0, + "slot": "256", + "type": "t_uint256", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:19" + }, + { + "label": "nftRegistry", + "offset": 0, + "slot": "257", + "type": "t_contract(IExternalRegistry)24702", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:21" + }, + { + "label": "_counterMinted", + "offset": 0, + "slot": "258", + "type": "t_struct(Counter)8119_storage", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:26" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)44_storage": { + "label": "uint256[44]", + "numberOfBytes": "1408" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_contract(IExternalRegistry)24702": { + "label": "contract IExternalRegistry", + "numberOfBytes": "20" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_mapping(t_address,t_bool))": { + "label": "mapping(address => mapping(address => bool))", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_address)": { + "label": "mapping(uint256 => address)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)": { + "label": "mapping(uint256 => struct NFTBase.NFTAttributes)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)": { + "label": "mapping(uint256 => struct NFTBase.RoyaltyInfo)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Counter)8119_storage": { + "label": "struct CountersUpgradeable.Counter", + "members": [ + { + "label": "_value", + "type": "t_uint256", + "offset": 0, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(NFTAttributes)36788_storage": { + "label": "struct NFTBase.NFTAttributes", + "members": [ + { + "label": "nftInitialized", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "nftSupply", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintCap", + "type": "t_uint256", + "offset": 0, + "slot": "2" + }, + { + "label": "nftURI", + "type": "t_string_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(RoleData)2646_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_struct(RoyaltyInfo)36779_storage": { + "label": "struct NFTBase.RoyaltyInfo", + "members": [ + { + "label": "receiver", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "royaltyAmount", + "type": "t_uint256", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + } + } + }, + "85a565a5bf5635513c02d5f61e9f22c27f1de21da1225d92483c74e67042f5fc": { + "address": "0xD436f64641bC72faf4fbeC3fA41843e07bc407d4", + "layout": { + "solcVersion": "0.8.17", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "__gap", + "offset": 0, + "slot": "101", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_name", + "offset": 0, + "slot": "151", + "type": "t_string_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25" + }, + { + "label": "_symbol", + "offset": 0, + "slot": "152", + "type": "t_string_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28" + }, + { + "label": "_owners", + "offset": 0, + "slot": "153", + "type": "t_mapping(t_uint256,t_address)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31" + }, + { + "label": "_balances", + "offset": 0, + "slot": "154", + "type": "t_mapping(t_address,t_uint256)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34" + }, + { + "label": "_tokenApprovals", + "offset": 0, + "slot": "155", + "type": "t_mapping(t_uint256,t_address)", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37" + }, + { + "label": "_operatorApprovals", + "offset": 0, + "slot": "156", + "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40" + }, + { + "label": "__gap", + "offset": 0, + "slot": "157", + "type": "t_array(t_uint256)44_storage", + "contract": "ERC721Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:517" + }, + { + "label": "_roles", + "offset": 0, + "slot": "201", + "type": "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61" + }, + { + "label": "__gap", + "offset": 0, + "slot": "202", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259" + }, + { + "label": "_royalties", + "offset": 0, + "slot": "251", + "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:56" + }, + { + "label": "_nftAttributes", + "offset": 0, + "slot": "252", + "type": "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:58" + }, + { + "label": "_expiration", + "offset": 0, + "slot": "253", + "type": "t_mapping(t_address,t_uint256)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:62" + }, + { + "label": "_contractMetadataUri", + "offset": 0, + "slot": "254", + "type": "t_string_storage", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:65" + }, + { + "label": "nvmConfig", + "offset": 0, + "slot": "255", + "type": "t_address", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:67" + }, + { + "label": "_nftContractCap", + "offset": 0, + "slot": "256", + "type": "t_uint256", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:19" + }, + { + "label": "nftRegistry", + "offset": 0, + "slot": "257", + "type": "t_contract(IExternalRegistry)24702", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:21" + }, + { + "label": "_counterMinted", + "offset": 0, + "slot": "258", + "type": "t_struct(Counter)8119_storage", + "contract": "NFT721Upgradeable", + "src": "contracts/token/erc721/NFT721Upgradeable.sol:26" + }, + { + "label": "_tokens", + "offset": 0, + "slot": "259", + "type": "t_mapping(t_address,t_array(t_struct(MintedTokens)38307_storage)dyn_storage)", + "contract": "NFT721SubscriptionUpgradeable", + "src": "contracts/token/erc721/NFT721SubscriptionUpgradeable.sol:17" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_struct(MintedTokens)38307_storage)dyn_storage": { + "label": "struct NFT721SubscriptionUpgradeable.MintedTokens[]", + "numberOfBytes": "32" + }, + "t_array(t_uint256)44_storage": { + "label": "uint256[44]", + "numberOfBytes": "1408" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_contract(IExternalRegistry)24702": { + "label": "contract IExternalRegistry", + "numberOfBytes": "20" + }, + "t_mapping(t_address,t_array(t_struct(MintedTokens)38307_storage)dyn_storage)": { + "label": "mapping(address => struct NFT721SubscriptionUpgradeable.MintedTokens[])", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_mapping(t_address,t_bool))": { + "label": "mapping(address => mapping(address => bool))", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_address)": { + "label": "mapping(uint256 => address)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)": { + "label": "mapping(uint256 => struct NFTBase.NFTAttributes)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)": { + "label": "mapping(uint256 => struct NFTBase.RoyaltyInfo)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Counter)8119_storage": { + "label": "struct CountersUpgradeable.Counter", + "members": [ + { + "label": "_value", + "type": "t_uint256", + "offset": 0, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(MintedTokens)38307_storage": { + "label": "struct NFT721SubscriptionUpgradeable.MintedTokens", + "members": [ + { + "label": "tokenId", + "type": "t_uint256", + "offset": 0, + "slot": "0" + }, + { + "label": "expirationBlock", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintBlock", + "type": "t_uint256", + "offset": 0, + "slot": "2" + } + ], + "numberOfBytes": "96" + }, + "t_struct(NFTAttributes)36788_storage": { + "label": "struct NFTBase.NFTAttributes", + "members": [ + { + "label": "nftInitialized", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "nftSupply", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintCap", + "type": "t_uint256", + "offset": 0, + "slot": "2" + }, + { + "label": "nftURI", + "type": "t_string_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(RoleData)2646_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_struct(RoyaltyInfo)36779_storage": { + "label": "struct NFTBase.RoyaltyInfo", + "members": [ + { + "label": "receiver", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "royaltyAmount", + "type": "t_uint256", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + } + } + }, + "111ec6bc6b672b5dd8ef2ca5f73c5099fd0ed1d0bc138173fd9fd9e149729e94": { + "address": "0x6a03649699EbCA0F50Ab4E3bCB77ea14C5720B5B", + "txHash": "0x5587e5e3d2515febfc5d98ee8944fe1cba8ed993ecc8dd6d8dc62039bd107f01", + "layout": { + "solcVersion": "0.8.17", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36" + }, + { + "label": "_owner", + "offset": 0, + "slot": "51", + "type": "t_address", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "OwnableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94" + }, + { + "label": "__gap", + "offset": 0, + "slot": "101", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_balances", + "offset": 0, + "slot": "151", + "type": "t_mapping(t_uint256,t_mapping(t_address,t_uint256))", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:25" + }, + { + "label": "_operatorApprovals", + "offset": 0, + "slot": "152", + "type": "t_mapping(t_address,t_mapping(t_address,t_bool))", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:28" + }, + { + "label": "_uri", + "offset": 0, + "slot": "153", + "type": "t_string_storage", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:31" + }, + { + "label": "__gap", + "offset": 0, + "slot": "154", + "type": "t_array(t_uint256)47_storage", + "contract": "ERC1155Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol:528" + }, + { + "label": "_roles", + "offset": 0, + "slot": "201", + "type": "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61" + }, + { + "label": "__gap", + "offset": 0, + "slot": "202", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259" + }, + { + "label": "_royalties", + "offset": 0, + "slot": "251", + "type": "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:56" + }, + { + "label": "_nftAttributes", + "offset": 0, + "slot": "252", + "type": "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:58" + }, + { + "label": "_expiration", + "offset": 0, + "slot": "253", + "type": "t_mapping(t_address,t_uint256)", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:62" + }, + { + "label": "_contractMetadataUri", + "offset": 0, + "slot": "254", + "type": "t_string_storage", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:65" + }, + { + "label": "nvmConfig", + "offset": 0, + "slot": "255", + "type": "t_address", + "contract": "NFTBase", + "src": "contracts/token/NFTBase.sol:67" + }, + { + "label": "name", + "offset": 0, + "slot": "256", + "type": "t_string_storage", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:17" + }, + { + "label": "symbol", + "offset": 0, + "slot": "257", + "type": "t_string_storage", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:20" + }, + { + "label": "nftRegistry", + "offset": 0, + "slot": "258", + "type": "t_contract(IExternalRegistry)24702", + "contract": "NFT1155Upgradeable", + "src": "contracts/token/erc1155/NFT1155Upgradeable.sol:22" + }, + { + "label": "_tokens", + "offset": 0, + "slot": "259", + "type": "t_mapping(t_bytes32,t_array(t_struct(MintedTokens)37146_storage)dyn_storage)", + "contract": "NFT1155SubscriptionUpgradeable", + "src": "contracts/token/erc1155/NFT1155SubscriptionUpgradeable.sol:17" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_struct(MintedTokens)37146_storage)dyn_storage": { + "label": "struct NFT1155SubscriptionUpgradeable.MintedTokens[]", + "numberOfBytes": "32" + }, + "t_array(t_uint256)47_storage": { + "label": "uint256[47]", + "numberOfBytes": "1504" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_contract(IExternalRegistry)24702": { + "label": "contract IExternalRegistry", + "numberOfBytes": "20" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_mapping(t_address,t_bool))": { + "label": "mapping(address => mapping(address => bool))", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_array(t_struct(MintedTokens)37146_storage)dyn_storage)": { + "label": "mapping(bytes32 => struct NFT1155SubscriptionUpgradeable.MintedTokens[])", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)2646_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_mapping(t_address,t_uint256))": { + "label": "mapping(uint256 => mapping(address => uint256))", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(NFTAttributes)36788_storage)": { + "label": "mapping(uint256 => struct NFTBase.NFTAttributes)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(RoyaltyInfo)36779_storage)": { + "label": "mapping(uint256 => struct NFTBase.RoyaltyInfo)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(MintedTokens)37146_storage": { + "label": "struct NFT1155SubscriptionUpgradeable.MintedTokens", + "members": [ + { + "label": "amountMinted", + "type": "t_uint256", + "offset": 0, + "slot": "0" + }, + { + "label": "expirationBlock", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintBlock", + "type": "t_uint256", + "offset": 0, + "slot": "2" + } + ], + "numberOfBytes": "96" + }, + "t_struct(NFTAttributes)36788_storage": { + "label": "struct NFTBase.NFTAttributes", + "members": [ + { + "label": "nftInitialized", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "nftSupply", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "mintCap", + "type": "t_uint256", + "offset": 0, + "slot": "2" + }, + { + "label": "nftURI", + "type": "t_string_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(RoleData)2646_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_struct(RoyaltyInfo)36779_storage": { + "label": "struct NFTBase.RoyaltyInfo", + "members": [ + { + "label": "receiver", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "royaltyAmount", + "type": "t_uint256", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + } + } } } } From 43e401c8c9637d6caf13c86393efffc31f588a24 Mon Sep 17 00:00:00 2001 From: Aitor <1726644+aaitor@users.noreply.github.com> Date: Fri, 18 Aug 2023 18:23:31 +0200 Subject: [PATCH 2/6] fix: expiration block is not part of the hash values --- contracts/conditions/NFTs/TransferNFTCondition.sol | 10 ++++------ .../token/erc1155/NFT1155SubscriptionUpgradeable.sol | 1 + 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/contracts/conditions/NFTs/TransferNFTCondition.sol b/contracts/conditions/NFTs/TransferNFTCondition.sol index 32e93684..f989a183 100644 --- a/contracts/conditions/NFTs/TransferNFTCondition.sol +++ b/contracts/conditions/NFTs/TransferNFTCondition.sol @@ -131,7 +131,7 @@ contract TransferNFTCondition is Condition, ITransferNFT, ReentrancyGuardUpgrade view returns (bytes32) { - return hashValues(_did, _nftHolder, _nftReceiver, _nftAmount, _lockCondition, address(erc1155), true, 0); + return hashValues(_did, _nftHolder, _nftReceiver, _nftAmount, _lockCondition, address(erc1155), true); } /** @@ -143,7 +143,6 @@ contract TransferNFTCondition is Condition, ITransferNFT, ReentrancyGuardUpgrade * @param _lockCondition lock condition identifier * @param _nftContractAddress NFT contract to use * @param _transfer Indicates if the NFT will be transferred (true) or minted (false) - * @param _expirationBlock Block in which the token expires. If zero means no expiration * @return bytes32 hash of all these values */ function hashValues( @@ -153,14 +152,13 @@ contract TransferNFTCondition is Condition, ITransferNFT, ReentrancyGuardUpgrade uint256 _nftAmount, bytes32 _lockCondition, address _nftContractAddress, - bool _transfer, - uint256 _expirationBlock + bool _transfer ) public pure returns (bytes32) { - return keccak256(abi.encode(_did, _nftHolder, _nftReceiver, _nftAmount, _lockCondition, _nftContractAddress, _transfer, _expirationBlock)); + return keccak256(abi.encode(_did, _nftHolder, _nftReceiver, _nftAmount, _lockCondition, _nftContractAddress, _transfer)); } function fulfill( @@ -311,7 +309,7 @@ contract TransferNFTCondition is Condition, ITransferNFT, ReentrancyGuardUpgrade { bytes32 _id = generateId( _agreementId, - hashValues(_did, _account, _nftReceiver, _nftAmount, _lockPaymentCondition, _nftContractAddress, _transfer, _expirationBlock) + hashValues(_did, _account, _nftReceiver, _nftAmount, _lockPaymentCondition, _nftContractAddress, _transfer) ); require( diff --git a/contracts/token/erc1155/NFT1155SubscriptionUpgradeable.sol b/contracts/token/erc1155/NFT1155SubscriptionUpgradeable.sol index e152de66..31e5b46c 100644 --- a/contracts/token/erc1155/NFT1155SubscriptionUpgradeable.sol +++ b/contracts/token/erc1155/NFT1155SubscriptionUpgradeable.sol @@ -91,6 +91,7 @@ contract NFT1155SubscriptionUpgradeable is NFT1155Upgradeable { * @dev See {NFT1155Upgradeableable-balanceOf}. */ function balanceOf(address account, uint256 tokenId) public view virtual override returns (uint256) { + bytes32 _key = _getTokenKey(account, tokenId); uint256 _balance; for (uint index = 0; index < _tokens[_key].length; index++) { From 94fe23ef889491e72b03b0f949b76e19a1c0d782 Mon Sep 17 00:00:00 2001 From: Aitor <1726644+aaitor@users.noreply.github.com> Date: Fri, 18 Aug 2023 18:31:43 +0200 Subject: [PATCH 3/6] test: fixing test --- .../conditions/TransferNFTCondition.Test.js | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/test/unit/conditions/TransferNFTCondition.Test.js b/test/unit/conditions/TransferNFTCondition.Test.js index 7cda2817..f1a5532d 100644 --- a/test/unit/conditions/TransferNFTCondition.Test.js +++ b/test/unit/conditions/TransferNFTCondition.Test.js @@ -234,8 +234,8 @@ contract('TransferNFT Condition', (accounts) => { (await conditionStoreManager.getConditionState(conditionIdPayment)).toNumber(), constants.condition.state.fulfilled) - const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool,uint256)']( - did, seller, rewardAddress, numberNFTs, conditionIdPayment, nft.address, true, 0) + const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( + did, seller, rewardAddress, numberNFTs, conditionIdPayment, nft.address, true) const conditionId = await transferCondition.generateId(agreementId, hashValues) @@ -298,8 +298,8 @@ contract('TransferNFT Condition', (accounts) => { (await conditionStoreManager.getConditionState(conditionIdPayment)).toNumber(), constants.condition.state.fulfilled) - const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool,uint256)']( - did, seller, rewardAddress, numberNFTs, conditionIdPayment, nft.address, false, expiration + const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( + did, seller, rewardAddress, numberNFTs, conditionIdPayment, nft.address, false ) const conditionId = await transferCondition.generateId(agreementId, hashValues) @@ -360,8 +360,8 @@ contract('TransferNFT Condition', (accounts) => { (await conditionStoreManager.getConditionState(conditionIdPayment)).toNumber(), constants.condition.state.fulfilled) - const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool,uint256)']( - did, other, rewardAddress, numberNFTs, conditionIdPayment, nft.address, true, 0) + const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( + did, other, rewardAddress, numberNFTs, conditionIdPayment, nft.address, true) const conditionId = await transferCondition.generateId(agreementId, hashValues) @@ -414,8 +414,8 @@ contract('TransferNFT Condition', (accounts) => { (await conditionStoreManager.getConditionState(conditionIdPayment)).toNumber(), constants.condition.state.fulfilled) - const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool,uint256)']( - did, seller, rewardAddress, numberNFTs, conditionIdPayment, nft.address, true, 0) + const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( + did, seller, rewardAddress, numberNFTs, conditionIdPayment, nft.address, true) const conditionId = await transferCondition.generateId(agreementId, hashValues) @@ -475,8 +475,8 @@ contract('TransferNFT Condition', (accounts) => { (await conditionStoreManager.getConditionState(conditionIdPayment)).toNumber(), constants.condition.state.fulfilled) - const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool,uint256)']( - did, seller, rewardAddress, numberNFTs, conditionIdPayment, nft.address, true, 0) + const hashValues = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( + did, seller, rewardAddress, numberNFTs, conditionIdPayment, nft.address, true) const conditionId = await transferCondition.generateId(agreementId, hashValues) From 7ffed44a0c143b4ccd89580a44b49f3ff43a1b07 Mon Sep 17 00:00:00 2001 From: Aitor <1726644+aaitor@users.noreply.github.com> Date: Fri, 18 Aug 2023 19:02:20 +0200 Subject: [PATCH 4/6] test: fixing integration tests --- contracts/conditions/NFTs/TransferNFTCondition.sol | 13 +++++-------- .../nft/NFTSalesWithAccessProofAgreement.Test.js | 6 +++--- test/int/nft/NFTWithEther_e2e.Test.js | 3 ++- test/int/nft/NFT_e2e.Test.js | 5 +++-- 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/contracts/conditions/NFTs/TransferNFTCondition.sol b/contracts/conditions/NFTs/TransferNFTCondition.sol index f989a183..d74a7950 100644 --- a/contracts/conditions/NFTs/TransferNFTCondition.sol +++ b/contracts/conditions/NFTs/TransferNFTCondition.sol @@ -183,8 +183,7 @@ contract TransferNFTCondition is Condition, ITransferNFT, ReentrancyGuardUpgrade * @param _nftAmount amount of NFTs to transfer * @param _lockPaymentCondition lock payment condition identifier * @param _nftContractAddress the NFT contract to use - * @param _transfer if yes it does a transfer if false it mints the NFT - * @param _expirationBlock Block in which the token expires. If zero means no expiration + * @param _transfer if yes it does a transfer if false it mints the NFT * @return the encoded parameters */ function encodeParams( @@ -194,10 +193,9 @@ contract TransferNFTCondition is Condition, ITransferNFT, ReentrancyGuardUpgrade uint256 _nftAmount, bytes32 _lockPaymentCondition, address _nftContractAddress, - bool _transfer, - uint256 _expirationBlock + bool _transfer ) external pure returns (bytes memory) { - return abi.encode(_did, _nftHolder, _nftReceiver, _nftAmount, _lockPaymentCondition, _nftContractAddress, _transfer, _expirationBlock); + return abi.encode(_did, _nftHolder, _nftReceiver, _nftAmount, _lockPaymentCondition, _nftContractAddress, _transfer); } /** @@ -224,11 +222,10 @@ contract TransferNFTCondition is Condition, ITransferNFT, ReentrancyGuardUpgrade bytes32 _lockPaymentCondition; address _nftContractAddress; bool _transfer; - uint256 _expirationBlock; - (_did, _nftHolder, _nftReceiver, _nftAmount, _lockPaymentCondition, _nftContractAddress, _transfer, _expirationBlock) = abi.decode(_params, (bytes32, address, address, uint256, bytes32, address, bool, uint256)); + (_did, _nftHolder, _nftReceiver, _nftAmount, _lockPaymentCondition, _nftContractAddress, _transfer) = abi.decode(_params, (bytes32, address, address, uint256, bytes32, address, bool)); require(hasRole(PROXY_ROLE, _msgSender()), 'Proxy role required'); - fulfillInternal(_account, _agreementId, _did, _nftReceiver, _nftAmount, _lockPaymentCondition, _nftContractAddress, _transfer, _expirationBlock); + fulfillInternal(_account, _agreementId, _did, _nftReceiver, _nftAmount, _lockPaymentCondition, _nftContractAddress, _transfer, 0); } /** diff --git a/test/int/nft/NFTSalesWithAccessProofAgreement.Test.js b/test/int/nft/NFTSalesWithAccessProofAgreement.Test.js index 3f75f39f..d20b70d2 100644 --- a/test/int/nft/NFTSalesWithAccessProofAgreement.Test.js +++ b/test/int/nft/NFTSalesWithAccessProofAgreement.Test.js @@ -122,9 +122,9 @@ contract('NFT Sales with Access Proof Template integration test', (accounts) => const conditionIdLockPayment = await lockPaymentCondition.hashValues(did, escrowCondition.address, token.address, amounts, receivers) const fullIdLockPayment = await lockPaymentCondition.generateId(agreementId, conditionIdLockPayment) - const conditionIdTransferNFT = await transferCondition.hashValues( - did, artist, receiver, numberNFTs, fullIdLockPayment, nft.address, true, 0 - ) + const conditionIdTransferNFT = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( + did, artist, receiver, numberNFTs, fullIdLockPayment, nft.address, true) + const fullIdTransferNFT = await transferCondition.generateId(agreementId, conditionIdTransferNFT) const conditionIdAccess = await accessProofCondition.hashValues(origHash, buyerPub, providerPub) diff --git a/test/int/nft/NFTWithEther_e2e.Test.js b/test/int/nft/NFTWithEther_e2e.Test.js index 98190394..c683fde0 100644 --- a/test/int/nft/NFTWithEther_e2e.Test.js +++ b/test/int/nft/NFTWithEther_e2e.Test.js @@ -208,7 +208,8 @@ contract('End to End NFT Scenarios (with Ether)', (accounts) => { const agreementId = await agreementStoreManager.agreementId(initAgreementId, _from) const conditionIdLockPayment = await lockPaymentCondition.hashValues(did, escrowCondition.address, constants.address.zero, _amounts.map(a => String(a)), _receivers) const fullIdLockPayment = await lockPaymentCondition.generateId(agreementId, conditionIdLockPayment) - const conditionIdTransferNFT = await transferCondition.hashValues(did, _seller, _buyer, _numberNFTs, fullIdLockPayment, nft.address, true, 0) + const conditionIdTransferNFT = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( + did, _seller, _buyer, _numberNFTs, fullIdLockPayment, nft.address, true) const fullIdTransferNFT = await transferCondition.generateId(agreementId, conditionIdTransferNFT) const conditionIdEscrow = await escrowCondition.hashValues(did, _amounts.map(a => String(a)), _receivers, _buyer, escrowCondition.address, constants.address.zero, fullIdLockPayment, fullIdTransferNFT) diff --git a/test/int/nft/NFT_e2e.Test.js b/test/int/nft/NFT_e2e.Test.js index 2f5fb6ea..8ca462ff 100644 --- a/test/int/nft/NFT_e2e.Test.js +++ b/test/int/nft/NFT_e2e.Test.js @@ -196,14 +196,15 @@ contract('End to End NFT Scenarios', (accounts) => { const agreementId = await agreementStoreManager.agreementId(initAgreementId, _from) const conditionIdLockPayment = await lockPaymentCondition.hashValues(did, escrowCondition.address, token.address, _amounts, _receivers) const fullIdLockPayment = await lockPaymentCondition.generateId(agreementId, conditionIdLockPayment) - const conditionIdTransferNFT = await transferCondition.hashValues(did, _seller, _buyer, _numberNFTs, fullIdLockPayment, nft.address, true, 0) + const conditionIdTransferNFT = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( + did, _seller, _buyer, _numberNFTs, fullIdLockPayment, nft.address, true) const fullIdTransferNFT = await transferCondition.generateId(agreementId, conditionIdTransferNFT) const conditionIdEscrow = await escrowCondition.hashValues(did, _amounts, _receivers, _buyer, escrowCondition.address, token.address, fullIdLockPayment, fullIdTransferNFT) const fullIdEscrow = await escrowCondition.generateId(agreementId, conditionIdEscrow) const lockParams = await lockPaymentCondition.encodeParams(did, escrowCondition.address, token.address, _amounts, _receivers) - const transferParams = await transferCondition.encodeParams(did, _seller, _buyer, _numberNFTs, fullIdLockPayment, nft.address, true, 0) + const transferParams = await transferCondition.encodeParams(did, _seller, _buyer, _numberNFTs, fullIdLockPayment, nft.address, true) const escrowParams = await escrowCondition.encodeParams(did, _amounts, _receivers, _buyer, escrowCondition.address, token.address, fullIdLockPayment, [fullIdTransferNFT]) const nftSalesAgreement = { From 836d933dca788513ebe9f3bc8ab940d84babeabe Mon Sep 17 00:00:00 2001 From: Aitor <1726644+aaitor@users.noreply.github.com> Date: Fri, 18 Aug 2023 19:12:48 +0200 Subject: [PATCH 5/6] test: linting --- test/int/nft/NFTWithEther_e2e.Test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/int/nft/NFTWithEther_e2e.Test.js b/test/int/nft/NFTWithEther_e2e.Test.js index c683fde0..1dab8a5b 100644 --- a/test/int/nft/NFTWithEther_e2e.Test.js +++ b/test/int/nft/NFTWithEther_e2e.Test.js @@ -209,7 +209,7 @@ contract('End to End NFT Scenarios (with Ether)', (accounts) => { const conditionIdLockPayment = await lockPaymentCondition.hashValues(did, escrowCondition.address, constants.address.zero, _amounts.map(a => String(a)), _receivers) const fullIdLockPayment = await lockPaymentCondition.generateId(agreementId, conditionIdLockPayment) const conditionIdTransferNFT = await transferCondition.methods['hashValues(bytes32,address,address,uint256,bytes32,address,bool)']( - did, _seller, _buyer, _numberNFTs, fullIdLockPayment, nft.address, true) + did, _seller, _buyer, _numberNFTs, fullIdLockPayment, nft.address, true) const fullIdTransferNFT = await transferCondition.generateId(agreementId, conditionIdTransferNFT) const conditionIdEscrow = await escrowCondition.hashValues(did, _amounts.map(a => String(a)), _receivers, _buyer, escrowCondition.address, constants.address.zero, fullIdLockPayment, fullIdTransferNFT) From a19adbda78a6e9d92e54ee8cb300deedc71ad5fd Mon Sep 17 00:00:00 2001 From: Aitor <1726644+aaitor@users.noreply.github.com> Date: Fri, 1 Sep 2023 09:53:21 +0200 Subject: [PATCH 6/6] chore: adding v3.3.0 Changelog updates --- CHANGELOG.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 59452e5f..f4bdbe2d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,17 @@ All notable changes to this project will be documented in this file. Dates are d Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). +#### [v3.3.0](https://github.com/nevermined-io/contracts/compare/v3.2.4...v3.3.0) + +> 18 August 2023 + +- fix: expiration block is not part of the hash values [`#497`](https://github.com/nevermined-io/contracts/pull/497) +- committing deploy [`#496`](https://github.com/nevermined-io/contracts/pull/496) +- fix: resolving problem with wrong nft type [`#494`](https://github.com/nevermined-io/contracts/pull/494) +- test: fixing integration tests [`7ffed44`](https://github.com/nevermined-io/contracts/commit/7ffed44a0c143b4ccd89580a44b49f3ff43a1b07) +- test: fixing test [`94fe23e`](https://github.com/nevermined-io/contracts/commit/94fe23ef889491e72b03b0f949b76e19a1c0d782) +- fix: adding expirationBlock to fulfillForDeleaget on Transfer cond. [`7b77052`](https://github.com/nevermined-io/contracts/commit/7b770523b33f66f4ec2d9282f568f3e03faf7144) + #### [v3.2.4](https://github.com/nevermined-io/contracts/compare/v3.2.3...v3.2.4) > 11 August 2023