Nft and documents content is not disclosed until you buy them from vendor/marketplace
Some project need for certain information to be private until the sale. Imagine a marketplace that sells recipes or a vendor who wants to keep a part of an nft as a secret (a like a secret box). This requires for the smart contract to be private until the buyers gets the tokens. For this I came to the idea of keeping sensitive information private from the smart contract and adding allowed addresses that is updates when bought.
For this competition the solidity smart contracts were deployed due issues with time. For this, the tokenURI is hidden and an array of holders is created, everytime the owner (ideally the creator or the marketplace) adds a new holder then the URI is disclosed and the content can now me seen when connecting wallet.