Commit Graph

45 Commits (master)

Author SHA1 Message Date
Artur Oliveira 7be806a81e chore(theme): alinhar modo escuro ao SO
- remove o provedor e o toggle manual de tema
- aplica a classe dark conforme matchMedia ao inicializar o app
- ajusta o toaster para acompanhar as cores do sistema
2025-12-16 18:57:27 -03:00
Artur Oliveira 3104f83170 feat(ui): adicionar suporte avançado de tema
- define tokens CSS/Tailwind com variantes claras e escuras
- adapta layout, filtros, modais e tabela aos novos estilos
- adiciona favicon otimizado e controles de dados sensíveis
2025-12-16 18:57:11 -03:00
Artur Oliveira c665aa18ea feat(ui): ocultar dados sensíveis na tabela
- adiciona botão para alternar visibilidade de IP, porta, usuário e senha
- mantém placeholders quando oculto e preserva layout paginado
2025-12-16 18:19:14 -03:00
Artur Oliveira 7460577423 feat(pagination): paginar listagem de servidores
- adiciona DTO de página e paginação no endpoint GET /api/servers
- aplica busca paginada no service/repositório com limites seguros
- atualiza dashboard e tabela React com controles e requisições paginadas
2025-12-16 18:16:22 -03:00
Artur Oliveira d4d65ad0f9 feat(frontend): consumir tipos dinâmicos
- remove listas fixas em Dashboard, Header e FilterBar
- busca opções via API e reutiliza nos selects e métricas
- fallback dos labels agora trata tipos desconhecidos
2025-12-16 18:09:54 -03:00
Artur Oliveira a43fc58ff7 feat(servers): permitir tipos vindos do banco
- remove enums fixos de tipo, aplicação e dbType
- atualiza DTOs, controller e repositório para lidar com strings normalizadas
- normaliza e registra tipos durante criação e importação em massa
2025-12-16 18:09:40 -03:00
Artur Oliveira bba78772db feat(servers): exibir senha na listagem
- inclui o campo password no DTO enviado pelo backend
- ajusta tipagens e tabela do dashboard para mostrar a credencial
2025-12-16 17:40:29 -03:00
Artur Oliveira 25579ab7bd feat(applications): ampliar lista suportada
- adiciona CDR, FUNCIONALIDADE e VOICEMAIL ao enum Applications
- reflete as novas opções nos selects de cadastro e filtros no frontend
2025-12-16 17:40:11 -03:00
Artur Oliveira 6d5a64be89 feat(types): tornar tipos configuráveis
- converte entidades de servidores para armazenar type/application/db como texto
- adiciona modelo e API para registrar/listar TypeOptions com normalização
- centraliza schema/data scripts para criar schema e seedar tipos e usuário padrão
2025-12-16 17:39:56 -03:00
Artur Oliveira ed247c423e chore(devops): adicionar suporte a docker
- adiciona dockerfiles e docker-compose para backend, frontend e postgres
- atualiza README com instruções e libera CORS para porta 4173
2025-12-16 17:37:41 -03:00
Artur Oliveira f9b62dcc4e feat(core): padronizar modais e publicar swagger
- extrai componente Modal e atualiza formulários
- adiciona config OpenAPI e libera Swagger publicamente
- aplica helpers de validação e Spotless no backend
2025-12-16 16:19:35 -03:00
Artur Oliveira d08e42732f feat(auth): validar sessão e logout
- Adiciona endpoint de logout no backend e libera na configuração de segurança
- Implementa validação e renovação automática dos tokens no cliente
- Integra botão de sair ao fluxo de logout e redireciona para login
2025-12-16 15:36:02 -03:00
Artur Oliveira 4efdfc9970 feat(servers): habilitar filtros com busca
- Expor GET /api/servers com parametros query, type, application e dbType
- Implementar metodo search com consulta nativa e normalizacao de filtros
- Criar ServersFilterBar e integrar filtros ao Dashboard
- Ajustar entidade Servers e configs JPA para compatibilidade
2025-12-16 15:10:31 -03:00
Artur Oliveira a69aca5dc8 feat(auth): proteger dashboard e melhorar UX
- Remove HTTP Basic e trata 401 redirecionando para /login
- Adiciona ProtectedRoute garantindo acesso ao dashboard apenas autenticado
- Refina modais e menu com bulk upload e tipagens exportadas
2025-12-16 14:26:18 -03:00
Artur Oliveira b6ba3b8593 feat(servers): adicionar importação em massa via CSV
- Expõe endpoint bulk que lê arquivos ;, cria servidores e retorna falhas
- Cria DTOs e logs de validação para informar erros por linha
- Implementa modal no header com upload CSV e download de template
2025-12-16 14:10:03 -03:00
Artur Oliveira 61b3af4c53 refactor(frontend): componentizar header e modais
- Extrai brand, ações e modais para componentes dedicados
- Mantém Header como orquestrador de estado e integra novos tipos
- Atualiza AGENTS.md exigindo componentização de interfaces complexas
2025-12-16 13:54:33 -03:00
Artur Oliveira 2805440f9f feat(frontend): adicionar fluxos de criação e perfil
- Exporta utilitários de token no cliente para buscar usuário atual
- Implementa formulários modais para novo servidor e edição de perfil
- Integra dashboard com usuário logado e atualiza lista após criação
2025-12-16 13:48:47 -03:00
Artur Oliveira 9f94cb08e8 feat(frontend): adicionar header com menu
- Cria componente Header com logo e ações básicas
- Ajusta Dashboard para renderizar o header no topo
2025-12-16 13:34:06 -03:00
Artur Oliveira f73a6accb9 feat(auth): revalidar token automaticamente
- Decodifica exp do JWT a partir do cookie access_token
- Aciona refresh antes das requisições quando expiração estiver próxima
- Mantém header Authorization atualizado após renovar o token
2025-12-16 13:25:56 -03:00
Artur Oliveira 7b8112d73c style(frontend): aprimora cards de métricas
- Ajusta cor padrão de bg-card no tailwind para maior contraste
- Adiciona ícones e gradiente aos cards de contagem
- Formata totais e hierarquia visual dos textos
2025-12-16 13:17:23 -03:00
Artur Oliveira 75add469f7 feat(servers): expor contagem por tipo
- adiciona endpoint GET /api/servers/type na controller
- implementa serviço para agregar totais por ServersType
- inclui método countAllByType no repositório
2025-12-16 12:53:56 -03:00
Artur Oliveira d48a2633d0 feat(frontend): modulariza dashboard
- Extrai cards de métricas de tipo em componente dedicado
- Isola tabela de servidores reaproveitando estados
- Expõe labels traduzidos de ServersType para consumo no UI
2025-12-16 12:52:32 -03:00
Artur Oliveira af7511195d refactor(frontend): ajusta layout e imports
- Remove Navigate não usado e marca enums apenas como tipo
- Evita classe 'undefined' no Layout ao compor className opcional
- Simplifica estilos do Login para rótulos, logo e wrapper de senha
2025-12-16 11:51:27 -03:00
Artur Oliveira 229bc1fdca feat(types): adicionar enums do backend no frontend
- Cria `types/enums.ts` com `DatabaseType`, `Applications` e `ServersType`
- Atualiza `types/Server.ts` para usar os novos tipos, substituindo `string` por tipos enumerados
2025-12-16 11:48:32 -03:00
Artur Oliveira 3cb651518c style(dashboard): melhorar estilização da tabela
- Adiciona borda e sombra ao container da tabela
- Torna cabeçalho sticky para melhor leitura em rolagem
- Adiciona zebra striping nas linhas com `even:` e hover suave
- Mantém `Styles` existente para células e cabeçalho
2025-12-16 11:46:28 -03:00
Artur Oliveira 529918c37b refactor(dashboard): extrair classes repetidas para Styles
- Adiciona `Styles.rowCell` com classes comuns de células da tabela
- Atualiza `Dashboard.tsx` para usar `Styles.rowCell` nas colunas, reduzindo duplicação
2025-12-16 11:43:31 -03:00
Artur Oliveira c34b4bc261 docs(agents): adicionar regra sobre classnames repetidos
- Quando classnames se repetem muito, movê-los para a constante Styles
- Mesmo que o grupo possua menos de 5 classes, evita duplicação e facilita manutenção
2025-12-16 11:41:42 -03:00
Artur Oliveira 085e2f2cee docs(agents): adicionar guia para agentes
- Adiciona AGENTS.md com orientações para agentes e automações
- Inclui padrão de mensagens de commit e instruções de operação
- Documenta contexto do projeto e fluxo de desenvolvimento
2025-12-16 11:10:12 -03:00
Artur Oliveira ba3d386575 chore: merge module gitignores 2025-12-16 11:02:37 -03:00
Artur Oliveira f6db7ada63 feat: corrige nome da pasta do frontend 2025-12-16 10:54:00 -03:00
Artur Oliveira 53f64dd15f chore(docs): alinhar integração front/backend e CORS 2025-12-16 10:50:14 -03:00
Artur Oliveira 116261e7ff feat(auth): implementar funcionalidade de login de usuário
- Configura base URL da API através de variável de ambiente (.env.example).
- Cria instância do Axios para comunicação com a API e gerenciamento de token de autenticação.
- Adiciona lógica de submissão do formulário de login, incluindo chamadas à API.
- Gerencia estados de carregamento e exibe mensagens de erro/sucesso.
- Integra react-hot-toast para notificações de sistema.
- Redireciona a rota raiz (/) para a página de login.
2025-12-16 10:41:26 -03:00
Artur Oliveira 41059bdfc3 feat(auth): implementar autenticação e autorização JWT
- Adiciona dependências do Spring Security e JWT (API, Impl, Jackson).
- Configura o pipeline de segurança com autenticação stateless e filtros JWT.
- Implementa serviços para geração e validação de tokens de acesso e refresh.
- Cria endpoints para login (/api/auth/login) e refresh de token (/api/auth/refresh).
- Move o endpoint de criação de usuário para /api/auth/signup e o protege.
- Criptografa senhas dos usuários utilizando BCrypt antes de salvar.
- Atualiza Postman Collection com requisições de autenticação e variáveis de ambiente.
- Estende a interface UserDetails para o modelo Users.
- Ajusta tamanho da coluna 'password' na tabela de usuários para hashes.
- Adiciona um usuário padrão inicial com senha hash.
2025-12-16 10:23:28 -03:00
Artur Oliveira 81499374b6 feat(login): implementar alternância de visibilidade de senha
- Implementa funcionalidade de mostrar/esconder senha na página de login
- Integra ícones Eye e EyeOff para o controle de visibilidade
- Adiciona animação 'fade-up' à página de login
- Define novas classes de estilo para o campo de senha e botão de toggle
- Configura a regra '@typescript-eslint/semi' no ESLint
- Adiciona keyframes e animação 'fade-up' ao Tailwind CSS
2025-12-16 09:30:35 -03:00
Artur Oliveira 91ec90f810 feat(ui-setup): implementar estrutura inicial da UI e página de login
- Configura roteamento básico com react-router-dom e rota para /login
- Adiciona página de login com formulário, gerenciamento de estado e estilos
- Cria componente Layout para padronização da interface do usuário
- Define interface LoginProps para tipagem dos dados de autenticação
- Integra imagem logo.webp como ativo da aplicação
- Estende configuração do Tailwind CSS com uma paleta de cores personalizada
- Configura ESLint com plugin para React e regras de estilo (indentação, ponto e vírgula)
2025-12-16 09:22:13 -03:00
Artur Oliveira 700c98e1d2 feat(frontend): configurar ambiente com Tailwind CSS
- Instala dependências tailwindcss, postcss e autoprefixer
- Adiciona arquivos de configuração postcss.config.js e tailwind.config.js
- Integra diretivas do Tailwind CSS no App.css
- Remove estilos CSS padrão do boilerplate (App.css e index.css)
- Limpa e simplifica o componente principal App.tsx
- Instala bibliotecas de utilidade: axios, lucide-icons-react, react-hot-toast e react-router-dom
2025-12-16 08:09:17 -03:00
Artur Oliveira e5486c0cb2 feat: create frontned base with vite 2025-12-15 22:04:55 -03:00
Artur Oliveira 2980248669 feat: changes from h2 to postgres 2025-12-15 22:00:00 -03:00
Artur Oliveira d06c103a66 chore: ignore env files 2025-12-15 21:59:34 -03:00
Artur Oliveira 6145597d8c doc: implement README 2025-12-15 20:17:59 -03:00
Artur Oliveira 9e44e365ab feat: implement CRUD for Servers 2025-12-15 18:02:52 -03:00
Artur Oliveira 354f8d1d42 fix: migrate from deprecated @GenericGenerator to @IdGeneratorType
- Update ServerIdGenerator to use @IdGeneratorType annotation (Hibernate 6.5+)
- Convert ServerIdGenerator to annotation-based custom generator
- Update Servers entity to use @ServerIdGenerator annotation
- Fix SQL reserved keyword issue: rename 'user' column to 'username'
This resolves deprecation warnings and SQL syntax errors with H2 database.
2025-12-15 17:52:45 -03:00
Artur Oliveira 348f9faa7d feat: implement complete CRUD for Users API
- Add UsersService with create, read (getById, getByUsername, getByEmail, getAll), update (using mapper.partialUpdate), and delete methods
- Add UsersController with endpoints for all CRUD operations
- Add UsersRepository with custom queries for username and email
- Add UserDTO and NewUserDTO data transfer objects
- Add UsersMapper for entity-DTO conversions
- Add email domain validation (hittelco.com, accesscommunications.com)
- Add email uniqueness validation
- Create Postman collection for API testing with sample data
- Update Users model with timestamps and builder pattern
2025-12-15 17:27:59 -03:00
Artur Oliveira 06ba25eabd Atualiza configuração e modelo de usuários
- Substitui application.properties por application.yaml (configuração Spring Boot em YAML)
- Adiciona entidade/modelo Users com builder
- Ajusta BackendApplication.java para refletir novas configurações/uso do modelo
- Atualiza .gitignore para ignorar diretórios e artefatos de build e dados locais
Ref.: padronização de config, preparação para persistência e melhorias de estrutura.
2025-12-15 16:13:39 -03:00
Artur Oliveira 728d753c72 feat: initial commit 2025-12-15 15:43:11 -03:00