diff --git a/src/hooks/useTrending.ts b/src/hooks/useTrending.ts index 26b65b8b..8d30b6f0 100644 --- a/src/hooks/useTrending.ts +++ b/src/hooks/useTrending.ts @@ -527,6 +527,17 @@ export function useBatchEventStats(eventIds: string[], enabled = true) { staleTime: 60 * 1000, gcTime: 5 * 60 * 1000, enabled: enabled && uniqueIds.length > 0, - placeholderData: (prev) => prev, + placeholderData: () => { + // When pagination adds new events, pull cached stats from individual queries + // to prevent stats from disappearing while the new batch query is loading + const placeholderMap = new Map(); + for (const id of uniqueIds) { + const cached = queryClient.getQueryData(['event-stats', id]); + if (cached) { + placeholderMap.set(id, cached); + } + } + return placeholderMap.size > 0 ? placeholderMap : undefined; + }, }); }