'use client'; /** * Payees Dashboard — Earnings distribution and payee composition. * * Displays: * - KPI card: total Payees * - Horizontal bar chart: top 10 Payees by earnings * - Pie chart: Payees by type (publisher, sub-publisher, administrator, individual) * - Line chart: payment amounts over time (monthly) * - Bar chart: Payees by territory * - DateRangeFilter at the top * * Requirements: 7.1, 7.2, 7.3, 7.4, 7.5, 7.6, 7.7 */ import { usePayeesData } from '@/lib/api/queries'; import { useTranslation } from '@/lib/hooks/useTranslation'; import { formatNumber } from '@/lib/utils/format'; import { useCurrencyAxisFormatter } from '@/lib/hooks/useCurrencyFormatter'; import { chartColors } from '@/lib/constants/theme'; import DateRangeFilter from '@/components/dashboard/DateRangeFilter'; import KpiGrid from '@/components/dashboard/KpiGrid'; import KpiCard from '@/components/dashboard/KpiCard'; import ChartGrid from '@/components/dashboard/ChartGrid'; import ChartCard from '@/components/charts/ChartCard'; import LineChartWidget from '@/components/charts/LineChartWidget'; import PieChartWidget from '@/components/charts/PieChartWidget'; import BarChartWidget from '@/components/charts/BarChartWidget'; export default function PayeesPage() { const { data, isLoading } = usePayeesData(); const t = useTranslation(); const fmtAxis = useCurrencyAxisFormatter(); if (isLoading || !data) { return (
{t.dashboard.loading}