Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
936e450
merge(staging): minor changes into env (#238) (#240)
SainyGb Aug 26, 2025
37f4dd2
Merge branch 'staging'
SainyGb Aug 26, 2025
79596e7
fix: duplicated const
SainyGb Aug 26, 2025
657e36a
fix: duplicate import fix App.jsx
SainyGb Aug 26, 2025
ac87d06
fix: duplicate import fix App.jsx (#246) (#247)
SainyGb Aug 26, 2025
fbdea8d
fix: vite env import
SainyGb Aug 26, 2025
a113f5b
chore(env): removed unused variables
SainyGb Aug 26, 2025
ffdf0e9
merge(main): fix vite env import (#249)
SainyGb Aug 26, 2025
41ad86a
style: daisyui minimal integration
Braz-Souza Aug 28, 2025
9e42f9b
style: style cadastrarUsuario page
Braz-Souza Aug 29, 2025
e3071b6
style: mudar estilizacao CadastroEventos
Braz-Souza Aug 29, 2025
c93a985
style: mudar estilizacao CadastroPeriodicos
Braz-Souza Aug 29, 2025
8d924bc
style: mudar estilizacao Registro e Detalhe de Pendentes
Braz-Souza Aug 29, 2025
52a60e2
style: continuação das mudanças para daisyui
Braz-Souza Aug 29, 2025
4713301
fix: mensagem exibida ao ocorrer erro de comunicação com o banco ao d…
andreyacpaiva Aug 30, 2025
a90af0f
fix: lint check
andreyacpaiva Aug 30, 2025
1b9b9c0
merge: dev into styles fix
Braz-Souza Aug 31, 2025
80d7990
styles: estilizar pagina de detalhes de veiculos
Braz-Souza Sep 1, 2025
fd04402
style: estilizar botao para consulta
Braz-Souza Sep 1, 2025
6237485
style: estilizacao basica pra mobile
Braz-Souza Sep 1, 2025
3915559
fix: melhorar filtro (BUG-025)
Braz-Souza Sep 1, 2025
33cb16c
merge: mensagem exibida ao ocorrer erro de comunicação com o bd
Braz-Souza Sep 1, 2025
d73c99d
Merge branch 'dev' into styles/daisyui
Braz-Souza Sep 1, 2025
63d36d6
fix: lint
Braz-Souza Sep 1, 2025
ad21d0d
merge: adicionar styles e fix filtro
Braz-Souza Sep 1, 2025
aadb59d
fix: correspondencia exata no filtro
Braz-Souza Sep 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/workflows/prod-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@ jobs:
echo "BACKEND_IMAGE_TAG=${{ github.sha }}" > .env
echo "FRONTEND_IMAGE_TAG=${{ github.sha }}" >> .env
echo "REGISTRY_USER=${{ github.repository_owner }}" >> .env
echo "BACK_API_URL=${{ secrets.BACK_API_URL }}" >> .env

docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d --remove-orphans --build
docker image prune -af
2 changes: 0 additions & 2 deletions docker-compose.prod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,6 @@ services:

frontend:
image: ghcr.io/${REGISTRY_USER}/frontend:${FRONTEND_IMAGE_TAG}
environment:
- VITE_API_URL=${BACK_API_URL}
ports:
- "8081:80"
restart: always
Expand Down
153 changes: 0 additions & 153 deletions frontend/dist/assets/index-BugyCYCc.js

This file was deleted.

1 change: 0 additions & 1 deletion frontend/dist/assets/index-ClAAkVpc.css

This file was deleted.

20 changes: 0 additions & 20 deletions frontend/dist/index.html

This file was deleted.

10 changes: 10 additions & 0 deletions frontend/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions frontend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
"axios": "^1.9.0",
"crypto-js": "^4.2.0",
"crypto.js": "^3.3.4",
"daisyui": "^5.0.54",
"react": "^19.1.0",
"react-dom": "^19.1.0",
"react-hook-form": "^7.57.0",
Expand Down
11 changes: 1 addition & 10 deletions frontend/src/App.jsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,11 @@
import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
import { QueryClientProvider, QueryClient } from '@tanstack/react-query';
import { Suspense } from 'react';
import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
import { QueryClientProvider, QueryClient } from '@tanstack/react-query';
import { Suspense } from 'react';
import Home from './pages/Home';
import NotFound from './pages/NotFound';
import CadastroUsuario from './pages/CadastroUsuario';
import CadastroEvento from './pages/CadastroEvento';
import ValidacaoPeriodico from './pages/ValidacaoPeriodico';
import GerenciadorCadastros from './pages/GerenciadorCadastros';
import RegistrosPendentes from './pages/RegistrosPendentes';
import RevisaoCadastroEvento from './pages/RevisaoCadastroEvento';
import CadastroPeriodico from './pages/CadastroPeriodico';
Expand All @@ -18,7 +14,6 @@ import ConsultaEventosPeriodicos from './pages/ConsultaEventosPeriodicos';
import VisualizarPeriodico from './pages/VisualizarPeriodico';
import VisualizarEvento from './pages/VisualizarEvento';
import Login from './pages/Login';
import HeaderSistema from './components/HeaderSistema';
import VisualizarGraficos from './pages/VisualizarGraficos';
import AuditoriaLogs from './pages/AuditoriaLogs';

Expand All @@ -41,7 +36,7 @@ const App = () => {
return (
<QueryClientProvider client={queryClient}>
<Router>
<div className="App w-screen h-screen">
<div className="App w-screen min-h-screen bg-base-300">
<main>
<Suspense fallback={<LoadingComponent />}>
<Routes>
Expand All @@ -65,10 +60,6 @@ const App = () => {
path="/validacao-cadastro"
element={<ValidacaoPeriodico />}
/>
<Route
path="/cadastro-pendente"
element={<GerenciadorCadastros />}
/>
<Route
path="/visualizar-graficos"
element={<VisualizarGraficos />}
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/assets/close.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 2 additions & 4 deletions frontend/src/components/AdequacaoDefesa.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,8 @@ const AdequacaoDefesa = ({ adequacaoDefesa }) => {
};

return (
<div className="p-4 rounded-lg shadow-sm bg-white my-4">
<h4 className="text-gray-800 font-semibold text-lg mb-2">
Adequação para Defesa
</h4>
<div className="p-4 rounded-lg shadow-sm my-4">
<h4 className="font-semibold text-lg mb-2">Adequação para Defesa</h4>
<p className={getAdequacaoStyle(adequacaoDefesa)}>
{formatarAdequacao(adequacaoDefesa)}
</p>
Expand Down
141 changes: 37 additions & 104 deletions frontend/src/components/ErrorPopup.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -56,127 +56,60 @@ function ErrorPopup({ isOpen, onClose, title, message, type = 'error' }) {
}
}, [isOpen]);

const getIconColor = itemType => {
const getAlertClass = itemType => {
switch (itemType) {
case 'error':
return 'text-red-600';
return 'alert-error';
case 'warning':
return 'text-red-600';
return 'alert-warning';
case 'info':
return 'text-red-600';
return 'alert-info';
default:
return 'text-red-600';
}
};

const getBorderColor = itemType => {
switch (itemType) {
case 'error':
return 'border-l-red-600';
case 'warning':
return 'border-l-red-600';
case 'info':
return 'border-l-red-600';
default:
return 'border-l-red-600';
return 'alert-error';
}
};

return (
<div
className="fixed top-4 left-1/2 transform -translate-x-1/2 z-50 space-y-2 w-full max-w-2xl px-4"
style={{ pointerEvents: 'none' }}
>
<div className="toast toast-top toast-center z-50">
{transitions((style, item) => (
<div
style={{
...style,
pointerEvents: 'auto',
willChange: 'transform, opacity, height',
}}
className={`bg-yellow-100 rounded-lg shadow-xl border-l-4 ${getBorderColor(item.type)} w-full overflow-hidden`}
className={`alert ${getAlertClass(item.type)} shadow-lg max-w-2xl`}
ref={ref => ref && refMap.set(item, ref)}
>
<div ref={ref => ref && refMap.set(item, ref)} className="p-3 py-2">
<div className="flex items-center justify-between">
<div className="flex items-center space-x-3 flex-1">
<div className={`${getIconColor(item.type)}`}>
{item.type === 'error' && (
<svg
className="w-5 h-5"
fill="currentColor"
viewBox="0 0 20 20"
>
<path
fillRule="evenodd"
d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z"
clipRule="evenodd"
/>
</svg>
)}
{item.type === 'warning' && (
<svg
className="w-5 h-5"
fill="currentColor"
viewBox="0 0 20 20"
>
<path
fillRule="evenodd"
d="M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z"
clipRule="evenodd"
/>
</svg>
)}
{item.type === 'info' && (
<svg
className="w-5 h-5"
fill="currentColor"
viewBox="0 0 20 20"
>
<path
fillRule="evenodd"
d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z"
clipRule="evenodd"
/>
</svg>
)}
</div>
<div className="flex-1 min-w-0">
<h3 className="text-sm font-medium text-red-600 mb-1">
{item.title}
</h3>
<p className="text-sm text-red-600 leading-relaxed">
{item.message}
</p>
</div>
</div>
<button
onClick={() => {
if (cancelMap.has(item)) {
cancelMap.get(item)();
}
// Clear the items state and reset flags
setItems([]);
setHasShownCurrent(false);
onClose(); // Call onClose to update parent state
}}
className="!px-3 !py-2 !bg-red-500 hover:!bg-red-600 !text-white !border-0 !rounded-none focus:!outline-none focus:!ring-2 focus:!ring-red-500 focus:!ring-opacity-50 transition-colors duration-200 font-medium text-sm flex-shrink-0"
style={{ fontFamily: 'Poppins', fontWeight: '400' }}
<div>
<span className="font-bold">{item.title}</span>
<div className="text-sm">{item.message}</div>
</div>
<div className="flex-none">
<button
onClick={() => {
if (cancelMap.has(item)) {
cancelMap.get(item)();
}
setItems([]);
setHasShownCurrent(false);
onClose();
}}
className="btn btn-sm btn-ghost"
>
<svg
className="w-4 h-4"
fill="none"
viewBox="0 0 24 24"
stroke="currentColor"
>
<svg
className="w-4 h-4"
fill="none"
viewBox="0 0 24 24"
stroke="currentColor"
>
<path
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth={2}
d="M6 18L18 6M6 6l12 12"
/>
</svg>
</button>
</div>
<path
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth={2}
d="M6 18L18 6M6 6l12 12"
/>
</svg>
</button>
</div>
</div>
))}
Expand Down
8 changes: 4 additions & 4 deletions frontend/src/components/EventPeriodDropdown.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ export default function EventPeriodDropdown() {
return (
<div className="relative" ref={dropdownRef}>
<div
className="block py-2 px-3 text-black bg-white border border-black rounded-none hover:bg-gray-100 transition-colors cursor-pointer"
className="block py-2 px-3 btn btn-soft btn-primary"
onClick={() => setOpen(prev => !prev)}
role="button"
tabIndex={0}
Expand All @@ -42,18 +42,18 @@ export default function EventPeriodDropdown() {
</span>
</div>
{open && (
<div className="absolute left-0 mt-2 min-w-full bg-white border border-black rounded-none shadow-lg z-50">
<div className="absolute left-0 w-4/5">
<Link
to="/cadastro-evento"
className="block px-4 py-2 text-black hover:bg-gray-100"
className="px-4 py-2 min-w-full btn btn-soft btn-primary rounded-none"
onClick={() => setOpen(false)}
aria-current="page"
>
Cadastrar Eventos
</Link>
<Link
to="/cadastro-periodico"
className="block px-4 py-2 text-black hover:bg-gray-100"
className="block px-4 py-2 btn btn-soft btn-primary rounded-none"
onClick={() => setOpen(false)}
aria-current="page"
>
Expand Down
Loading