Skip to content

feat(checkgroup): trata a pre-selecao dos checkbox

Matheus Monteiro requested to merge feat/checkgroup into feat/select-component

Descrição

O comportamento checkgroup não tratava a pré-seleção dos checkbox, ou seja, o checkgroup não sincronizava seu estado com valores pré-selecionados no momento da renderização.

Foi solicitado que esse comportamento estivesse presente no checkgroup. Dessa forma foram feitas as seguintes mudanças:

  • implementação de uma lógica pra tratamento da pré-seleção
  • implementação de um utilitário para converter valores para o tipo boolean
  • implementação da reatividade da marcação checked sem a ação do usuário

Observação

Para tratar a pré-seleção, foi necessário definir um política de prioridade. A política definida foi a seguinte:

  • se o checkbox pai for true, então todos os checkboxes filhos relacionadas a ele também serão true, independente da sua pré-seleção
  • se o checkbox pai for false ou indeterminate, então os checkboxes filhos relacionados a ele determinam o seu valor.

Como a renderização dos checkbox no checkgroup ocorre um a um, a sincronização ocorre na medida em que cada checkbox é renderizado.

Issues relacionadas

Fixes #413 (closed)

Como foi testado?

  • Foi testado manualmente

Screenshots (opcional)

Edited by Paula Coelho

Merge request reports