From 1c0da24e7c83a7eb582da67fab3dc81c39ea28e2 Mon Sep 17 00:00:00 2001 From: filippoweb3 Date: Thu, 16 Mar 2023 09:51:12 +0100 Subject: [PATCH 1/5] Added Jegor's feedback --- docs/learn/learn-nft-pallets.md | 37 +++++++++++++-------------------- 1 file changed, 14 insertions(+), 23 deletions(-) diff --git a/docs/learn/learn-nft-pallets.md b/docs/learn/learn-nft-pallets.md index 0398ca2262c6..150c1ee82e0a 100644 --- a/docs/learn/learn-nft-pallets.md +++ b/docs/learn/learn-nft-pallets.md @@ -40,36 +40,26 @@ Setting up a collection implies different roles with different permissions: supply, and locking collection metadata and attributes. - Admin: - - set attribute and metadata of a collection. - - set attributes pre-signed: set attributes for an item by providing the pre-signed approval. - - lock item properties: lock item metadata and attributes. - -:::info - -Note that an Admin account cannot burn or transfer items it does not own. -::: + - set attributes and metadata of a collection. + - set attributes pre-signed: set attributes for an item by providing the Admin pre-signed + approval. + - lock item properties: lock item metadata and attributes. - Freezer: - - lock item transfer: lock all holders from the possibility of transferring an item. - - unlock item transfer: lift a previous lock to transfer an item for all holders. + - lock item transfer: disallow further item transfers. + - unlock item transfer: lift a previous lock to transfer an item. - Issuer - mint - - force mint (with custom item configuration): mint an item of a particular collection from a - privileged origin. - - mint pre-signed: mint an item by providing the pre-signed approval. + - force mint (with custom item configuration). + - mint pre-signed: mint an item by providing the Issuer pre-signed approval. - update mint settings. -For simple collections, the same account has all the roles by default. Still, for complex -collections separate accounts can take each role with their responsibilities (e.g. items issuance). -The key can be rotated for those roles. The owner's account is used to setup the collection, and its -private key is kept in cold storage. - Those roles can also be set to `none` without the ability to change them back. This is useful when a -collection is created, and all the items are minted without the possibility of minting any more -items, or change the metadata, or disable some item's transfer. +collection is created and all the items are minted. Now, by setting roles to `none` we remove the +possibility of minting any more items, changing the metadata, or disallowing some item's transfer. ### Creating a Collection @@ -117,8 +107,9 @@ Everything is unlocked by default (bitflag value `0`). :::info - The user can decide to lock an item or collection’s metadata, attributes, and settings. Also, a locking mechanism can prevent unauthorized and unprivileged transfers (unprivileged -actions can be re-allowed anytime). +The user can decide to lock an item or collection’s metadata, attributes, and settings. Also, a +locking mechanism can prevent unauthorized and unprivileged transfers (unprivileged actions can be +re-allowed anytime). ::: @@ -155,7 +146,7 @@ account owning the NFT and the collection ID. You can also see all your collecti `collectionAccount` extrinsic. When a new collection is created, a new ID will be generated and assigned to it. When a collection -is destroyed, and no one can pick up the collection ID again (including the owner). +is destroyed, no one can pick up the collection ID again (including the owner). ### Minting an NFT From 1a5c30649e449cf86898501f14ce4dfd847d6c95 Mon Sep 17 00:00:00 2001 From: filippoweb3 Date: Thu, 16 Mar 2023 09:55:26 +0100 Subject: [PATCH 2/5] moved banner to roles --- docs/learn/learn-nft-pallets.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/learn/learn-nft-pallets.md b/docs/learn/learn-nft-pallets.md index 150c1ee82e0a..4e015e068b90 100644 --- a/docs/learn/learn-nft-pallets.md +++ b/docs/learn/learn-nft-pallets.md @@ -61,6 +61,14 @@ Those roles can also be set to `none` without the ability to change them back. T collection is created and all the items are minted. Now, by setting roles to `none` we remove the possibility of minting any more items, changing the metadata, or disallowing some item's transfer. +:::info + +The user can decide to lock an item or collection’s metadata, attributes, and settings. Also, a +locking mechanism can prevent unauthorized and unprivileged transfers (unprivileged actions can be +re-allowed anytime). + +::: + ### Creating a Collection You can use the NFTs pallet to create NFT collections. In the Polkadot-JS UI, go to Developer > @@ -105,14 +113,6 @@ Everything is unlocked by default (bitflag value `0`). items for the public - force mint: minting bypassing mint settings -:::info - -The user can decide to lock an item or collection’s metadata, attributes, and settings. Also, a -locking mechanism can prevent unauthorized and unprivileged transfers (unprivileged actions can be -re-allowed anytime). - -::: - With all these options, one can decide to modify the price of the collection's items and who can mint, receive or buy items in that collection. Time constraints are available with `startBlock` and `endBlock` parameters. It is thus possible, for example, to create a schedule in which holders of From 2a4eaf4b3eac8bfecbb4a8d8caadf95f40f6032b Mon Sep 17 00:00:00 2001 From: filippoweb3 Date: Fri, 17 Mar 2023 08:36:48 +0100 Subject: [PATCH 3/5] Addressed Jegor's and Vadim's feedback --- docs/learn/learn-nft-pallets.md | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/docs/learn/learn-nft-pallets.md b/docs/learn/learn-nft-pallets.md index 4e015e068b90..e97cae985a25 100644 --- a/docs/learn/learn-nft-pallets.md +++ b/docs/learn/learn-nft-pallets.md @@ -61,14 +61,6 @@ Those roles can also be set to `none` without the ability to change them back. T collection is created and all the items are minted. Now, by setting roles to `none` we remove the possibility of minting any more items, changing the metadata, or disallowing some item's transfer. -:::info - -The user can decide to lock an item or collection’s metadata, attributes, and settings. Also, a -locking mechanism can prevent unauthorized and unprivileged transfers (unprivileged actions can be -re-allowed anytime). - -::: - ### Creating a Collection You can use the NFTs pallet to create NFT collections. In the Polkadot-JS UI, go to Developer > @@ -116,9 +108,10 @@ Everything is unlocked by default (bitflag value `0`). With all these options, one can decide to modify the price of the collection's items and who can mint, receive or buy items in that collection. Time constraints are available with `startBlock` and `endBlock` parameters. It is thus possible, for example, to create a schedule in which holders of -items in collection A (`HolderOf` parameter) will be able to claim for free a limited number of NFTs -from Collection X (`maxSupply` parameter) only within a specific time frame. You can modify the -parameters so anyone can buy more NFTs from Collection X. +items in collection A (`HolderOf` parameter) will be able to claim a limited number of NFTs from +Collection X (`maxSupply` parameter) only within a specific time frame. You can modify the +parameters so anyone can buy more NFTs from Collection X. Note that items are never free as even if +they could not have a price, transaction fees always apply. This can be useful for events such as Hackathons where participants who bought a ticket receive the NFT ticket from Collection A. Then, all holders of at least one item in Collection A (i.e. all From accdc1970006b123c132e1ec9b931199cc2f96d1 Mon Sep 17 00:00:00 2001 From: filippoweb3 Date: Tue, 28 Mar 2023 09:45:25 +0200 Subject: [PATCH 4/5] addressed Vadim's feedback --- docs/learn/learn-nft-pallets.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/docs/learn/learn-nft-pallets.md b/docs/learn/learn-nft-pallets.md index e97cae985a25..757ac48ba90a 100644 --- a/docs/learn/learn-nft-pallets.md +++ b/docs/learn/learn-nft-pallets.md @@ -109,9 +109,17 @@ With all these options, one can decide to modify the price of the collection's i mint, receive or buy items in that collection. Time constraints are available with `startBlock` and `endBlock` parameters. It is thus possible, for example, to create a schedule in which holders of items in collection A (`HolderOf` parameter) will be able to claim a limited number of NFTs from -Collection X (`maxSupply` parameter) only within a specific time frame. You can modify the -parameters so anyone can buy more NFTs from Collection X. Note that items are never free as even if -they could not have a price, transaction fees always apply. +Collection X (`maxSupply` parameter) only within a specific time frame. + +In Collection X, people will be able to mint the exact number of NFTs they have in Collection A. +It's a one to one ratio. So if they have 3 nfts in collection A, they can mint 3 nfts in collection +X. Each time they "use" one nft in Collection A, the said NFT will have an attribute that will block +its further use to mint in Collection X. But it will be possible to mint in another collection Y if +it also uses collection A as a `HolderOf`. + +You can modify the parameters so anyone can buy more NFTs from Collection X. To buy a NFT you will +need to pay the item price + transaction fee. Even if the item is free, the transaction fee always +apply. This can be useful for events such as Hackathons where participants who bought a ticket receive the NFT ticket from Collection A. Then, all holders of at least one item in Collection A (i.e. all From a2a4f16f1d02d01c7b548ced4aac59feafe1774b Mon Sep 17 00:00:00 2001 From: filippoweb3 Date: Tue, 28 Mar 2023 09:48:05 +0200 Subject: [PATCH 5/5] grammar check on added paragraphs --- docs/learn/learn-nft-pallets.md | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/docs/learn/learn-nft-pallets.md b/docs/learn/learn-nft-pallets.md index 757ac48ba90a..20219c80a502 100644 --- a/docs/learn/learn-nft-pallets.md +++ b/docs/learn/learn-nft-pallets.md @@ -111,15 +111,14 @@ mint, receive or buy items in that collection. Time constraints are available wi items in collection A (`HolderOf` parameter) will be able to claim a limited number of NFTs from Collection X (`maxSupply` parameter) only within a specific time frame. -In Collection X, people will be able to mint the exact number of NFTs they have in Collection A. -It's a one to one ratio. So if they have 3 nfts in collection A, they can mint 3 nfts in collection -X. Each time they "use" one nft in Collection A, the said NFT will have an attribute that will block -its further use to mint in Collection X. But it will be possible to mint in another collection Y if -it also uses collection A as a `HolderOf`. - -You can modify the parameters so anyone can buy more NFTs from Collection X. To buy a NFT you will -need to pay the item price + transaction fee. Even if the item is free, the transaction fee always -apply. +In Collection X, people can mint the number of NFTs they have in Collection A. It's a one-to-one +ratio. So if they have 3 nfts in collection A, they can mint 3 nfts in collection X. Each time they +use one nft in Collection A, the said NFT will have an attribute that will block its further use to +mint in Collection X. But it will be possible to mint in another collection Y if it also uses +collection A as a `HolderOf`. + +You can modify the parameters, so anyone can buy more NFTs from Collection X. To buy an NFT you must +pay the item price + transaction fee. Even if the item is free, the transaction fee always apply. This can be useful for events such as Hackathons where participants who bought a ticket receive the NFT ticket from Collection A. Then, all holders of at least one item in Collection A (i.e. all