-
Notifications
You must be signed in to change notification settings - Fork 0
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
feat(Slider): add new slider component #893
Conversation
Storybook for this build: https://ds.equisoft.io/pr-893/ |
Webapp for this build: https://ds.equisoft.io/pr-893/webapp/ |
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.
-
Il manquerait le tooltip lorsque l'utilisateur interagit avec le composant en utilisant les touches (flèches) du clavier. Présentement le tooltip est seulement affiché lorsqu'un user utilise la souris. MUI semble avoir la feature.
-
Présentement, il n'y a pas de label associé à l'input et ça vient créer une failure au niveau de l'a11y. La valeur de l'attribut
for
dulabel
pointe vers l'id
du<span>
qui englobe le slider au complet. Je ne sais pas à qu'elle point nous avons le contrôle là dessus, mais il faudrait qu'il soit associé à l'id
de l'input type="range"
. Sinon, en regardant ce que MUI ont, ils semblent avoir unaria-label
sur les thumbs. Ça pourrait également venir fixer le problème.
Sinon un petit commentaire en lien avec une couleur.
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.
Cool POC avec mui. LGTM pour le code. Je laisse Larry et Marc regarder le reste.
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.
Quelques petits commentaires:
- Le font-size et le line-height du label et des numéros sont trop grands
- La couleur des numéros n'est pas la bonne. Le token devrait référer sur le alias token "color-content-subtle"
- La couleur de border du Slider-thumb n'est pas la même que sur les maquettes Figma
Done
Done, le input a maintenant le meme id que le |
Fixed
Done, j'ai ajoute un nouveau component token pour ca
Done |
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.
LGTM!
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.
Ah bien vu. Mais ca serait quoi la resolution pour l'accessibilite dans ce cas? Je pourrais pt utiliser |
Tu pourrais p-e avoir un
C'est ce que semble faire MUI Si nous voulons y aller avec un truc similaire à ce que tu as partagé. Nous pourrions ajouter un min et max au aria-label et ensuite ajouter le label.
Mais je crois que c'est p-e trop spécifique et p-e que dans certain cas, ça ne fonctionnerait p-e pas aussi bien tout dépendant du label associé. |
| 'color-background-indicator-selected' | ||
| 'color-background-indicator-active' | ||
| 'color-border-brand' | ||
| 'color-border-brand-bold' |
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.
J'ai l'impression que ça va être à ajuster dans dans theme-directory? @hebernardEquisoft @pylafleur
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.
Mmhhhm tant que c'est pas un renaming de tokens, tout devrait être beau!
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.
Faudra pas l'ajouter aux themes pour pas que ce soit weird? Quoiqu'en même temps, elle sert juste pour le slider en ce moment.
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.
Je pense c'est un renaming pour vous. J'explique ce qui se passe ici.
Le global-header
utilisait avant 'color-border-brand', en regardant ca avec MA pourquoi le slider n'avait pas la bonne couleur malgre le bon token Figma, on s'est rendu compte que ce token n'avait pas bonne couleur.
On a renomme 'color-border-brand' a 'color-border-brand-bold' (utilise par global-header seulement)
On a ajoute le nouveau 'color-border-brand' avec la bonne couleur (utilise par Slider seulement)
background-color: ${({ theme }) => theme.component['tooltip-popper-container-default-background-color']}; | ||
border: 1px solid ${({ theme }) => theme.component['tooltip-popper-container-border-color']}; |
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.
Ça existe pas, mais je pense que c'est un exemple d'endroits où on devrait utiliser des alias tokens plutôt. On devrait jamais référencer des component tokens en dehors du component qui les "déclare" je crois.
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.
Je comprend le point mais c'est plutot une replique du component Tooltip. Idealement on utiliserait directement le component Tooltip ici si on n'avait pas de probleme visuel durant le dragging.
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.
Hmm, je comprends pourquoi tu l'as fait. Mais j'ai peur que ça ouvre la porte à des mauvaises pratiques. On pourra en rediscuter, il y a une réflexion à avoir aussi sur ce qu'on expose par rapport aux component tokens.
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.
On pourrait pt creer une version CSS du Tooltip dans le folder Tooltip a place, comme ca on pourrait le reutiliser ailleur si on rencontre le meme besoin. Le truc qui me gosse avec ca c'est que le component Tooltip ne s'en sert pas.
padding: 0 12px; | ||
`; | ||
|
||
const StyledSlider = styled(BaseSlider)` |
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.
Est-ce que certaines des dimensions devraient être exprimées en rem
ou en variable css plutôt?
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.
Ca sera fixe dans un autre billet.
91414c0
Ready for review |
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.
Dernier petit détail, sinon LGTM.
background-color: ${({ theme }) => theme.component['tooltip-popper-container-default-background-color']}; | ||
border: 1px solid ${({ theme }) => theme.component['tooltip-popper-container-border-color']}; |
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.
Hmm, je comprends pourquoi tu l'as fait. Mais j'ai peur que ça ouvre la porte à des mauvaises pratiques. On pourra en rediscuter, il y a une réflexion à avoir aussi sur ce qu'on expose par rapport aux component tokens.
* feat(slider): add new slider component * fix: undo changing alias-tokens * fix: update tokens * fix: comments * fix: comments * fix: extract code * fix: aria-label * fix: lock and snapshot
DS-281
Description