import ConnectionAnalyticsSection from '@/components/analytics/ConnectionAnalyticsSection.tsx'; import ImpactBreakdownSection from '@/components/analytics/ImpactBreakdownSection.tsx'; import MatchingPerformanceSection from '@/components/analytics/MatchingPerformanceSection.tsx'; import ResourceFlowAnalyticsSection from '@/components/analytics/ResourceFlowAnalyticsSection.tsx'; import SupplyDemandSection from '@/components/analytics/SupplyDemandSection.tsx'; import MetricsGrid from '@/components/dashboard/MetricsGrid.tsx'; import { MainLayout } from '@/components/layout/MainLayout.tsx'; import PageHeader from '@/components/layout/PageHeader.tsx'; import Button from '@/components/ui/Button.tsx'; import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/Card.tsx'; import { Container, Flex, Grid, Stack } from '@/components/ui/layout'; import { useAnalyticsDashboard } from '@/hooks/pages/useAnalyticsDashboard.ts'; import { useTranslation } from '@/hooks/useI18n.tsx'; import { useNavigation } from '@/hooks/useNavigation.tsx'; import { BarChart3, Building2, Target, Users } from 'lucide-react'; import { useMemo } from 'react'; const AnalyticsDashboard = () => { const { t } = useTranslation(); const { handleBackNavigation, handleFooterNavigate } = useNavigation(); const { isLoading, analytics } = useAnalyticsDashboard(); const metricItems = useMemo( () => [ { icon: , label: t('analyticsDashboard.totalOrganizations'), value: analytics.totalOrganizations, }, { icon: , label: t('analyticsDashboard.totalSites'), value: analytics.totalSites, }, { icon: , label: t('analyticsDashboard.totalMatches'), value: analytics.totalMatches, }, { icon: , label: t('analyticsDashboard.totalConnections'), value: analytics.totalConnections, }, ], [ analytics.totalConnections, analytics.totalMatches, analytics.totalOrganizations, analytics.totalSites, t, ] ); return ( ({ label: n.item, value: n.count }))} topOffers={analytics.topOffers.map((o) => ({ label: o.item, value: o.count }))} marketGaps={[]} t={t} /> {t('analyticsDashboard.exportData')} ); }; export default AnalyticsDashboard;