From 9d21d9999f1f469910d76247ed29cd0584f7d104 Mon Sep 17 00:00:00 2001 From: ryan Date: Mon, 31 Mar 2025 18:07:36 +0300 Subject: [PATCH] fix(labels): add set_is_fetching_labels signal to fetch_item_properties label to fix error --- .gitignore | 3 ++- src/components/items_list.rs | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index a2868de..1d53e8f 100644 --- a/.gitignore +++ b/.gitignore @@ -18,4 +18,5 @@ playwright/.cache/ .idea/ # Ignore database file -compareware.db \ No newline at end of file +compareware.db +.qodo diff --git a/src/components/items_list.rs b/src/components/items_list.rs index 615ff30..2fead66 100644 --- a/src/components/items_list.rs +++ b/src/components/items_list.rs @@ -397,6 +397,7 @@ pub fn ItemsList( property_cache: ReadSignal>>, set_property_cache: WriteSignal>>, property_labels: ReadSignal>, + set_is_fetching_labels: WriteSignal, ) -> HashMap { // Check cache first @@ -453,6 +454,7 @@ pub fn ItemsList( .collect(); if !missing_ids.is_empty() { + let new_labels = fetch_property_labels( missing_ids, set_property_labels.clone(), @@ -696,6 +698,7 @@ pub fn ItemsList( property_cache.clone(), set_property_cache.clone(), property_labels.clone(), + set_is_fetching_labels.clone() ) .await; // Update fetched properties and property labels @@ -746,6 +749,7 @@ pub fn ItemsList( property_cache.clone(), set_property_cache.clone(), property_labels.clone(), + set_is_fetching_labels.clone() ) .await; log!("Fetched properties for index {}: {:?}", index, properties); @@ -897,7 +901,7 @@ pub fn ItemsList( // Fetch additional properties from Wikidata let wikidata_id = id.clone(); spawn_local(async move { - let properties = fetch_item_properties(&wikidata_id, set_property_labels.clone(), property_cache.clone(), set_property_cache.clone(), property_labels.clone()).await; + let properties = fetch_item_properties(&wikidata_id, set_property_labels.clone(), property_cache.clone(), set_property_cache.clone(), property_labels.clone(),set_is_fetching_labels.clone()).await; // log!("Fetched properties for Wikidata ID {}: {:?}", wikidata_id, properties); // Populate the custom properties for the new item