"use client"; import { useState } from "react"; import Link from "next/link"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger } from "@/components/ui/dropdown-menu"; import { PlusCircle, Search, MoreHorizontal, Pencil, Trash2, Shield, UserCog } from "lucide-react"; import { Badge } from "@/components/ui/badge"; import { toast } from "sonner"; export default function AdminUsersPage() { const [searchQuery, setSearchQuery] = useState(""); // Mock data for users const users = [ { id: 1, name: "Jean Dupont", email: "jean.dupont@example.com", role: "user", status: "active", lastLogin: "2025-05-15T14:32:00", projects: 3, }, { id: 2, name: "Marie Martin", email: "marie.martin@example.com", role: "admin", status: "active", lastLogin: "2025-05-15T13:45:00", projects: 5, }, { id: 3, name: "Pierre Durand", email: "pierre.durand@example.com", role: "user", status: "inactive", lastLogin: "2025-05-10T11:20:00", projects: 1, }, { id: 4, name: "Sophie Lefebvre", email: "sophie.lefebvre@example.com", role: "user", status: "active", lastLogin: "2025-05-15T10:15:00", projects: 2, }, { id: 5, name: "Thomas Bernard", email: "thomas.bernard@example.com", role: "admin", status: "active", lastLogin: "2025-05-14T16:30:00", projects: 0, }, ]; // Filter users based on search query const filteredUsers = users.filter( (user) => user.name.toLowerCase().includes(searchQuery.toLowerCase()) || user.email.toLowerCase().includes(searchQuery.toLowerCase()) || user.role.toLowerCase().includes(searchQuery.toLowerCase()) ); const handleDeleteUser = (userId: number) => { toast.success(`Utilisateur #${userId} supprimé avec succès`); }; const handleChangeRole = (userId: number, newRole: string) => { toast.success(`Rôle de l'utilisateur #${userId} changé en ${newRole}`); }; return (