Files
manage/frontend/src/hooks/useDashboard.ts
T

43 lines
873 B
TypeScript

import { useQuery } from "@tanstack/react-query";
import {
fetchActivity,
fetchCounts,
fetchLibraries,
fetchMonitoringOverview,
} from "../api/client";
export function useCounts() {
return useQuery({
queryKey: ["dashboard", "counts"],
queryFn: fetchCounts,
staleTime: 5 * 60 * 1000,
});
}
export function useLibraries() {
return useQuery({
queryKey: ["dashboard", "libraries"],
queryFn: fetchLibraries,
staleTime: 5 * 60 * 1000,
});
}
export function useActivity() {
return useQuery({
queryKey: ["dashboard", "activity"],
queryFn: fetchActivity,
refetchInterval: 15_000,
});
}
export function useMonitoringOverview() {
return useQuery({
queryKey: ["dashboard", "monitoring"],
queryFn: fetchMonitoringOverview,
refetchInterval: 30_000,
});
}
// Backward-compatible alias used by older code.
export const useNowPlaying = useActivity;