You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit e70a8bd
Browse filesBrowse the repository at this point in the historyBrowse files
Enhances accessibility coverage from ~45% to ~70% with comprehensive screen reader support across core UI components.
**S1 - ARIA Labels for Icon Buttons**
- TabBar: Added `ariaLabel` prop to TabItem interface, localized via i18n
- HomePage: Added labels to chain-selector and copy-address buttons
- HistoryPage: Added labels to refresh and filter selects
- TokenItem: Added label for clickable token rows
**S2 - Live Regions for Form Validation**
- AddressInput: Added `aria-live="polite"` + `aria-invalid` for real-time error feedback
- PasswordInput: Added `aria-live="polite"` for strength indicator updates
- Both components use `aria-describedby` to link error messages
- Added semantic `role="alert"` for error text
**S3 - Focus Management in BottomSheet**
- Auto-focus first interactive element on open
- Focus trap with Tab/Shift+Tab handling
- Restore focus to trigger element on close
- Added `tabIndex={-1}` to dialog container for programmatic focus
**S4 - Skip Link Pattern**
- Added keyboard-only skip-to-main link in AppLayout
- Uses `.sr-only` + `focus:not-sr-only` pattern
- Main element marked with `id="main-content"` and `tabIndex={-1}`
**i18n Support**
- Added 22 a11y translation keys across 4 locales (en/zh-CN/zh-TW/ar)
- Updated test suites to use TestI18nProvider wrapper
**Impact**
15 files changed, +284/-64 lines. All 1145 tests passing.
Addresses WCAG 2.1 Level AA criteria for keyboard navigation and screen readers.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
0 commit comments