Nenhum animal encontrado.
) : (
-
- {filteredAnimals.map(animal => (
-
-
-
Imagem
- {animal.image && (
-
- )}
-
setDeleteAnimal(animal)}
- className="absolute top-2 right-2 text-red-500 bg-white p-1 rounded-full hover:bg-red-50 transition"
- >
-
-
-
-
-
-
{animal.name}
-
+
+ {paginatedAnimals.map(animal => (
+
+
+
Imagem
+ {animal.image && (
+
+ )}
+
setDeleteAnimal(animal)}
+ className="absolute top-2 right-2 text-red-500 bg-white p-1 rounded-full hover:bg-red-50 transition"
>
- {animal.status}
-
+
+
-
- {calcularIdade(animal.birthDate)} • {animal.breed || "-"}
-
+
+
+
{animal.name}
+
+ {animal.status}
+
+
+
+ {calcularIdade(animal.birthDate)} • {animal.breed || "-"}
+
+
setSelectedAnimal(animal)}
+ className="w-full mt-2 px-3 py-2 border border-gray-200 rounded-xl hover:bg-gray-100 transition text-sm font-medium"
+ >
+ Ver detalhes
+
+
+
+ ))}
+
+
+
+
+ setCurrentPage(p => Math.max(1, p - 1))}
+ disabled={currentPage === 1}
+ aria-disabled={currentPage === 1}
+ className={`px-3 py-1 rounded-md border border-gray-300 ${currentPage === 1 ? "cursor-not-allowed opacity-50" : "cursor-pointer hover:bg-gray-100"}`}
+ >
+ Anterior
+
+
+ {getPageNumbers().map(n => (
setSelectedAnimal(animal)}
- className="w-full mt-2 px-3 py-2 border border-gray-200 rounded-xl hover:bg-gray-100 transition text-sm font-medium"
+ key={n}
+ onClick={() => setCurrentPage(n)}
+ aria-current={n === currentPage ? "page" : undefined}
+ className={`px-3 py-1 rounded-md border ${n === currentPage ? "bg-blue-600 text-white border-blue-600" : "border-gray-300 hover:bg-gray-100"} cursor-pointer`}
>
- Ver detalhes
+ {n}
-
+ ))}
+
+
setCurrentPage(p => Math.min(totalPages, p + 1))}
+ disabled={currentPage === totalPages}
+ aria-disabled={currentPage === totalPages}
+ className={`px-3 py-1 rounded-md border border-gray-300 ${currentPage === totalPages ? "cursor-not-allowed opacity-50" : "cursor-pointer hover:bg-gray-100"}`}
+ >
+ Próxima
+
- ))}
-
+
+
+ Mostrando {startIndex + 1}–{endIndex} de {filteredAnimals.length}
+
+
+ >
)}
@@ -429,4 +497,4 @@ export default function AnimalList() {
)}
);
-}
+}
\ No newline at end of file
diff --git a/src/pages/Animal/AnimalRegister.tsx b/src/pages/Animal/AnimalRegister.tsx
index a373e33..7d7e251 100644
--- a/src/pages/Animal/AnimalRegister.tsx
+++ b/src/pages/Animal/AnimalRegister.tsx
@@ -162,12 +162,24 @@ export default function AnimalRegister() {
Sexo
- Macho
+ Macho
- Fêmea
+ Fêmea
{errors.sex &&
{errors.sex} }