37 lines
704 B
TypeScript
37 lines
704 B
TypeScript
'use client';
|
|
|
|
import { StatGrid } from '@/ui/StatGrid';
|
|
import { LucideIcon } from 'lucide-react';
|
|
import React from 'react';
|
|
|
|
interface AdminStat {
|
|
label: string;
|
|
value: string | number;
|
|
icon: LucideIcon;
|
|
intent?: 'primary' | 'success' | 'warning' | 'critical' | 'telemetry';
|
|
trend?: {
|
|
value: number;
|
|
isPositive: boolean;
|
|
};
|
|
}
|
|
|
|
interface AdminStatsPanelProps {
|
|
stats: AdminStat[];
|
|
}
|
|
|
|
/**
|
|
* AdminStatsPanel
|
|
*
|
|
* Semantic container for admin statistics.
|
|
* Renders a grid of StatCards.
|
|
*/
|
|
export function AdminStatsPanel({ stats }: AdminStatsPanelProps) {
|
|
return (
|
|
<StatGrid
|
|
stats={stats}
|
|
columns={{ base: 1, md: 2, lg: 4 }}
|
|
variant="card"
|
|
/>
|
|
);
|
|
}
|