Description
components/transactions/sort.tsx toggles the active sort column and direction visually (via an icon) but never sets aria-sort on the associated column header, so screen reader users have no way to determine which column is currently driving the order.
Requirements and context
- Set aria-sort="ascending"/"descending"/"none" on the relevant based on the active sort state
- Announce the new sort order via an aria-live region when the user changes it
- Confirm the sort control is operable with Enter and Space
- Must be accessible (WCAG 2.1 AA), responsive, and consistent with existing design tokens
- Should be tested and easy to review
Suggested execution
Fork the repo and create a branch
git checkout -b a11y/transactions-sort-aria
Implement changes
- Update/Write component(s):
components/transactions/sort.tsx
- Add/Update tests:
components/transactions/sort.test.tsx
- Add documentation:
design/a11y-checklist.md
- Annotate accessibility (contrast, keyboard nav, ARIA)
- Validate responsive behavior across breakpoints (sm 640, md 768, lg 1024, xl 1280)
Test and commit
- Run tests:
pnpm test (or the repo's test command)
- Cover edge cases (empty/error/loading states, long text, RTL, dark mode)
- Include before/after screenshots and accessibility notes
Example commit message
fix: add aria-sort semantics and live announcements to transactions sort
Guidelines
- WCAG 2.1 AA compliance
- Clear documentation and spec hand-off
- Timeframe: 96 hours
Description
components/transactions/sort.tsx toggles the active sort column and direction visually (via an icon) but never sets aria-sort on the associated column header, so screen reader users have no way to determine which column is currently driving the order.
Requirements and context
Suggested execution
Fork the repo and create a branch
Implement changes
components/transactions/sort.tsxcomponents/transactions/sort.test.tsxdesign/a11y-checklist.mdTest and commit
pnpm test(or the repo's test command)Example commit message
Guidelines