Closed elycheea closed 8 months ago
@Ashley-Bock to help with this review 🙌
@kristastarr Feel free to remove any checks that don’t apply.
N/A
[x] All pattern updates/changes/iterations have been discussed with the component developer No changes
[x] Patterns have been approved by either DSAG or another approving entity
[x] The component behaves according to the guidelines set by the pattern maintainer
[x] The component’s UI matches the pattern specifications set by the pattern maintainer
[x] The component’s motion matches the specifications set by the pattern maintainer(s)
[x] The UI produced is responsive, cross-browser, and responds to the currently set Carbon theme.
[x] Colors, themes, sizes and additional props are true and correct, aligning with Carbon set tokens (unless otherwise specified by the pattern)
[x] Paddings/margins/spacings are true and correct, in both desktop and mobile views
[x] A functioning component renders in Storybook
[x] Changing props in the Storybook updates the component No probs to configure
No issues between guidance and storybook. Only thing to consider, do designers have to always signify which column the table is sorted by default? In storybook, it doesn't appear that it shows which column has the default sorting and the guidance doesn't mention it either.
@Ashley-Bock I believe the default sort is actually unsorted. It might be the same as the “row index” in Storybook. @matthewgallo Don’t see any mention in our docs if we support default sort? (Linked v1 since v2 docs are undergoing the Storybook upgrade.)
The keyboard interactions look good, with the exception of column resizing - see #4. There are a few screenreader issues when testing with voiceover setting on Mac.
Table description
aria-label
, aria-describedby
or caption
to provide accessible description of the table. Although this is something that the developer implementing this component will need to supply, so probably something we should mention in guidelines or possible add a prop for?
See: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/table_roleAria sort
aria-sort
so that the screenreader announces to the user that the table is sortable Current:
Current:
Correct example from https://developer.mozilla.org/en-US/docs/Learn/HTML/Tables/Advanced:
Reading first row after clicking sort button
Row splitters:
Current:
Current:
Current:
Text in the gray box indicates what the screenreader is reading out. Lmk if you want to talk through any of these issues if they are not clear by the descriptions 😄
@kristastarr @matthewgallo The bit on row splitters — I think this is coming from the resizable columns feature. I think we should be able to re-add the resizing behavior so might be worth having you take a review at the behavior once we have that working again. Don’t think that one needs to be a part of the Sorting followup though.
Not sure if we have a good solution of the groups at the moment either ... I’m guessing it’s also part of a number of other extensions. Might need some ideas on how we approach this. How critical do you think this one is for our initial release? :thinking:
For the row splitters, yes I think it makes sense to fix it on the resizable columns feature since that impacts multiple other components.
For the groups - I don't think I delved into the code for this one, but can take a look - did you guys see what's causing them to be "grouped"?
Opened a new issue for investigating why cells are being interpreted as groups so we can close this one!
Design review
Standards
Pattern and behavior
Storybook
Edited to reflect @Ashley-Bock’s review!