import { JSX } from "react"; import { getUsers, addUser, editUser, removeUser } from "../actions/UserAction"; import AddUserForm from "./AddUserForm"; export default async function UsersPage(): Promise { const users = await getUsers(); return (

PostgreSQL User Management

{/* add user form using zod validation */} {/* --- ADD USER FORM --- */}

Add New User

{/* Form using Server Action */}
{ "use server"; const name = formData.get("name") as string; const email = formData.get("email") as string; const pass = formData.get("pass") as string; if (name && email && pass) { await addUser({ name, email, pass }); } }} className="grid grid-cols-1 md:grid-cols-4 gap-3 items-end mt-2" >
{/* --- USER TABLE --- */}
{users.map((user) => ( ))} {users.length === 0 && ( )}
ID Name Email Password Actions
{user.id} {user.name} {user.email} {user.password} {/* EDIT BUTTON (QUICK NAME UPDATE) */}
{ "use server"; await editUser(user.id, { name: `${user.name} (Edited)`, }); }} >
{/* DELETE BUTTON */}
{ "use server"; await removeUser(user.id); }} >
No users found in database. Add one above!
); }