48 lines
2.3 KiB
TypeScript
48 lines
2.3 KiB
TypeScript
import { getDashboardStats } from '../actions';
|
|
import { Users, Briefcase, FileText } from 'lucide-react';
|
|
|
|
export default async function DashboardPage() {
|
|
const stats = await getDashboardStats();
|
|
|
|
return (
|
|
<div className="space-y-8">
|
|
<div>
|
|
<h1 className="text-3xl font-black uppercase tracking-widest text-white mb-2">Dashboard</h1>
|
|
<p className="text-white/40">Sistem istatistikleri ve özet görünüm.</p>
|
|
</div>
|
|
|
|
<div className="grid grid-cols-1 md:grid-cols-3 gap-6">
|
|
<div className="bg-zinc-950 border border-white/10 rounded-2xl p-6 flex items-center gap-6">
|
|
<div className="w-14 h-14 bg-blue-500/10 text-blue-500 rounded-2xl flex items-center justify-center">
|
|
<Users className="w-6 h-6" />
|
|
</div>
|
|
<div>
|
|
<p className="text-sm text-white/40 font-bold uppercase tracking-widest">Mesajlar</p>
|
|
<p className="text-3xl font-black">{stats.leads}</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="bg-zinc-950 border border-white/10 rounded-2xl p-6 flex items-center gap-6">
|
|
<div className="w-14 h-14 bg-[#1e9a83]/10 text-[#1e9a83] rounded-2xl flex items-center justify-center">
|
|
<Briefcase className="w-6 h-6" />
|
|
</div>
|
|
<div>
|
|
<p className="text-sm text-white/40 font-bold uppercase tracking-widest">Projeler</p>
|
|
<p className="text-3xl font-black">{stats.projects}</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="bg-zinc-950 border border-white/10 rounded-2xl p-6 flex items-center gap-6">
|
|
<div className="w-14 h-14 bg-purple-500/10 text-purple-500 rounded-2xl flex items-center justify-center">
|
|
<FileText className="w-6 h-6" />
|
|
</div>
|
|
<div>
|
|
<p className="text-sm text-white/40 font-bold uppercase tracking-widest">Hizmetler</p>
|
|
<p className="text-3xl font-black">{stats.services}</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|