"use client"; import { useState, useMemo } from "react"; import { Eye } from "lucide-react"; import { Tabs, TabsList, TabsTrigger } from "@/components/ui/tabs"; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "@/components/ui/table"; import { cn } from "@/lib/utils"; import Link from "next/link"; export default function ApproverTable() { const [activeCategory, setActiveCategory] = useState("Semua"); const categories = [ "Semua", "Online Media", "Social Media", "Videotron", "Radio Polri", "TV Polri", "Majalah Digital", ]; const data = [ { id: 1, no: 1, media: "Media Online", title: "Lorem ipsum dolor sit amet consectetur. Tempor mi scelerisque enim semper sed nibh. Eget sit molestie.", status: "Tertunda", }, { id: 2, no: 2, media: "Media Sosial", title: "Lorem ipsum dolor sit amet consectetur. Ultricies pellentesque ullamcorper mattis pellentesque. Amet eu ut.", status: "Tertunda", }, { id: 3, no: 3, media: "Videotron", title: "Lorem ipsum dolor sit amet consectetur. Nisl orci magna ridiculus egestas. Eu sit ut vitae interdum. Aenean.", status: "Tertunda", }, { id: 4, no: 4, media: "Radio Polri", title: "Lorem ipsum dolor sit amet consectetur. Tincidunt sem tellus interdum pharetra pharetra arcu. Sapien varius.", status: "Tertunda", }, { id: 5, no: 5, media: "TV Polri", title: "Lorem ipsum dolor sit amet consectetur. Ac purus diam eget nulla turpis elementum. Est vestibulum nibh.", status: "Selesai", }, { id: 6, no: 6, media: "Majalah Digital", title: "Lorem ipsum dolor sit amet consectetur. Eget odio magna id velit lacus tellus. Fermentum molestie viverra.", status: "Selesai", }, ]; // ✅ Filter data berdasarkan kategori aktif const filteredData = useMemo(() => { if (activeCategory === "Semua") return data; return data.filter( (item) => item.media.toLowerCase() === activeCategory.toLowerCase() ); }, [activeCategory]); return (