From 0e30689f4ddaf8e6b9bf0d33a168efd984d7c599 Mon Sep 17 00:00:00 2001 From: Jegor Sidorenko Date: Fri, 10 Mar 2023 10:01:17 +0200 Subject: [PATCH 1/2] Rename owner_of_item to owned_item --- frame/nfts/src/lib.rs | 6 +++--- frame/nfts/src/tests.rs | 6 +++--- frame/nfts/src/types.rs | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/frame/nfts/src/lib.rs b/frame/nfts/src/lib.rs index 9314098d3b334..702d05ed9e7de 100644 --- a/frame/nfts/src/lib.rs +++ b/frame/nfts/src/lib.rs @@ -809,13 +809,13 @@ pub mod pallet { match mint_settings.mint_type { MintType::Issuer => return Err(Error::::NoPermission.into()), MintType::HolderOf(collection_id) => { - let MintWitness { owner_of_item } = + let MintWitness { owned_item } = witness_data.ok_or(Error::::BadWitness)?; let owns_item = Account::::contains_key(( &caller, &collection_id, - &owner_of_item, + &owned_item, )); ensure!(owns_item, Error::::BadWitness); @@ -824,7 +824,7 @@ pub mod pallet { let key = ( &collection_id, - Some(owner_of_item), + Some(owned_item), AttributeNamespace::Pallet, &Self::construct_attribute_key(pallet_attribute.encode())?, ); diff --git a/frame/nfts/src/tests.rs b/frame/nfts/src/tests.rs index 8d937b0f7fe68..e44e4151f84a0 100644 --- a/frame/nfts/src/tests.rs +++ b/frame/nfts/src/tests.rs @@ -335,7 +335,7 @@ fn mint_should_work() { 1, 42, account(2), - Some(MintWitness { owner_of_item: 42 }) + Some(MintWitness { owned_item: 42 }) ), Error::::BadWitness ); @@ -344,7 +344,7 @@ fn mint_should_work() { 1, 42, account(2), - Some(MintWitness { owner_of_item: 43 }) + Some(MintWitness { owned_item: 43 }) )); // can't mint twice @@ -354,7 +354,7 @@ fn mint_should_work() { 1, 46, account(2), - Some(MintWitness { owner_of_item: 43 }) + Some(MintWitness { owned_item: 43 }) ), Error::::AlreadyClaimed ); diff --git a/frame/nfts/src/types.rs b/frame/nfts/src/types.rs index 8c43024cdaceb..93e0519de0840 100644 --- a/frame/nfts/src/types.rs +++ b/frame/nfts/src/types.rs @@ -124,7 +124,7 @@ impl CollectionDetails { #[derive(Clone, Encode, Decode, Eq, PartialEq, RuntimeDebug, TypeInfo)] pub struct MintWitness { /// Provide the id of the item in a required collection. - pub owner_of_item: ItemId, + pub owned_item: ItemId, } /// Information concerning the ownership of a single unique item. From 5367c6cb564882c97a99327c1357abef9d42b98e Mon Sep 17 00:00:00 2001 From: Jegor Sidorenko Date: Fri, 10 Mar 2023 10:02:32 +0200 Subject: [PATCH 2/2] Move AttributeNamespace into the types file --- frame/nfts/src/lib.rs | 4 +--- frame/nfts/src/types.rs | 15 +++++++++++++++ frame/support/src/traits/tokens.rs | 5 ++--- frame/support/src/traits/tokens/misc.rs | 15 --------------- 4 files changed, 18 insertions(+), 21 deletions(-) diff --git a/frame/nfts/src/lib.rs b/frame/nfts/src/lib.rs index 702d05ed9e7de..2d19cf0455ad4 100644 --- a/frame/nfts/src/lib.rs +++ b/frame/nfts/src/lib.rs @@ -45,9 +45,7 @@ pub mod weights; use codec::{Decode, Encode}; use frame_support::traits::{ - tokens::{AttributeNamespace, Locker}, - BalanceStatus::Reserved, - Currency, EnsureOriginWithArg, ReservableCurrency, + tokens::Locker, BalanceStatus::Reserved, Currency, EnsureOriginWithArg, ReservableCurrency, }; use frame_system::Config as SystemConfig; use sp_runtime::{ diff --git a/frame/nfts/src/types.rs b/frame/nfts/src/types.rs index 93e0519de0840..44f1f1b58f830 100644 --- a/frame/nfts/src/types.rs +++ b/frame/nfts/src/types.rs @@ -317,6 +317,21 @@ impl Default for MintSettings { + /// An attribute was set by the pallet. + Pallet, + /// An attribute was set by collection's owner. + CollectionOwner, + /// An attribute was set by item's owner. + ItemOwner, + /// An attribute was set by pre-approved account. + Account(AccountId), +} + /// A witness data to cancel attributes approval operation. #[derive(Clone, Encode, Decode, Eq, PartialEq, RuntimeDebug, TypeInfo)] pub struct CancelAttributesApprovalWitness { diff --git a/frame/support/src/traits/tokens.rs b/frame/support/src/traits/tokens.rs index f8dcf68159f1a..e1a96f621bd4f 100644 --- a/frame/support/src/traits/tokens.rs +++ b/frame/support/src/traits/tokens.rs @@ -28,7 +28,6 @@ pub mod nonfungibles; pub mod nonfungibles_v2; pub use imbalance::Imbalance; pub use misc::{ - AssetId, AttributeNamespace, Balance, BalanceConversion, BalanceStatus, ConvertRank, - DepositConsequence, ExistenceRequirement, GetSalary, Locker, WithdrawConsequence, - WithdrawReasons, + AssetId, Balance, BalanceConversion, BalanceStatus, ConvertRank, DepositConsequence, + ExistenceRequirement, GetSalary, Locker, WithdrawConsequence, WithdrawReasons, }; diff --git a/frame/support/src/traits/tokens/misc.rs b/frame/support/src/traits/tokens/misc.rs index eff65f3620a32..6113642c83460 100644 --- a/frame/support/src/traits/tokens/misc.rs +++ b/frame/support/src/traits/tokens/misc.rs @@ -126,21 +126,6 @@ pub enum BalanceStatus { Reserved, } -/// Attribute namespaces for non-fungible tokens. -#[derive( - Clone, Encode, Decode, Eq, PartialEq, RuntimeDebug, scale_info::TypeInfo, MaxEncodedLen, -)] -pub enum AttributeNamespace { - /// An attribute was set by the pallet. - Pallet, - /// An attribute was set by collection's owner. - CollectionOwner, - /// An attribute was set by item's owner. - ItemOwner, - /// An attribute was set by pre-approved account. - Account(AccountId), -} - bitflags::bitflags! { /// Reasons for moving funds out of an account. #[derive(Encode, Decode, MaxEncodedLen)]