import { notFound } from "next/navigation";
import { UserForm } from "@/components/users/user-form";
import { createUserAction } from "@/server/actions/users";
import { requireUser } from "@/lib/session";
import { can } from "@/lib/permissions";

export const dynamic = "force-dynamic";

export default async function NuevoUsuarioPage() {
  const currentUser = await requireUser();
  if (!can(currentUser.role, "usuario:manage")) notFound();

  return (
    <div className="space-y-6">
      <div>
        <h2 className="text-2xl font-semibold tracking-tight">Nuevo usuario</h2>
        <p className="text-sm text-muted-foreground">Crea un usuario con rol y credenciales iniciales.</p>
      </div>
      <UserForm
        title="Datos del usuario"
        description="Solo un administrador puede crear usuarios nuevos."
        action={createUserAction}
        submitLabel="Crear usuario"
        showPassword
        initialValues={{ isActive: true }}
      />
    </div>
  );
}
