"use client"; import { useState } from "react"; import { Card, CardContent } from "@/components/ui/card"; import { Button } from "@/components/ui/button"; import { BarChart, Bar, XAxis, YAxis, Tooltip, ResponsiveContainer, PieChart, Pie, Cell, RadarChart, PolarGrid, PolarAngleAxis, PolarRadiusAxis, Radar, Legend, AreaChart, CartesianGrid, Area, } from "recharts"; export default function AdminDashboard() { const [range, setRange] = useState("1 Day"); const userData = [ { name: "Salma Husna", value: 80 }, { name: "Sheva", value: 70 }, { name: "Haryanto Wijaya", value: 55 }, { name: "Rina Wati", value: 55 }, { name: "Novan Farhandi", value: 40 }, ]; const mediaData = [ { name: "Media Sosial", value: 30 }, { name: "Media Online", value: 25 }, { name: "Videotron", value: 20 }, { name: "Radio Polri", value: 10 }, { name: "TV Polri", value: 8 }, { name: "Majalah Digital", value: 12 }, ]; const colors = [ "#1D4ED8", "#10B981", "#F59E0B", "#F97316", "#86EFAC", "#A78BFA", ]; const FilterButton = ({ label, value, setValue, }: { label: string; value: string; setValue: (val: string) => void; }) => ( ); const [rangeLine, setRangeLine] = useState("1 Day"); const [rangeChart, setRangeChart] = useState("1 Day"); const [rangeCalendar, setRangeCalendar] = useState("1 Day"); const [rangeLineChart, setRangeLineChart] = useState("1 Day"); const [rangeMedsos, setRangeMedsos] = useState("1 Day"); const lineData = Array.from({ length: 24 }).map((_, i) => ({ time: `${i}:00`, value: Math.floor(Math.random() * 100), })); const radarData = [ { subject: "Instagram", humas: 90, polda: 85 }, { subject: "Facebook", humas: 70, polda: 40 }, { subject: "Twitter (X)", humas: 50, polda: 80 }, { subject: "TikTok", humas: 60, polda: 55 }, { subject: "YouTube", humas: 65, polda: 60 }, ]; const colorsChart = ["#2563EB", "#10B981"]; const FilterButtonLine = ({ label }: { label: string }) => ( ); return (
{/* Header */}

Analitik Campaignpool

{/* Chart 1 */}

Pengguna Paling Aktif

{/* Chart 2 */}

Media Paling Favorit

{mediaData.map((_, index) => ( ))}
{/* Legend */}
{mediaData.map((item, i) => (
{item.name}
))}

Heatmap Order Publish

{/* Heatmap Grid */}
{[ "", "Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Agu", "Sep", "Okt", "Nov", "Des", ].map((m, i) => (
{m}
))} {["Sen", "Sel", "Rab", "Kam", "Jum", "Sab", "Min"].map( (day, rowIndex) => ( <>
{day}
{Array.from({ length: 12 }).map((_, colIndex) => { const intensity = Math.floor(Math.random() * 5); const colors = [ "bg-gray-200", "bg-blue-200", "bg-blue-400", "bg-blue-600", "bg-blue-800", ]; return (
); })} ), )}
{/* Legend */}
Less {[0, 1, 2, 3, 4].map((i) => (
))} More
{/* Line Chart */}

Produksi Konten Internal

{/* RADAR CHART (FIXED) */}

Engagement Media Sosial

); }