Skip to content

Fix @elastic/eui/require-aria-label-for-modals lint violations across @elastic/kibana-esql files#262742

Merged
alexwizp merged 6 commits intomainfrom
copilot/fix-eslint-violations-aria-label-modals
Apr 14, 2026
Merged

Fix @elastic/eui/require-aria-label-for-modals lint violations across @elastic/kibana-esql files#262742
alexwizp merged 6 commits intomainfrom
copilot/fix-eslint-violations-aria-label-modals

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 13, 2026

Closes: #262711

Adds missing aria-label or aria-labelledby props to 8 EuiPopover/EuiModal components to satisfy the @elastic/eui/require-aria-label-for-modals ESLint rule.

Changes

  • discard_starred_query_modal.tsxaria-labelledby on EuiModal linked to EuiModalHeaderTitle via useGeneratedHtmlId
  • errors_warnings_popover.tsxaria-label using existing i18n label from getConstsByType() ("Errors"/"Warnings")
  • keyboard_shortcuts.tsxaria-labelledby referencing the existing <h2 id={labelId}> popover title
  • help_popover.tsxaria-label using existing helpLabel i18n string
  • sources_dropdown.tsxaria-label with new i18n key
  • add_column_popover.tsxaria-label with new i18n key
  • as_popover/index.tsxaria-label with new i18n key
  • choose_column_popover.tsxaria-label with new i18n key

Preferred aria-labelledby referencing visible text where it already existed; used aria-label with i18n.translate() elsewhere. All new strings are localized.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • ci-stats.kibana.dev
    • Triggering command: /home/REDACTED/.nvm/versions/node/v22.22.0/bin/node /home/REDACTED/.nvm/versions/node/v22.22.0/bin/node scripts/yarn_install_scripts.js run ldd 0.8.2 (dns block)
    • Triggering command: /home/REDACTED/.nvm/versions/node/v22.22.0/bin/node /home/REDACTED/.nvm/versions/node/v22.22.0/bin/node scripts/kbn bootstrap (dns block)
    • Triggering command: /home/REDACTED/.nvm/versions/node/v22.22.0/bin/node node scripts/type_check --project src/platform/packages/private/kbn-esql-editor/tsconfig.json nibr�� ; s#^/home/REDACTED/.nvm/##; \#^[^v]# d; \#^versions$# d; tail git e get --local /home/REDACTED/.cos#\(.*\)\.\([^\.]\{1,\}\)$#\2-\1#; e t/we�� (dns block)
  • clients3.google.com
    • Triggering command: /home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon /home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon run :build-webpack /lib/ld-linux.so.2 b/li�� nc.so.1.0.7 (dns block)
  • detectportal.firefox.com
    • Triggering command: /home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon /home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon run :build-webpack /lib/ld-linux.so.2 b/li�� nc.so.1.0.7 (dns block)
  • google.com
    • Triggering command: /home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon /home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon run :build-webpack /lib/ld-linux.so.2 b/li�� nc.so.1.0.7 (dns block)
  • googlechromelabs.github.io
    • Triggering command: /home/REDACTED/.nvm/versions/node/v22.22.0/bin/node /home/REDACTED/.nvm/versions/node/v22.22.0/bin/node install.js it ldd b/li�� (dns block)
  • iojs.org
    • Triggering command: /usr/bin/curl curl -q --fail --compressed -L -s REDACTED -o - (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot AI and others added 2 commits April 13, 2026 11:29
…ents for accessibility

Closes #225507

Agent-Logs-Url: https://github.com/elastic/kibana/sessions/0c708412-8300-4299-8a66-2934198f077f

Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Address code review feedback to use aria-label directly instead of
aria-labelledby with a hidden span element.

Agent-Logs-Url: https://github.com/elastic/kibana/sessions/0c708412-8300-4299-8a66-2934198f077f

Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix eslint violations for aria-label in modal components Fix @elastic/eui/require-aria-label-for-modals lint violations across @elastic/kibana-esql files Apr 13, 2026
Copilot AI requested a review from alexwizp April 13, 2026 11:34
@alexwizp alexwizp marked this pull request as ready for review April 13, 2026 11:37
@alexwizp alexwizp requested a review from a team as a code owner April 13, 2026 11:37
@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@alexwizp alexwizp added backport:skip This PR does not require backporting backport:version Backport to applied version labels v9.4.0 v9.3.4 Project:Accessibility labels Apr 13, 2026
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/kibana-accessibility (Project:Accessibility)

@alexwizp alexwizp added the a11y:agent-pr PR has been created by the agent label Apr 13, 2026
@alexwizp alexwizp added the release_note:skip Skip the PR/issue when compiling release notes label Apr 13, 2026
@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@elastic elastic deleted a comment from elasticmachine Apr 13, 2026
@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@elasticmachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] FTR Configs #44 / dashboard app - group 4 dashboard time dashboard with stored time sets time on open
  • [job] [logs] Scout: [ security / entity_store ] plugin / local-stateful-classic - Entity Store Logs Extraction with pagination (max 5 docs per page) - Should extract properly extract host with pagination

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
esql 827.8KB 828.2KB +441.0B
lens 2.0MB 2.0MB +124.0B
streamsApp 2.0MB 2.0MB +124.0B
total +689.0B

cc @alexwizp @Copilot

@alexwizp
Copy link
Copy Markdown
Contributor

@elasticmachine run docs-build

@alexwizp alexwizp merged commit 447533e into main Apr 14, 2026
18 checks passed
@alexwizp alexwizp deleted the copilot/fix-eslint-violations-aria-label-modals branch April 14, 2026 10:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a11y:agent-pr PR has been created by the agent backport:skip This PR does not require backporting backport:version Backport to applied version labels 💝community Project:Accessibility release_note:skip Skip the PR/issue when compiling release notes v9.3.4 v9.4.0 v9.5.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[eslint-issue-reporter] Fix @elastic/eui/require-aria-label-for-modals lint violations across @elastic/kibana-esql files

5 participants