"use client"; import React from "react"; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "@/components/ui/table"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { Card } from "@/components/ui/card"; import type { User } from "@/lib/types"; import { formatDate, getInitials } from "@/lib/utils"; import { getRoleDisplayName } from "@/lib/auth"; import { Pencil, MoreHorizontal } from "lucide-react"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, DropdownMenuSeparator, } from "@/components/ui/dropdown-menu"; const roleVariant: Record = { ADMIN: "default", TM_MANAGER: "blue", REVIEWER: "green", VIEWER: "gray", }; interface UserTableProps { users: User[]; onEdit: (user: User) => void; onToggleActive: (user: User) => void; } export function UserTable({ users, onEdit, onToggleActive }: UserTableProps) { return ( User Role Status Last Login Created {users.map((user) => (
{getInitials(user.name)}

{user.name}

{user.email}

{getRoleDisplayName(user.role)} {user.is_active ? "Active" : "Inactive"} {user.last_login ? formatDate(user.last_login) : "Never"} {formatDate(user.created_at)} onEdit(user)}> Edit onToggleActive(user)} > {user.is_active ? "Deactivate" : "Activate"}
))}
); }