Skip to content

Conversation

@alexwizp
Copy link
Contributor

@alexwizp alexwizp commented Sep 22, 2025

This rule was originally introduced in #8973.

However, EuiButtonEmpty already receives meaningful content as a child, which effectively serves the purpose of a role or aria-label. Therefore, explicitly requiring an additional accessibility attribute is unnecessary in this case.

Example of using EuiButtonEmpty

 <EuiButtonEmpty
    color="text"
    onClick={handleCancelOnClick}
    data-test-subj="protectionUpdatesCancelButton"
    disabled={isUpdating}
  >
    <FormattedMessage
      id="xpack.securitySolution.endpoint.protectionUpdates.cancel"
      defaultMessage="Cancel"
    />
  </EuiButtonEmpty>

Tests

image

@alexwizp alexwizp changed the title fix: exclude EuiButtonEmpty from the @elastic/eui/no-unnamed-interactive-element fix: exclude EuiButtonEmpty from the @elastic/eui/no-unnamed-interactive-element rule. Sep 22, 2025
@alexwizp alexwizp marked this pull request as ready for review September 22, 2025 13:46
@alexwizp alexwizp requested a review from a team as a code owner September 22, 2025 13:46
@elasticmachine
Copy link
Collaborator

💚 Build Succeeded

@elasticmachine
Copy link
Collaborator

💚 Build Succeeded

Copy link
Contributor

@weronikaolejniczak weronikaolejniczak left a comment

Choose a reason for hiding this comment

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

Hey @alexwizp all looks good! 🟢 I agree that this makes sense.

And in a case where the content is not enough, the consumer can always define aria-label (but it's not imposed).

Thanks for remembering about the tests! I hope that we can update our CI soon to include them 😄

@alexwizp alexwizp merged commit 16df7a4 into elastic:main Sep 22, 2025
6 checks passed
tsullivan pushed a commit that referenced this pull request Oct 15, 2025
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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants