git.delta.rocks / unique-network / refs/commits / e760275e5cdb

difftreelog

feat add collection_property and token_property

Daniel Shiposha2022-05-19parent: #6773058.patch.diff
in: master

4 files changed

modifiedpallets/common/src/lib.rsdiffbeforeafterboth
59 Properties,59 Properties,
60 PropertiesPermissionMap,60 PropertiesPermissionMap,
61 PropertyKey,61 PropertyKey,
62 PropertyValue,
62 PropertyPermission,63 PropertyPermission,
63 PropertiesError,64 PropertiesError,
64 PropertyKeyPermission,65 PropertyKeyPermission,
902 Ok(())903 Ok(())
903 }904 }
905
906 pub fn get_collection_property(collection_id: CollectionId, key: &PropertyKey) -> Option<PropertyValue> {
907 Self::collection_properties(collection_id)
908 .get(key)
909 .cloned()
910 }
904911
905 pub fn bytes_keys_to_property_keys(912 pub fn bytes_keys_to_property_keys(
906 keys: Vec<Vec<u8>>,913 keys: Vec<Vec<u8>>,
12401247
1241 fn token_owner(&self, token: TokenId) -> Option<T::CrossAccountId>;1248 fn token_owner(&self, token: TokenId) -> Option<T::CrossAccountId>;
1242 fn const_metadata(&self, token: TokenId) -> Vec<u8>;1249 fn const_metadata(&self, token: TokenId) -> Vec<u8>;
1250 fn token_property(&self, token_id: TokenId, key: &PropertyKey) -> Option<PropertyValue>;
1243 fn token_properties(&self, token_id: TokenId, keys: Option<Vec<PropertyKey>>) -> Vec<Property>;1251 fn token_properties(&self, token_id: TokenId, keys: Option<Vec<PropertyKey>>) -> Vec<Property>;
1244 /// Amount of unique collection tokens1252 /// Amount of unique collection tokens
1245 fn total_supply(&self) -> u32;1253 fn total_supply(&self) -> u32;
modifiedpallets/fungible/src/common.rsdiffbeforeafterboth
--- a/pallets/fungible/src/common.rs
+++ b/pallets/fungible/src/common.rs
@@ -21,7 +21,7 @@
 use pallet_common::{CommonCollectionOperations, CommonWeightInfo, with_weight};
 use sp_runtime::ArithmeticError;
 use sp_std::{vec::Vec, vec};
-use up_data_structs::{Property, PropertyKey, PropertyKeyPermission};
+use up_data_structs::{Property, PropertyKey, PropertyValue, PropertyKeyPermission};
 
 use crate::{
 	Allowance, Balance, Config, Error, FungibleHandle, Pallet, SelfWeightOf, weights::WeightInfo,
@@ -319,6 +319,10 @@
 		Vec::new()
 	}
 
+	fn token_property(&self, _token_id: TokenId, _key: &PropertyKey) -> Option<PropertyValue> {
+		None
+	}
+
 	fn token_properties(
 		&self,
 		_token_id: TokenId,
modifiedpallets/nonfungible/src/common.rsdiffbeforeafterboth
--- a/pallets/nonfungible/src/common.rs
+++ b/pallets/nonfungible/src/common.rs
@@ -19,7 +19,7 @@
 use frame_support::{dispatch::DispatchResultWithPostInfo, ensure, fail, weights::Weight};
 use up_data_structs::{
 	TokenId, CreateItemExData, CollectionId, budget::Budget, Property, PropertyKey,
-	PropertyKeyPermission,
+	PropertyKeyPermission, PropertyValue,
 };
 use pallet_common::{CommonCollectionOperations, CommonWeightInfo, with_weight};
 use sp_runtime::DispatchError;
@@ -362,6 +362,12 @@
 			.into_inner()
 	}
 
+	fn token_property(&self, token_id: TokenId, key: &PropertyKey) -> Option<PropertyValue> {
+		<Pallet<T>>::token_properties((self.id, token_id))
+			.get(key)
+			.cloned()
+	}
+
 	fn token_properties(&self, token_id: TokenId, keys: Option<Vec<PropertyKey>>) -> Vec<Property> {
 		let properties = <Pallet<T>>::token_properties((self.id, token_id));
 
modifiedpallets/refungible/src/common.rsdiffbeforeafterboth
--- a/pallets/refungible/src/common.rs
+++ b/pallets/refungible/src/common.rs
@@ -20,7 +20,7 @@
 use frame_support::{dispatch::DispatchResultWithPostInfo, fail, weights::Weight};
 use up_data_structs::{
 	CollectionId, TokenId, CreateItemExData, CreateRefungibleExData, budget::Budget, Property,
-	PropertyKey, PropertyKeyPermission,
+	PropertyKey, PropertyValue, PropertyKeyPermission,
 };
 use pallet_common::{CommonCollectionOperations, CommonWeightInfo, with_weight};
 use sp_runtime::DispatchError;
@@ -340,6 +340,10 @@
 			.into_inner()
 	}
 
+	fn token_property(&self, _token_id: TokenId, _key: &PropertyKey) -> Option<PropertyValue> {
+		None
+	}
+
 	fn token_properties(
 		&self,
 		_token_id: TokenId,