diff --git a/src/hooks/moderation/useModerationQueueManager.ts b/src/hooks/moderation/useModerationQueueManager.ts index 3280fe5c..90d97235 100644 --- a/src/hooks/moderation/useModerationQueueManager.ts +++ b/src/hooks/moderation/useModerationQueueManager.ts @@ -152,6 +152,8 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig): pauseFetchingRef: pauseFetchingRef.current, documentHidden: document.hidden, caller: callerLine, + sortField: sort.config.field, + sortDirection: sort.config.direction, timestamp: new Date().toISOString(), }); @@ -181,6 +183,8 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig): console.log("🔍 fetchItems called:", { entityFilter: filters.debouncedEntityFilter, statusFilter: filters.debouncedStatusFilter, + sortField: sort.config.field, + sortDirection: sort.config.direction, silent, timestamp: new Date().toISOString(), }); @@ -461,7 +465,22 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig): setLoadingState("ready"); } }, - [user, isAdmin, isSuperuser, filters, pagination, sort, profileCache, entityCache, toast], + [ + user, + isAdmin, + isSuperuser, + filters.debouncedEntityFilter, + filters.debouncedStatusFilter, + filters.activeTab, + pagination.setTotalCount, + pagination.startIndex, + pagination.endIndex, + sort.config.field, + sort.config.direction, + profileCache, + entityCache, + toast + ], ); // Store fetchItems in ref to avoid re-creating visibility listener @@ -793,9 +812,23 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig): useEffect(() => { if (!user || !initialFetchCompleteRef.current || isMountingRef.current) return; + console.log('🔄 [SORT CHANGE] Detected sort config change:', { + field: sort.config.field, + direction: sort.config.direction, + timestamp: new Date().toISOString() + }); + pagination.reset(); fetchItems(true); - }, [filters.debouncedEntityFilter, filters.debouncedStatusFilter, sort.config]); + }, [ + filters.debouncedEntityFilter, + filters.debouncedStatusFilter, + sort.config.field, + sort.config.direction, + fetchItems, + pagination.reset, + user + ]); // Pagination changes trigger refetch useEffect(() => {