- Substitui carimbo sobreposto na última página por página dedicada de
autenticação no final do PDF com blocos de assinatura, código de
autenticação (SHA-256 truncado) e QR Code
- Remove exposição de CPF do PDF e da interface web
- Adiciona campo codigo_autenticacao em MateriaLegislativa e
DocumentoAcessorio com migration
- Adiciona views públicas de verificação (/materia/<pk>/verificar/ e
/materia/documentoacessorio/<pk>/verificar/) sem exigir login
- Cria template verificar_assinatura.html com status verde/vermelho
- Adiciona botão "Verificar Autenticidade" nos templates de detail
- Corrige lookup de cargo do assinante via Autor.operadores
- Corrige URL de download para OnlyOffice usando build_onlyoffice_url
- Melhora layout dos botões de ação na página de detail da matéria
- Adiciona dependência qrcode[pil]==7.4.2
- Implementa sistema de assinatura digital para matérias legislativas
- Suporte a certificados A1 (.pfx/.p12) com validação de senha
- Carimbo visual no PDF com nome, CPF, data e logo da câmara
- Modal de assinatura com interface amigável
- Campos no modelo: pdf_assinado, assinatura_info, assinado_em, assinado_por
- Migração 0088 para novos campos de assinatura
- Adiciona dependências: pyhanko, pyhanko-certvalidator, cryptography
UI/UX:
- Move subnav (tabs de navegação) para abaixo do menu principal
- Novo estilo minimalista para as tabs com indicador azul
- Scroll horizontal em dispositivos móveis
Impl Mixin para gerar relatórios de pesquisas
MultiFormatOutputMixin sobrescreve render_to_response e, com base no
parametro format=[xlsx, csv, json], gerar versão não paginada dos
resultados de FilterView. O mixin foi aplicado na pesquisa de matérias e
de normas e pode ser extendido para outras filterview's ou mesmo
listviews, internas ao Crud.
* Retorna último bump
* Atualiz de versões do front e impactos no código
Atualiza versões secundárias e de remendos x.Y.Z
Atualiza versões secundárias (minor version x.Y.z)
e de remendos (patch version x.y.Z)
em conjunto das libs de menor impacto no frontend.
Syncs webpack-bundle-tracker django-webpack-loader
A primeira delas é do frontend já a segunda é do backend.
Elas fazem a ponte entre o front e back. A primeira faz um catálogo
(webpack-stats-json) de todo material compilado para produção pelo webpack.
Em tempo de desenvolvimento, esses catálogo não possui referências para
arquivos, mas para urls do servidor de desenvolvimento do frontend.
Já a segunda, lê todo o material produzido pela primeira, disponibiliza
filters para acesso geral, modular ou diretamente a arquivos
específicos.
bump vs secundária do vue e vue-template-compiler
Já existe atualização de versão primária do VueJs mas atualizá-la algo
em ~3.0.0 exige revisão, refatoração e/ou reimplementação de código.
vue-template-compiler anda junto com vue e é usado para possui compilar
container pre-alimentado no backend como é o caso de:
https://github.com/interlegis/sapl/blob/3.1.x/sapl/templates/parlamentares/parlamentares_list.html
migra libs para devDependencies
bump version frontend
- Rm drf-yasg e add drj-spectacular
- corrige schema de listagem
- ajusta urls para /api/schema, /api/schema/swagger-ui, api/schema/redoc
- insere na paginação links diretos de next e previous com filtro