fix(native): invalidate discover and people after title actions

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
jakeandClaude Sonnet 5.5 committed 2026-10-04 15:59:38 -04:00
1 parent a0159a3d4b
commit 4addc32e76
1 file changed
+3 -1
+3 -1
View File
@@ -8,11 +8,13 @@ import { i18n } from "@sofa/i18n";
let widgetRefreshTimer: ReturnType<typeof setTimeout> | null = null; let widgetRefreshTimer: ReturnType<typeof setTimeout> | null = null;
/** Invalidate title + tracking + library queries. Used by most title mutations. */ /** Invalidate every query that carries per-user tracking state. Used by most title mutations. */
export function invalidateTitleQueries() { export function invalidateTitleQueries() {
queryClient.invalidateQueries({ queryKey: orpc.titles.key() }); queryClient.invalidateQueries({ queryKey: orpc.titles.key() });
queryClient.invalidateQueries({ queryKey: orpc.tracking.key() }); queryClient.invalidateQueries({ queryKey: orpc.tracking.key() });
queryClient.invalidateQueries({ queryKey: orpc.library.key() }); queryClient.invalidateQueries({ queryKey: orpc.library.key() });
queryClient.invalidateQueries({ queryKey: orpc.discover.key() });
queryClient.invalidateQueries({ queryKey: orpc.people.key() });
// Debounce widget refresh to batch rapid mutations (e.g. watching multiple episodes) // Debounce widget refresh to batch rapid mutations (e.g. watching multiple episodes)
if (widgetRefreshTimer) clearTimeout(widgetRefreshTimer); if (widgetRefreshTimer) clearTimeout(widgetRefreshTimer);