import { type ChartConfig, ChartContainer, ChartTooltip, ChartTooltipContent, } from "@/components/ui/chart"; import { api } from "@/utils/api"; import { Area, AreaChart, CartesianGrid, ResponsiveContainer, XAxis, YAxis, } from "recharts"; export interface RequestDistributionChartProps { dateRange?: { from: Date | undefined; to: Date | undefined; }; } const chartConfig = { views: { label: "Page Views", }, count: { label: "Count", color: "hsl(var(--chart-1))", }, } satisfies ChartConfig; export const RequestDistributionChart = ({ dateRange, }: RequestDistributionChartProps) => { const { data: stats } = api.settings.readStats.useQuery( { dateRange: dateRange ? { start: dateRange.from?.toISOString(), end: dateRange.to?.toISOString(), } : undefined, }, { refetchInterval: 1333, }, ); return ( new Date(value).toLocaleTimeString([], { hour: "2-digit", minute: "2-digit", }) } /> } labelFormatter={(value) => new Date(value).toLocaleString([], { month: "short", day: "numeric", hour: "2-digit", minute: "2-digit", }) } /> ); };