--- a/pallets/common/src/lib.rs +++ b/pallets/common/src/lib.rs @@ -1111,6 +1111,17 @@ new_limit <= MAX_TOKEN_OWNERSHIP, >::CollectionLimitBoundsExceeded, ), + sponsored_data_size => ensure!( + new_limit <= CUSTOM_DATA_LIMIT, + >::CollectionLimitBoundsExceeded, + ), + + sponsored_data_rate_limit => {}, + token_limit => ensure!( + old_limit >= new_limit && new_limit > 0, + >::CollectionTokenLimitExceeded + ), + sponsor_transfer_timeout(match mode { CollectionMode::NFT => NFT_SPONSOR_TRANSFER_TIMEOUT, CollectionMode::Fungible(_) => FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT, @@ -1119,14 +1130,7 @@ new_limit <= MAX_SPONSOR_TIMEOUT, >::CollectionLimitBoundsExceeded, ), - sponsored_data_size => ensure!( - new_limit <= CUSTOM_DATA_LIMIT, - >::CollectionLimitBoundsExceeded, - ), - token_limit => ensure!( - old_limit >= new_limit && new_limit > 0, - >::CollectionTokenLimitExceeded - ), + sponsor_approve_timeout => {}, owner_can_transfer => ensure!( old_limit || !new_limit, >::OwnerPermissionsCantBeReverted, @@ -1135,7 +1139,6 @@ old_limit || !new_limit, >::OwnerPermissionsCantBeReverted, ), - sponsored_data_rate_limit => {}, transfers_enabled => {}, ); Ok(new_limit) @@ -1146,6 +1149,9 @@ mut new_limit: CollectionPermissions, ) -> Result { limit_default_clone!(old_limit, new_limit, + access => {}, + mint_mode => {}, + nesting => {}, ); Ok(new_limit) } --- a/primitives/data-structs/src/lib.rs +++ b/primitives/data-structs/src/lib.rs @@ -365,6 +365,7 @@ BoundedVec>; /// All fields are wrapped in `Option`s, where None means chain default +// When adding/removing fields from this struct - don't forget to also update clamp_limits #[derive(Encode, Decode, Debug, Default, Clone, PartialEq, TypeInfo, MaxEncodedLen)] #[cfg_attr(feature = "serde1", derive(Serialize, Deserialize))] pub struct CollectionLimits { @@ -432,6 +433,7 @@ } } +// When adding/removing fields from this struct - don't forget to also update clamp_limits #[derive(Encode, Decode, Debug, Default, Clone, PartialEq, TypeInfo, MaxEncodedLen)] #[cfg_attr(feature = "serde1", derive(Serialize, Deserialize))] pub struct CollectionPermissions {