-
Notifications
You must be signed in to change notification settings - Fork 399
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cria página para listar usuários #1778
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
31cb2cd
to
96f8722
Compare
This comment was marked as outdated.
This comment was marked as outdated.
Subi algumas correções. Ainda falta usar o Senti falta de um feedback de carregamento na UI. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Senti falta de um feedback de carregamento na UI.
Mesmo sendo algo exclusivo da moderação, seria interessante adicionar um feedback sim. Acho que o acionamento pode usar o isLoading
do swr
em conjunto com o isLoading
do useUser
.
Caso pense em algo simples como um spinner, deve dar para criar algo baseado no SpinnerWrapper
do ButtonWithLoader
para manter a consistência do design. Mas ficaria mais interessante algo com react-content-loader.
Não é algo impeditivo para a mesclagem do PR, então também dá para deixar isso como good first issue se não achar que a criação da issue vai dar o mesmo trabalho de já implementar.
e61124c
to
b28d46a
Compare
CarregamentoO código está cheio de "números mágicos" porque foram os que percebi que se encaixavam melhor com a UI para quase não mudar as posições após o carregamento. Talvez tenha uma forma mais simples. Se um usuário ter descrição, já irá mudar, por exemplo, mas isso não me parece um problema, e sim algo natural. O Achei que o resultado ficou bom. Precisei ter alguns cuidados extras com os números de páginas mais altos e com diferenças na quantidade de dígitos da lista (por exemplo, quando muda do usuário 99 para o 100 na mesma página). Ao invés de tratar as cores como tratei em Existe um pequeno problema que é a renderização inicial a partir do item Carregamento com diferença de dígitos (999 para 1000): Lista.com.diferenca.de.digitos.mp4Carregamento de lista com usuários com descrição e Lista.com.descricao.e.nuked.mp4Carregamento da última página: Ultima.pagina.mp4Carregamento mostrando o final da página: Fim.da.pagina.mp4 |
Um teste falhou no CI uma vez: https://github.com/filipedeschamps/tabnews.com.br/actions/runs/10433251510/job/28894790369?pr=1778 ⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯
FAIL tests/integration/models/event.test.js > models/event > Default user > Create "reward:user:tabcoins" event
AssertionError: expected 1723907716000 to be greater than 1723907716000
❯ tests/integration/models/event.test.js:324:48
322| expect(uuidVersion(lastEvent.id)).toBe(4);
323| expect(Date.parse(lastEvent.created_at)).not.toBeNaN();
324| expect(Date.parse(lastEvent.created_at)).toBeGreaterThan(Date.no…
| ^
325| });
326| });
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯
Error: AssertionError: expected 1723907716000 to be greater than 1723907716000
❯ tests/integration/models/event.test.js:324:48 Imagino que podemos fazer outro PR como o #1720, verificando outros testes que esse problema de comparação de datas possa ocorrer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
O código está cheio de "números mágicos" porque foram os que percebi que se encaixavam melhor com a UI para quase não mudar as posições após o carregamento. Talvez tenha uma forma mais simples. Se um usuário ter descrição, já irá mudar, por exemplo, mas isso não me parece um problema, e sim algo natural.
Nos meus testes em homologação, tem hora que tem deslocamento (horizontal e vertical mesmo sem nenhum usuário com descrição preenchida) e tem hora que não tem. Não parece valer a pena tentar fazer o Skeleton
com os mesmos espaçamentos, mas apenas indicar que a lista está sendo carregada.
Achei que o resultado ficou bom. Precisei ter alguns cuidados extras com os números de páginas mais altos e com diferenças na quantidade de dígitos da lista (por exemplo, quando muda do usuário 99 para o 100 na mesma página).
Se não for mostrar a numeração enquanto a lista está sendo buscada, dá para evitar muita complexidade.
Existe um pequeno problema que é a renderização inicial a partir do item
1
, porquepage
estáundefined
.
Só deveria mostrar a numeração após router estar definido, mas, de novo, se não mostrar a numeração enquanto não obteve a lista, já elimina essa complexidade.
Um teste falhou no CI uma vez:
Não é por esse que falhou, mas apontei um problema na alteração dos testes users/get
que é a única coisa que realmente impede a aprovação do PR.
Co-authored-by: Rafael Tavares <26308880+Rafatcb@users.noreply.github.com>
b28d46a
to
f08f5a1
Compare
Co-authored-by: Felipe Barso <77860630+aprendendofelipe@users.noreply.github.com>
f08f5a1
to
5228133
Compare
Simplifiquei o carregamento e corrigi a parte dos testes. Se alguém ter mais alguma simplificação em mente, pode falar. |
Em produção! 🚀 |
Mudanças realizadas
Essa é uma implementação parcial do frontend do issue #1675.
Usuários
fica ao lado deRecentes
. Em telas menores, fica no menu hambúrguer./moderacao/usuarios/1
.Label
para usuáriosnuked
.Fica faltando a contagem de publicações e comentários, visualização de
id
efeatures
do usuário, e também a possibilidade de ver a data de criação e descrição completa de um usuárionuked
(para um usuário não-nuked
, basta visitar o perfil).Tipo de mudança
Checklist: