MCPcopy Create free account
hub / github.com/TechJeeper/Printventory / updateFilterIndicator

Function updateFilterIndicator

search.js:234–628  ·  view source on GitHub ↗
(count)

Source from the content-addressed store, hash-verified

232 await window.renderFiles(filteredModels);
233 isFilteringInProgress = false;
234 return;
235 }
236 updateFilterIndicator(filteredModels.length);
237 await window.renderFiles(filteredModels);
238 isFilteringInProgress = false;
239
240 (async () => {
241 try {
242 let acc = filteredModels.slice();
243 let offset = acc.length;
244 while (true) {
245 const chunk = await getCombinedFilteredModels({
246 limit: PROGRESSIVE_CHUNK,
247 offset
248 });
249 if (searchGeneration !== myGeneration) return;
250 if (!chunk || chunk.length === 0) break;
251 acc = acc.concat(chunk);
252 offset += chunk.length;
253 updateFilterIndicator(acc.length);
254 await window.renderFiles(acc);
255 // Yield so layout, thumbnail decode, and input can run between large virtual-grid updates.
256 await new Promise((r) => {
257 if (typeof requestIdleCallback !== 'undefined') {
258 requestIdleCallback(() => r(), { timeout: 100 });
259 } else {
260 setTimeout(r, 48);
261 }
262 });
263 }
264 } catch (err) {
265 console.error("Progressive library load failed:", err);
266 }
267 })();
268 return;
269 }
270
271 filteredModels = await getCombinedFilteredModels();
272 console.log(`Got ${filteredModels.length} filtered models, rendering...`, window.dateAddedFilter ? `(filtered by dateAdded)` : '');
273 updateFilterIndicator(filteredModels.length);
274 await window.renderFiles(filteredModels);
275 // renderer.js sync can lose to rAF/layout; run again after paint (stale Model Details path/name)
276 if (typeof window.syncSelectionWithFilteredModels === 'function') {
277 window.syncSelectionWithFilteredModels(filteredModels);
278 requestAnimationFrame(() => {
279 if (typeof window.syncSelectionWithFilteredModels === 'function') {
280 window.syncSelectionWithFilteredModels(filteredModels);
281 }
282 });
283 }
284
285 } catch (error) {
286 console.error("Error performing combined search:", error);
287 } finally {
288 // Re-enable filter controls
289 toggleFilterControls(true);
290
291 // Hide loading spinner

Callers 1

performCombinedSearchFunction · 0.85

Calls 6

escFunction · 0.85
isQueryChainOperandFunction · 0.85
staticAndFunction · 0.85
escAttrFunction · 0.85
performCombinedSearchFunction · 0.85

Tested by

no test coverage detected