diff --git a/frontend/nginx.conf b/frontend/nginx.conf index 06054c6..f81a4f3 100644 --- a/frontend/nginx.conf +++ b/frontend/nginx.conf @@ -4,6 +4,9 @@ server { root /usr/share/nginx/html; index index.html; + # Permite uploads de até 12MB (limite do backend é 10MB) + client_max_body_size 12m; + # Gzip gzip on; gzip_types text/plain text/css application/json application/javascript text/xml application/xml image/svg+xml; diff --git a/frontend/src/index.css b/frontend/src/index.css index 989a3ba..beac79d 100644 --- a/frontend/src/index.css +++ b/frontend/src/index.css @@ -13,6 +13,11 @@ html { scroll-behavior: smooth; } +html, body { + max-width: 100%; + overflow-x: hidden; +} + body { margin: 0; font-family: system-ui, 'Segoe UI', Roboto, sans-serif; diff --git a/frontend/src/pages/Alunos.tsx b/frontend/src/pages/Alunos.tsx index 1752887..777f05a 100644 --- a/frontend/src/pages/Alunos.tsx +++ b/frontend/src/pages/Alunos.tsx @@ -75,34 +75,36 @@ export function Alunos() { {!carregandoAlunos && alunos.length > 0 && ( - - - - - - - - - - - {alunos.map((aluno) => ( - - - - - +
+
NomeE-mailMatrículaStatus
{aluno.nome}{aluno.email}{aluno.matricula ?? '—'} - - {aluno.ativo ? 'Ativo' : 'Inativo'} - -
+ + + + + + - ))} - -
NomeE-mailMatrículaStatus
+ + + {alunos.map((aluno) => ( + + {aluno.nome} + {aluno.email} + {aluno.matricula ?? '—'} + + + {aluno.ativo ? 'Ativo' : 'Inativo'} + + + + ))} + + +
)} diff --git a/frontend/src/pages/DetalheDocumento.tsx b/frontend/src/pages/DetalheDocumento.tsx index 741e853..03776bd 100644 --- a/frontend/src/pages/DetalheDocumento.tsx +++ b/frontend/src/pages/DetalheDocumento.tsx @@ -140,9 +140,9 @@ export function DetalheDocumento() { { label: 'Tamanho', value: formatBytes(doc.tamanho_arquivo) }, { label: 'Submetido em', value: formatDate(doc.criado_em) }, ].map(({ label, value }) => ( -
+
{label}
-
{value}
+
{value}
))} diff --git a/frontend/src/pages/Documentos.tsx b/frontend/src/pages/Documentos.tsx index 526954d..ae46004 100644 --- a/frontend/src/pages/Documentos.tsx +++ b/frontend/src/pages/Documentos.tsx @@ -84,34 +84,36 @@ export function Documentos() { {data && data.dados.length > 0 && ( - - - - - - - - - - - - {data.dados.map((doc) => ( - - - - - - - +
+
TítuloTipoCarga (h)StatusData -
{doc.titulo}{doc.tipo}{doc.carga_horaria}h{new Date(doc.criado_em.replace(' ', 'T')).toLocaleDateString('pt-BR')} - - Ver → - -
+ + + + + + + + - ))} - -
TítuloTipoCarga (h)StatusData
+ + + {data.dados.map((doc) => ( + + {doc.titulo} + {doc.tipo} + {doc.carga_horaria}h + + {new Date(doc.criado_em.replace(' ', 'T')).toLocaleDateString('pt-BR')} + + + Ver → + + + + ))} + + +
)} diff --git a/infra/nginx/default.conf.template b/infra/nginx/default.conf.template index 675de5e..43bbda5 100644 --- a/infra/nginx/default.conf.template +++ b/infra/nginx/default.conf.template @@ -31,6 +31,9 @@ server { # HSTS — força HTTPS por 2 anos add_header Strict-Transport-Security "max-age=63072000" always; + # Permite uploads de até 12MB (limite do backend é 10MB) + client_max_body_size 12m; + location / { proxy_pass http://frontend; proxy_http_version 1.1;