From 6cd5d490de85744e7ece9ff2d57e510ec6e26ab4 Mon Sep 17 00:00:00 2001 From: Erik Date: Mon, 9 Mar 2026 20:14:35 -0300 Subject: [PATCH] fix: increase upload limit to 15MB and fix infinite loading with S3 timeouts --- .../app/admin/projetos/[id]/editar/page.tsx | 56 +++++++++---------- frontend/src/app/admin/projetos/novo/page.tsx | 54 +++++++++--------- frontend/src/app/api/upload/route.ts | 12 +++- frontend/src/lib/minio.ts | 6 ++ 4 files changed, 72 insertions(+), 56 deletions(-) diff --git a/frontend/src/app/admin/projetos/[id]/editar/page.tsx b/frontend/src/app/admin/projetos/[id]/editar/page.tsx index bf5f409..e797b1a 100644 --- a/frontend/src/app/admin/projetos/[id]/editar/page.tsx +++ b/frontend/src/app/admin/projetos/[id]/editar/page.tsx @@ -58,7 +58,7 @@ export default function EditProject({ params }: { params: { id: string } }) { throw new Error('Projeto não encontrado'); } const project = await res.json(); - + setFormData({ title: project.title || '', category: project.category || '', @@ -98,8 +98,8 @@ export default function EditProject({ params }: { params: { id: string } }) { }, [params.id, error, router]); const uploadFile = async (file: File): Promise => { - if (file.size > 2 * 1024 * 1024) { - error('Arquivo maior que 2MB. Escolha uma imagem menor.'); + if (file.size > 15 * 1024 * 1024) { + error('Arquivo maior que 15MB. Escolha uma imagem menor.'); return null; } @@ -236,8 +236,8 @@ export default function EditProject({ params }: { params: { id: string } }) { return (
- @@ -255,14 +255,14 @@ export default function EditProject({ params }: { params: { id: string } }) { Informações Básicas - +
- setFormData({...formData, title: e.target.value})} + onChange={(e) => setFormData({ ...formData, title: e.target.value })} className="w-full px-4 py-3 bg-gray-50 dark:bg-white/5 border border-gray-200 dark:border-white/10 rounded-xl text-gray-900 dark:text-white focus:outline-none focus:border-primary focus:ring-1 focus:ring-primary transition-all" placeholder="Ex: Adequação de Frota Coca-Cola" required @@ -271,9 +271,9 @@ export default function EditProject({ params }: { params: { id: string } }) {
- setNewCategory(e.target.value)} className="flex-1 px-4 py-3 bg-gray-50 dark:bg-white/5 border border-gray-200 dark:border-white/10 rounded-xl text-gray-900 dark:text-white focus:outline-none focus:border-primary focus:ring-1 focus:ring-primary transition-all" @@ -301,7 +301,7 @@ export default function EditProject({ params }: { params: { id: string } }) { if (newCategory.trim()) { const newCat = { value: newCategory, label: newCategory }; setCategories([...categories, newCat]); - setFormData({...formData, category: newCategory}); + setFormData({ ...formData, category: newCategory }); setNewCategory(''); success('Categoria adicionada!'); } @@ -315,10 +315,10 @@ export default function EditProject({ params }: { params: { id: string } }) {
- setFormData({...formData, client: e.target.value})} + onChange={(e) => setFormData({ ...formData, client: e.target.value })} className="w-full px-4 py-3 bg-gray-50 dark:bg-white/5 border border-gray-200 dark:border-white/10 rounded-xl text-gray-900 dark:text-white focus:outline-none focus:border-primary focus:ring-1 focus:ring-primary transition-all" placeholder="Ex: Coca-Cola FEMSA" /> @@ -326,19 +326,19 @@ export default function EditProject({ params }: { params: { id: string } }) {
- setFormData({...formData, date: e.target.value})} + onChange={(e) => setFormData({ ...formData, date: e.target.value })} className="w-full px-4 py-3 bg-gray-50 dark:bg-white/5 border border-gray-200 dark:border-white/10 rounded-xl text-gray-900 dark:text-white focus:outline-none focus:border-primary focus:ring-1 focus:ring-primary transition-all" />
-