vtex / shoreline

VTEX Design System for back-office experiences. Currently available for internal usage at VTEX.
https://shoreline.vtex.com
24 stars 1 forks source link

Review collection header #1811

Open beatrizmilhomem opened 3 months ago

beatrizmilhomem commented 3 months ago

Summary

Revisar o header do Collection para que fique mais otimizado e comporte melhor os elementos que já existem e ações em massa.

Rationale

Durante as discussões do componente de Bulk Actions https://github.com/vtex/shoreline/issues/1766 entendemos que estávamos lidando com um problema maior: o header do Collection. Ficou difícil chegar a um acordo sobre a melhor solução para o Bulk Action porque nenhuma atendia as expectativas para uma usabilidade ótima. Olhando para as principais referências, como Gmail e GitHub, vemos que o header é otimizado, ocupa bem menos espaço e o bulk actions não cria uma área a mais ou causa layout shift.

Por isso, a ideia é revisar o header do Collection de forma que adeque os elementos já existentes e ações em massa.

malu-viana commented 3 months ago

Concordo! Percebo que seguimos um caminho diferente, de muitos benchmarks que vejo, no uso da FilterBar, que acaba ocupando muito espaço e necessita de uma linha da Collection só para ela. Também fico com a sensação que a SearchBar também poderia ser mais eficiente com o uso do espaço. Sei que ambos os componentes são de uso primário junto na Collection, mas no caso da SearchBar o usuário precisa de um clique para habilitar o modo de foco, e o mesmo poderia ser alcançado com uma forma mais compacta, como um Button. Já o caso dos filtros é mais complexo, de repente possamos nos balizar buscando resolver o cenário de Orders, que é o nosso mais extremo?

davicostalf commented 3 months ago

Outro ponto em relação ao header do collection: sorting. Atualmente ordenamos clicando no label das colunas, mas esse comportamento não é escalável para todos os casos. Quando uma coluna inclui mais de uma informação, não é possível ordenar por essas diferentes informações. O conceito de "label da coluna" também não existe quando a visualização não é por tabela. Talvez uma ação para trocar a ordenação no header do collection seja uma forma mais escalável de resolver essa necessidade.

image