import { useState, useEffect } from 'react'; import Head from 'next/head'; import Layout from '../../components/Layout'; import { adminAPI } from '../../services/api'; export default function AdminUsers() { const [users, setUsers] = useState([]); const [loading, setLoading] = useState(true); useEffect(() => { loadUsers(); }, []); const loadUsers = async () => { try { const { data } = await adminAPI.getUsers({ page: '1', limit: '50' }); setUsers(data.data.users || []); } catch (err) { console.error(err); } setLoading(false); }; const handleSuspend = async (id: string) => { if (!confirm('Suspend user ini?')) return; await adminAPI.suspendUser(id); loadUsers(); }; const handleActivate = async (id: string) => { await adminAPI.activateUser(id); loadUsers(); }; if (loading) return
; return ( <> Manage Users – MarketScope Admin

👥 Manage Users

{users.map((u) => ( ))}
Name Email Role Status Action
{u.name} {u.email} {u.role.replace('USER_', '')}
{u.status}
{u.status === 'ACTIVE' ? ( ) : ( )}
); }