cpns / apps /web /src /hooks /use-analytics.ts
rogasper's picture
Add analytics components including BreakdownCharts, OverviewCards, ScoreTrendChart, TimeAnalyticsPanel, and WeaknessPanel. Update routing to include analytics routes and enhance sidebar navigation. Add recharts dependency for data visualization.
b87cbc7
Raw
History Blame Contribute Delete
1.07 kB
import { useQuery } from "@tanstack/react-query";
import { trpc } from "@/utils/trpc";
export function useAnalytics() {
const overview = useQuery(trpc.stats.overview.queryOptions());
const byExamType = useQuery(trpc.stats.byExamType.queryOptions());
const bySectionType = useQuery(trpc.stats.bySectionType.queryOptions());
const byFormat = useQuery(trpc.stats.byFormat.queryOptions());
const bySkillTag = useQuery(trpc.stats.bySkillTag.queryOptions());
const trend = useQuery(trpc.stats.trend.queryOptions());
const weaknesses = useQuery(trpc.stats.weaknesses.queryOptions());
const timeAnalytics = useQuery(trpc.stats.timeAnalytics.queryOptions());
const isLoading =
overview.isLoading ||
byExamType.isLoading ||
bySectionType.isLoading ||
byFormat.isLoading ||
bySkillTag.isLoading ||
trend.isLoading ||
weaknesses.isLoading ||
timeAnalytics.isLoading;
return {
overview,
byExamType,
bySectionType,
byFormat,
bySkillTag,
trend,
weaknesses,
timeAnalytics,
isLoading,
};
}