From 962cea0fd99eb2cad1e54154d8a6dcee0e891e91 Mon Sep 17 00:00:00 2001 From: Frederico Castro Date: Fri, 26 Dec 2025 20:43:05 -0300 Subject: [PATCH] fix(frontend): corrigir formatacao da secao Lattes e configurar acesso Oracle CAPES - Adicionar estilos CSS para secao Lattes (titulacoes em badges separados) - Montar arquivo .env no container backend para carregar credenciais Oracle CAPES - Configurar DNS da VPN CAPES no docker-compose para resolucao de hostnames --- docker-compose.yml | 6 ++ frontend/src/components/ConsultorCard.css | 87 +++++++++++++++++++++++ 2 files changed, 93 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index 99e7b1a..415afe5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -13,6 +13,10 @@ services: - ./backend/.env extra_hosts: - "host.docker.internal:host-gateway" + dns: + - 172.19.100.16 + - 172.19.100.17 + - 8.8.8.8 environment: - API_HOST=0.0.0.0 - API_PORT=8000 @@ -23,6 +27,8 @@ services: - ./backend/src:/app/src - ./backend/scripts:/app/scripts - ./backend/static:/app/static + - ./backend/.env:/app/.env:ro + - ./backend/instantclient_23_7:/opt/oracle/instantclient_23_7:ro - /etc/localtime:/etc/localtime:ro networks: - shared_network diff --git a/frontend/src/components/ConsultorCard.css b/frontend/src/components/ConsultorCard.css index 10a19a4..cf58ffa 100644 --- a/frontend/src/components/ConsultorCard.css +++ b/frontend/src/components/ConsultorCard.css @@ -1147,6 +1147,93 @@ color: #94a3b8; } +.lattes-section { + grid-column: 1 / -1; +} + +.lattes-content { + display: flex; + flex-direction: column; + gap: 0.75rem; +} + +.lattes-link { + display: inline-flex; + align-items: center; + gap: 0.5rem; + padding: 0.5rem 0.75rem; + background: rgba(255, 255, 255, 0.04); + border: 1px solid var(--stroke); + border-radius: 8px; + color: var(--accent-2); + text-decoration: none; + font-size: 0.85rem; + font-weight: 500; + transition: all 200ms ease; + width: fit-content; +} + +.lattes-link:hover { + background: rgba(79, 70, 229, 0.15); + border-color: rgba(79, 70, 229, 0.4); +} + +.lattes-icon { + font-size: 1rem; +} + +.lattes-id { + font-family: 'JetBrains Mono', 'Fira Code', monospace; + font-size: 0.8rem; +} + +.lattes-external { + font-size: 0.75rem; + opacity: 0.7; +} + +.titulacoes-resumo { + display: flex; + flex-wrap: wrap; + gap: 0.5rem; + align-items: center; +} + +.titulacao-badge { + display: inline-flex; + align-items: center; + gap: 0.3rem; + padding: 0.35rem 0.6rem; + background: linear-gradient(135deg, rgba(192, 132, 252, 0.2), rgba(192, 132, 252, 0.08)); + border: 1px solid rgba(192, 132, 252, 0.35); + border-radius: 6px; + color: #d8b4fe; + font-size: 0.75rem; + font-weight: 500; + white-space: nowrap; +} + +.titulacao-clicavel { + cursor: pointer; + transition: all 150ms ease; +} + +.titulacao-clicavel:hover { + transform: translateY(-2px); + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); + background: linear-gradient(135deg, rgba(192, 132, 252, 0.3), rgba(192, 132, 252, 0.15)); +} + +.lattes-producoes { + background: linear-gradient(135deg, rgba(251, 146, 60, 0.2), rgba(251, 146, 60, 0.08)); + border-color: rgba(251, 146, 60, 0.35); + color: #fdba74; +} + +.lattes-producoes:hover { + background: linear-gradient(135deg, rgba(251, 146, 60, 0.3), rgba(251, 146, 60, 0.15)); +} + @media (max-width: 900px) { .tipos-atuacao-container { margin-top: 0.3rem;