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

difftreelog

refactor(rmrk-rpc) merged mapped calls for collection and id into one

Fahrrader2022-06-03parent: #00b9fd6.patch.diff
in: master

2 files changed

modifiedpallets/proxy-rmrk-core/src/lib.rsdiffbeforeafterboth
912 Self::get_nft_collection(collection_id)912 Self::get_nft_collection(collection_id)
913 }913 }
914
915 pub fn get_typed_nft_collection_mapped(
916 rmrk_collection_id: RmrkCollectionId,
917 collection_type: misc::CollectionType,
918 ) -> Result<(NonfungibleHandle<T>, CollectionId), DispatchError> {
919 let unique_collection_id = Self::unique_collection_id(rmrk_collection_id)?;
920
921 let collection = Self::get_typed_nft_collection(unique_collection_id, collection_type)?;
922
923 Ok((collection, unique_collection_id))
924 }
914925
915 pub fn get_nft_property(926 pub fn get_nft_property(
916 collection_id: CollectionId,927 collection_id: CollectionId,
modifiedruntime/common/src/runtime_apis.rsdiffbeforeafterboth
147 use pallet_proxy_rmrk_core::{RmrkProperty, misc::CollectionType};147 use pallet_proxy_rmrk_core::{RmrkProperty, misc::CollectionType};
148 use pallet_common::CommonCollectionOperations;148 use pallet_common::CommonCollectionOperations;
149149
150 let collection_id = match RmrkCore::unique_collection_id(collection_id) {150 let (collection, collection_id) = match RmrkCore::get_typed_nft_collection_mapped(collection_id, CollectionType::Regular) {
151 Ok(id) => id,
152 Err(_) => return Ok(None)
153 };
154
155 let collection = match RmrkCore::get_typed_nft_collection(collection_id, CollectionType::Regular) {
156 Ok(c) => c,151 Ok(c) => c,
157 Err(_) => return Ok(None),152 Err(_) => return Ok(None),
158 };153 };
173 use pallet_proxy_rmrk_core::{RmrkProperty, misc::CollectionType};168 use pallet_proxy_rmrk_core::{RmrkProperty, misc::CollectionType};
174 use pallet_common::CommonCollectionOperations;169 use pallet_common::CommonCollectionOperations;
175170
176 let collection_id = match RmrkCore::unique_collection_id(collection_id) {171 let (collection, collection_id) = match RmrkCore::get_typed_nft_collection_mapped(collection_id, CollectionType::Regular) {
177 Ok(id) => id,
178 Err(_) => return Ok(None)
179 };
180 let collection = match RmrkCore::get_typed_nft_collection(collection_id, CollectionType::Regular) {
181 Ok(c) => c,172 Ok(c) => c,
182 Err(_) => return Ok(None),173 Err(_) => return Ok(None),
183 };174 };
214205
215 let cross_account_id = CrossAccountId::from_sub(account_id);206 let cross_account_id = CrossAccountId::from_sub(account_id);
207
216 let collection_id = match RmrkCore::unique_collection_id(collection_id) {208 let (collection, collection_id) = match RmrkCore::get_typed_nft_collection_mapped(collection_id, CollectionType::Regular) {
217 Ok(id) => id,209 Ok(c) => c,
218 Err(_) => return Ok(Vec::new())210 Err(_) => return Ok(Vec::new()),
219 };211 };
220 if RmrkCore::ensure_collection_type(collection_id, CollectionType::Regular).is_err() { return Ok(Vec::new()); }
221212
222 Ok(213 Ok(
223 collection.account_tokens(cross_account_id)214 collection.account_tokens(cross_account_id)
387 RmrkProperty, misc::{CollectionType},378 RmrkProperty, misc::{CollectionType},
388 };379 };
389380
390 let collection_id = match RmrkCore::unique_collection_id(base_id) {381 let (collection, collection_id) = match RmrkCore::get_typed_nft_collection_mapped(base_id, CollectionType::Base) {
391 Ok(id) => id,
392 Err(_) => return Ok(None)
393 };
394 let collection = match RmrkCore::get_typed_nft_collection(collection_id, CollectionType::Base) {
395 Ok(c) => c,382 Ok(c) => c,
396 Err(_) => return Ok(None),383 Err(_) => return Ok(None),
397 };384 };
407 use pallet_proxy_rmrk_core::{RmrkProperty, misc::{CollectionType, NftType}};394 use pallet_proxy_rmrk_core::{RmrkProperty, misc::{CollectionType, NftType}};
408 use pallet_common::CommonCollectionOperations;395 use pallet_common::CommonCollectionOperations;
409396
410 let collection_id = match RmrkCore::unique_collection_id(base_id) {397 let (collection, collection_id) = match RmrkCore::get_typed_nft_collection_mapped(base_id, CollectionType::Base) {
411 Ok(id) => id,398 Ok(c) => c,
412 Err(_) => return Ok(Vec::new())399 Err(_) => return Ok(Vec::new()),
413 };400 };
414 if RmrkCore::ensure_collection_type(collection_id, CollectionType::Base).is_err() { return Ok(Vec::new()); }401
415
416 let parts = collection.collection_tokens()402 let parts = collection.collection_tokens()
417 .into_iter()403 .into_iter()
442 use pallet_proxy_rmrk_core::{RmrkProperty, misc::CollectionType};428 use pallet_proxy_rmrk_core::{RmrkProperty, misc::CollectionType};
443 use pallet_common::CommonCollectionOperations;429 use pallet_common::CommonCollectionOperations;
444430
445 let collection_id = match RmrkCore::unique_collection_id(base_id) {431 let (collection, collection_id) = match RmrkCore::get_typed_nft_collection_mapped(base_id, CollectionType::Base) {
446 Ok(id) => id,432 Ok(c) => c,
447 Err(_) => return Ok(Vec::new())433 Err(_) => return Ok(Vec::new()),
448 };434 };
449 if RmrkCore::ensure_collection_type(collection_id, CollectionType::Base).is_err() {
450 return Ok(Vec::new());
451 }
452
453435
454 let theme_names = collection.collection_tokens()436 let theme_names = collection.collection_tokens()
475 };457 };
476 use pallet_common::CommonCollectionOperations;458 use pallet_common::CommonCollectionOperations;
477459
478 let collection_id = match RmrkCore::unique_collection_id(base_id) {460 let (collection, collection_id) = match RmrkCore::get_typed_nft_collection_mapped(base_id, CollectionType::Base) {
479 Ok(id) => id,461 Ok(c) => c,
480 Err(_) => return Ok(None)462 Err(_) => return Ok(None),
481 };463 };
482 if RmrkCore::ensure_collection_type(collection_id, CollectionType::Base).is_err() {
483 return Ok(None);
484 }
485464
486 let theme_info = collection.collection_tokens()465 let theme_info = collection.collection_tokens()
487 .into_iter()466 .into_iter()