Skip to content

Conversation

@alexwizp
Copy link
Contributor

@alexwizp alexwizp commented Oct 14, 2025

Summary

Corrected role attributes on EuiIcon and EuiBetaBadge to enhance accessibility and ensure proper screen reader behavior.

Changes

  • EuiIcon: Updated role handling to prevent screen readers from announcing decorative icons as interactive elements.
  • EuiBetaBadge: Added role="button" on the <span> used as the tooltip anchor, ensuring accurate semantics and improved accessibility.

This change is related to the following AXE core report issues

image

Why are we making this change?

:accessibility: Accessibility improvement: Prevents incorrect announcements by assistive technologies and aligns components with ARIA best practices.

QA

Remove or strikethrough items that do not apply to your PR.

General checklist

  • Browser QA
    • Checked in both light and dark modes
    • Checked in both MacOS and Windows high contrast modes
    • Checked in mobile
    • Checked in Chrome, Safari, Edge, and Firefox
    • Checked for accessibility including keyboard-only and screenreader modes
  • Docs site QA
  • Code quality checklist
  • Release checklist
    • [ ]~ A changelog entry exists and is marked appropriately.~
    • If applicable, added the breaking change issue label (and filled out the breaking change checklist)
  • Designer checklist
    • If applicable, file an issue to update EUI's Figma library with any corresponding UI changes. (This is an internal repo, if you are external to Elastic, ask a maintainer to submit this request)

@alexwizp alexwizp marked this pull request as ready for review October 14, 2025 14:37
@mgadewoll mgadewoll self-requested a review October 20, 2025 06:58
@elasticmachine
Copy link
Collaborator

💚 Build Succeeded

History

@elasticmachine
Copy link
Collaborator

💚 Build Succeeded

History

Copy link
Contributor

@mgadewoll mgadewoll left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Thanks for the updates, the changes LGTM. Thanks for contributing! 🎉

@mgadewoll mgadewoll merged commit dea6adc into elastic:main Oct 20, 2025
5 checks passed
acstll added a commit to elastic/kibana that referenced this pull request Oct 23, 2025
- `@elastic/eui`: `v107.0.0` ⏩ `v107.0.1`
- `@elastic/eslint-plugin-eui`: `v2.4.0` ⏩ `v2.5.0`

[Questions? Please see our Kibana upgrade
FAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)

---

## Changes

Related to elastic/eui#9100

- Updated snapshot f90ae29
- Added missing `aria-label` for `EuiBetaBadge`
  - [Reporting] 6d10edd
  - [ML] ce58009
- Added new translation key, ran `node scripts/i18n_check` — is there
anything else that should be done in this regard?

## Package updates

### `@elastic/eui`
[`v107.0.1`](https://github.com/elastic/eui/releases/v107.0.1)

**Bug fixes**

- Fixed `prismjs` theme in `EuiCodeBlock` to improve highlighting for
the `yaml` language ([#9089](elastic/eui#9089))
- Fixed a visual bug on `EuiTable` where the border for rows in dark
mode wasn't applied correctly
([#9115](elastic/eui#9115))

**Dependency updates**

- Updated `@elastic/prismjs-esql` to v1.1.2
([#9102](elastic/eui#9102))

**Accessibility**

- Fixed incorrect role attribute on `EuiIcon` and `EuiBetaBadge`
([#9100](elastic/eui#9100))
- Make `EuiBasicTable` respect user's reduced motion setting by not
animating when in loading state.
([#9095](elastic/eui#9095))

### `@elastic/eslint-plugin-eui`
[`v2.5.0`](https://github.com/elastic/eui/blob/main/packages/eslint-plugin/changelogs/CHANGELOG_2025.md#v250)

- Added new `accessible-interactive-element` rule.
([#9093](elastic/eui#9093))
- Added new `tooltip-focusable-anchor` rule.
([#9051](elastic/eui#9051))
- Excluded `EuiButtonEmpty` from the `no-unnamed-interactive-element`
rule. ([#9046](elastic/eui#9046))

**Bug fixes**

- Fixed `no-css-color` rule to allow CSS keywords like `currentcolor`,
`transparent`, and `inherit`
([#9092](elastic/eui#9092))

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
alexwizp added a commit to elastic/kibana that referenced this pull request Oct 27, 2025
…strict accessibility validation (#237627)

## Summary

- Remove use of `checkA11y({ skipFailures: true })` across `Cypress`
tests and enforce strict accessibility validation so that accessibility
violations cause test failures.
- This change ensures accessibility regressions are caught by CI rather
than silently skipped.

## Why
- Using `skipFailures: true` masked accessibility problems and allowed
regressions to slip into main branch.
- Enforcing strict accessibility checks improves product quality and
aligns tests with accessibility-first goals.

## What was changed
- Replaced occurrences of `checkA11y({ skipFailures: true })` (and
equivalent patterns) so that accessibility checks run without the
`skipFailures` flag.
- Fixed or adjusted places where necessary to make test suites pass with
strict a11y checks (small target adjustments to code to fix violations)

## Depends on
- elastic/eui#9100
kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Oct 27, 2025
…strict accessibility validation (elastic#237627)

## Summary

- Remove use of `checkA11y({ skipFailures: true })` across `Cypress`
tests and enforce strict accessibility validation so that accessibility
violations cause test failures.
- This change ensures accessibility regressions are caught by CI rather
than silently skipped.

## Why
- Using `skipFailures: true` masked accessibility problems and allowed
regressions to slip into main branch.
- Enforcing strict accessibility checks improves product quality and
aligns tests with accessibility-first goals.

## What was changed
- Replaced occurrences of `checkA11y({ skipFailures: true })` (and
equivalent patterns) so that accessibility checks run without the
`skipFailures` flag.
- Fixed or adjusted places where necessary to make test suites pass with
strict a11y checks (small target adjustments to code to fix violations)

## Depends on
- elastic/eui#9100

(cherry picked from commit 00b3e4a)
alexwizp added a commit to elastic/kibana that referenced this pull request Oct 30, 2025
…ccessibility/apps/group1/home·ts - X-Pack Accessibility Tests - Group 1 Kibana Home Accessibility Observability overview page meets a11y requirements (#241143)

Closes:  #216219

## Summary

The root cause of that issue was fixed on EUI side
elastic/eui#9100

Now we can turn-on that tests
sbelastic pushed a commit to sbelastic/kibana that referenced this pull request Oct 30, 2025
…ccessibility/apps/group1/home·ts - X-Pack Accessibility Tests - Group 1 Kibana Home Accessibility Observability overview page meets a11y requirements (elastic#241143)

Closes:  elastic#216219

## Summary

The root cause of that issue was fixed on EUI side
elastic/eui#9100

Now we can turn-on that tests
ana-davydova pushed a commit to ana-davydova/kibana that referenced this pull request Nov 3, 2025
…ccessibility/apps/group1/home·ts - X-Pack Accessibility Tests - Group 1 Kibana Home Accessibility Observability overview page meets a11y requirements (elastic#241143)

Closes:  elastic#216219

## Summary

The root cause of that issue was fixed on EUI side
elastic/eui#9100

Now we can turn-on that tests
albertoblaz pushed a commit to albertoblaz/kibana that referenced this pull request Nov 4, 2025
…ccessibility/apps/group1/home·ts - X-Pack Accessibility Tests - Group 1 Kibana Home Accessibility Observability overview page meets a11y requirements (elastic#241143)

Closes:  elastic#216219

## Summary

The root cause of that issue was fixed on EUI side
elastic/eui#9100

Now we can turn-on that tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants