mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-22 05:51:12 -05:00
Fix: Use onChange callback for sorting
This commit is contained in:
@@ -103,6 +103,16 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig):
|
|||||||
initialConfig: { field: "created_at", direction: "asc" },
|
initialConfig: { field: "created_at", direction: "asc" },
|
||||||
persist: true,
|
persist: true,
|
||||||
storageKey: "moderationQueue_sortConfig",
|
storageKey: "moderationQueue_sortConfig",
|
||||||
|
onChange: useCallback((config: SortConfig) => {
|
||||||
|
if (!user || !initialFetchCompleteRef.current || isMountingRef.current) {
|
||||||
|
console.log('[Sort onChange] Skipped:', { user: !!user, initialFetch: initialFetchCompleteRef.current, mounting: isMountingRef.current });
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log('[Sort onChange] Triggered - Refetching with:', config);
|
||||||
|
pagination.reset();
|
||||||
|
fetchItemsRef.current?.(true);
|
||||||
|
}, [user]),
|
||||||
});
|
});
|
||||||
|
|
||||||
const queue = useModerationQueue();
|
const queue = useModerationQueue();
|
||||||
@@ -804,25 +814,6 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig):
|
|||||||
fetchItems(true);
|
fetchItems(true);
|
||||||
}, [filters.debouncedEntityFilter, filters.debouncedStatusFilter]);
|
}, [filters.debouncedEntityFilter, filters.debouncedStatusFilter]);
|
||||||
|
|
||||||
// Sort changes trigger refetch
|
|
||||||
useEffect(() => {
|
|
||||||
console.log('[Sort Effect] Triggered:', {
|
|
||||||
field: sort.config.field,
|
|
||||||
direction: sort.config.direction,
|
|
||||||
user: !!user,
|
|
||||||
isMounting: isMountingRef.current
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!user || isMountingRef.current) {
|
|
||||||
console.log('[Sort Effect] Skipped due to guards');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
console.log('[Sort Effect] Executing refetch');
|
|
||||||
pagination.reset();
|
|
||||||
fetchItemsRef.current?.(true);
|
|
||||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
||||||
}, [sort.config]);
|
|
||||||
|
|
||||||
// Pagination changes trigger refetch
|
// Pagination changes trigger refetch
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user