Este merge request adiciona o hook useTagViewer, que encapsula a lógica complexa previamente presente no componente TagViewer, tornando o código mais modular e legível. O useTagViewer é responsável por gerenciar a geração de PDFs a partir de um conjunto de etiquetas (tags) fornecidas, além de fornecer controle de navegação, manipulação de filas e tratamento de imagens para impressão.
Este hook foi documentado com comentários em formato JSDoc para facilitar o entendimento e manutenção, especialmente para desenvolvedores que possam lidar com essa funcionalidade no futuro.
Funcionalidade
Processamento de filas e cópias: Organiza as tags em uma fila para processamento, com suporte para etiquetas em diferentes orientações e tamanhos.
Geração de PDFs: Processa as imagens geradas e monta arquivos PDF, salvando-os com base no tipo e formato das etiquetas.
Manipulação de Konva: Gera imagens de etiquetas utilizando a biblioteca Konva, incluindo suporte a textos e imagens.
Navegação entre etiquetas: Proporciona navegação entre diferentes tags, permitindo que o usuário visualize cada etiqueta antes da impressão.
Validações: Gerencia e exibe mensagens de erro, garantindo que os dados necessários estejam presentes antes de iniciar a impressão.
Como testar e validar
Cenários de teste:
Geração de PDF: Com diferentes tags e orientações (retrato/paisagem), verifique se o PDF gerado possui o layout esperado e que a quantidade de etiquetas corresponde ao número de cópias especificado.
Navegação entre etiquetas: Navegue entre diferentes etiquetas para validar o comportamento de handleNext e handlePrevious.
Tratamento de erros: Tente imprimir etiquetas sem especificar a quantidade, verificando se a mensagem de erro apropriada é exibida.
Verificação de geração de imagens: Certifique-se de que as imagens geradas pelas etiquetas exibem corretamente os elementos definidos.
Alterações Principais
Criação do Hook useTagViewer:
Encapsula a lógica de manipulação de filas, processamento de PDF, e geração de imagens.
Exporta métodos essenciais para manipulação, como handlePrint, handleNext, handlePrevious, entre outros.
Refatoração do Componente TagViewer:
Simplificação do componente ao utilizar o hook useTagViewer para manipulação dos dados e controle das operações de impressão.
Notas adicionais
Documentação: O código foi amplamente documentado usando JSDoc para facilitar futuras manutenções e alterações.
Descrição
Este merge request adiciona o hook
useTagViewer
, que encapsula a lógica complexa previamente presente no componenteTagViewer
, tornando o código mais modular e legível. OuseTagViewer
é responsável por gerenciar a geração de PDFs a partir de um conjunto de etiquetas (tags) fornecidas, além de fornecer controle de navegação, manipulação de filas e tratamento de imagens para impressão.Este hook foi documentado com comentários em formato JSDoc para facilitar o entendimento e manutenção, especialmente para desenvolvedores que possam lidar com essa funcionalidade no futuro.
Funcionalidade
Como testar e validar
Cenários de teste:
handleNext
ehandlePrevious
.Alterações Principais
Criação do Hook
useTagViewer
:handlePrint
,handleNext
,handlePrevious
, entre outros.Refatoração do Componente
TagViewer
:useTagViewer
para manipulação dos dados e controle das operações de impressão.Notas adicionais