Skip to content

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

Merged
alexwizp merged 6 commits intomainfrom
copilot/fix-aria-label-violations
Mar 31, 2026
Merged

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

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 26, 2026

Closes: #259747

Adds missing aria-label / aria-labelledby props to 8 EUI modal-type components (EuiFlyout, EuiModal, EuiPopover) across 6 files to satisfy the @elastic/eui/require-aria-label-for-modals ESLint rule.

Changes

  • connection_details_flyout_content.stories.tsxaria-label with i18n on 3 EuiFlyout instances
  • cloud_id_row/label.tsxaria-label with i18n on EuiPopover
  • deployment_details_cloudid_input.tsxaria-label with i18n on EuiPopover
  • deployment_details_modal.tsxaria-labelledby via useGeneratedHtmlId linking EuiModal to its EuiModalHeaderTitle
  • saved_objects_management/.../flyout.tsxaria-labelledby via htmlIdGenerator (class component) linking EuiFlyout to its <h2> heading
  • saved_objects_management/.../table.tsxaria-label with i18n on export EuiPopover

Where a visible heading exists, aria-labelledby is used (preferred). Where no heading is present, aria-label is used. All new strings use i18n.translate().

// aria-labelledby — preferred when a visible title exists
const modalTitleId = useGeneratedHtmlId();
<EuiModal aria-labelledby={modalTitleId}>
  <EuiModalHeaderTitle id={modalTitleId}>Connection details</EuiModalHeaderTitle>
</EuiModal>

// aria-label — when no visible title is available
<EuiPopover aria-label={i18n.translate('...', { defaultMessage: 'Export options' })}>

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 nibrowser-gtk/sys/lib/libjxl.so.0.8 (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/eslint src/platform/packages/shared/cloud/connection_details/connection_details_flyout_content.stories.tsx src/platform/packages/shared/cloud/connection_details/tabs/endpoints_tab/rows/cloud_id_row/label.tsx src/platform/packages/shared/cloud/deployment_details/deployment_details_cloudid_input.tsx src/platform/packages/shared/cloud/deployment_details/deployment_details_modal.tsx src/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/flyout.tsx src/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/table.tsx (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 :extract-version-dependencies :build-webpack 0.8.2 b/libWPEBackend-fdo-1.0.so.1 (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 :extract-version-dependencies :build-webpack 0.8.2 b/libWPEBackend-fdo-1.0.so.1 (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 :extract-version-dependencies :build-webpack 0.8.2 b/libWPEBackend-fdo-1.0.so.1 (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 p/bin/git 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:


⌨️ Start Copilot coding agent tasks without leaving your editor — available in VS Code, Visual Studio, JetBrains IDEs and Eclipse.

Copilot AI and others added 2 commits March 26, 2026 12:09
… @elastic/kibana-core files

Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Agent-Logs-Url: https://github.com/elastic/kibana/sessions/c4a04403-d055-4144-9e6d-8c9474eaa6df
Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Agent-Logs-Url: https://github.com/elastic/kibana/sessions/c4a04403-d055-4144-9e6d-8c9474eaa6df
Copilot AI changed the title [WIP] Fix @elastic/eui/require-aria-label-for-modals lint violations Fix @elastic/eui/require-aria-label-for-modals lint violations across @elastic/kibana-core files Mar 26, 2026
Copilot AI requested a review from alexwizp March 26, 2026 12:16
@alexwizp alexwizp marked this pull request as ready for review March 27, 2026 13:53
@alexwizp alexwizp requested a review from a team as a code owner March 27, 2026 13:53
@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@alexwizp alexwizp added Project:Accessibility release_note:skip Skip the PR/issue when compiling release notes backport:version Backport to applied version labels v9.4.0 v9.3.3 labels Mar 27, 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 Mar 27, 2026
@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@elasticmachine
Copy link
Copy Markdown
Contributor

💚 Build Succeeded

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
enterpriseSearch 953.5KB 953.6KB +138.0B
fleet 2.3MB 2.3MB +119.0B
indexManagement 798.5KB 798.6KB +138.0B
savedObjectsManagement 80.4KB 80.7KB +250.0B
searchGettingStarted 181.9KB 182.0KB +138.0B
searchHomepage 187.8KB 187.9KB +138.0B
workplaceAIApp 519.0KB 519.1KB +138.0B
total +1.0KB

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
cloudLinks 34.0KB 34.1KB +138.0B

History

cc @alexwizp @Copilot

@alexwizp
Copy link
Copy Markdown
Contributor

@elasticmachine run docs-build

@alexwizp alexwizp merged commit 27ab7c3 into main Mar 31, 2026
17 checks passed
@alexwizp alexwizp deleted the copilot/fix-aria-label-violations branch March 31, 2026 09:57
@kibanamachine
Copy link
Copy Markdown
Contributor

Starting backport for target branches: 9.3

https://github.com/elastic/kibana/actions/runs/23791529865

kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Mar 31, 2026
…ss `@elastic/kibana-core` files (elastic#259757)

Closes: elastic#259747

Adds missing `aria-label` / `aria-labelledby` props to 8 EUI modal-type
components (`EuiFlyout`, `EuiModal`, `EuiPopover`) across 6 files to
satisfy the `@elastic/eui/require-aria-label-for-modals` ESLint rule.

### Changes

- **`connection_details_flyout_content.stories.tsx`** — `aria-label`
with i18n on 3 `EuiFlyout` instances
- **`cloud_id_row/label.tsx`** — `aria-label` with i18n on `EuiPopover`
- **`deployment_details_cloudid_input.tsx`** — `aria-label` with i18n on
`EuiPopover`
- **`deployment_details_modal.tsx`** — `aria-labelledby` via
`useGeneratedHtmlId` linking `EuiModal` to its `EuiModalHeaderTitle`
- **`saved_objects_management/.../flyout.tsx`** — `aria-labelledby` via
`htmlIdGenerator` (class component) linking `EuiFlyout` to its `<h2>`
heading
- **`saved_objects_management/.../table.tsx`** — `aria-label` with i18n
on export `EuiPopover`

Where a visible heading exists, `aria-labelledby` is used (preferred).
Where no heading is present, `aria-label` is used. All new strings use
`i18n.translate()`.

```tsx
// aria-labelledby — preferred when a visible title exists
const modalTitleId = useGeneratedHtmlId();
<EuiModal aria-labelledby={modalTitleId}>
  <EuiModalHeaderTitle id={modalTitleId}>Connection details</EuiModalHeaderTitle>
</EuiModal>

// aria-label — when no visible title is available
<EuiPopover aria-label={i18n.translate('...', { defaultMessage: 'Export options' })}>
```

> [!WARNING]
>
> <details>
> <summary>Firewall rules blocked me from connecting to one or more
addresses (expand for details)</summary>
>
> #### 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
nibrowser-gtk/sys/lib/libjxl.so.0.8` (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/eslint
src/platform/packages/shared/cloud/connection_details/connection_details_flyout_content.stories.tsx
src/platform/packages/shared/cloud/connection_details/tabs/endpoints_tab/rows/cloud_id_row/label.tsx
src/platform/packages/shared/cloud/deployment_details/deployment_details_cloudid_input.tsx
src/platform/packages/shared/cloud/deployment_details/deployment_details_modal.tsx
src/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/flyout.tsx
src/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/table.tsx`
(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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 p/bin/git
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:
>
> - Configure [Actions setup
steps](https://gh.io/copilot/actions-setup-steps) to set up my
environment, which run before the firewall is enabled
> - Add the appropriate URLs or hosts to the custom allowlist in this
repository's [Copilot coding agent
settings](https://github.com/elastic/kibana/settings/copilot/coding_agent)
(admins only)
>
> </details>

<!-- START COPILOT CODING AGENT TIPS -->
---

⌨️ Start Copilot coding agent tasks without leaving your editor —
available in [VS Code](https://gh.io/cca-vs-code-docs), [Visual
Studio](https://gh.io/cca-visual-studio-docs), [JetBrains
IDEs](https://gh.io/cca-jetbrains-docs) and
[Eclipse](https://gh.io/cca-eclipse-docs).

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Co-authored-by: Alexey Antonov <alexwizp@gmail.com>
(cherry picked from commit 27ab7c3)
@kibanamachine
Copy link
Copy Markdown
Contributor

💚 All backports created successfully

Status Branch Result
9.3

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

mbondyra added a commit to mbondyra/kibana that referenced this pull request Mar 31, 2026
…e_for_children6

* commit '3402744f63ca1196e97b11ffac4e7f7efab240df': (80 commits)
  [PerUserAuth] Add EARS auth type for Connectors V2 (elastic#253695)
  Fix `@elastic/eui/require-aria-label-for-modals` lint violations across `@elastic/kibana-core` files (elastic#259757)
  [Entity Analytics][Leads generation][4] Add API routes, LeadDataClient, and async generation (elastic#257046)
  [Agent Builder] Agent-centric UX redesign (elastic#258005)
  fix query streams failing test (elastic#260277)
  [Lens as code] Add list layout to the new API (elastic#259967)
  [FTR] Add warning comments to deployment-agnostic FTR base configs (elastic#260018)
  [Discover][Logs profile] Fix missing search highlights (elastic#260056)
  Plugin system: safe deletion (elastic#259038)
  [Infra] Fix Hosts filter options to match selected schema (elastic#259825)
  Manual Entity Resolution and flyout representation (elastic#260162)
  [Cascade] Handle grouping on fields with unset values (elastic#260033)
  [Fleet] generate OTel config for integration packages with otelcol inputs (elastic#259968)
  [Search] Switch over to V2 index management details (elastic#259866)
  [inference] increase timeout for ES inference calls (elastic#260382)
  [ES|QL] Enable subqueries (elastic#257455)
  [ES|QL] Change Point order free options (elastic#260282)
  [Auth] Added authentication strategy for UIAM OAuth (elastic#256182)
  [Security Solution] Add "alerts_candidate_count" rule execution metric (elastic#259917)
  [api-docs] 2026-03-31 Daily api_docs build (elastic#260380)
  ...
kibanamachine added a commit that referenced this pull request Mar 31, 2026
…s across `@elastic/kibana-core` files (#259757) (#260427)

# Backport

This will backport the following commits from `main` to `9.3`:
- [Fix `@elastic/eui/require-aria-label-for-modals` lint violations
across `@elastic/kibana-core` files
(#259757)](#259757)

<!--- Backport version: 9.6.6 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT
[{"author":{"name":"Copilot","email":"198982749+Copilot@users.noreply.github.com"},"sourceCommit":{"committedDate":"2026-03-31T09:57:55Z","message":"Fix
`@elastic/eui/require-aria-label-for-modals` lint violations across
`@elastic/kibana-core` files (#259757)\n\nCloses:
https://github.com/elastic/kibana/issues/259747\n\nAdds missing
`aria-label` / `aria-labelledby` props to 8 EUI modal-type\ncomponents
(`EuiFlyout`, `EuiModal`, `EuiPopover`) across 6 files to\nsatisfy the
`@elastic/eui/require-aria-label-for-modals` ESLint rule.\n\n###
Changes\n\n- **`connection_details_flyout_content.stories.tsx`** —
`aria-label`\nwith i18n on 3 `EuiFlyout` instances\n-
**`cloud_id_row/label.tsx`** — `aria-label` with i18n on `EuiPopover`\n-
**`deployment_details_cloudid_input.tsx`** — `aria-label` with i18n
on\n`EuiPopover`\n- **`deployment_details_modal.tsx`** —
`aria-labelledby` via\n`useGeneratedHtmlId` linking `EuiModal` to its
`EuiModalHeaderTitle`\n- **`saved_objects_management/.../flyout.tsx`** —
`aria-labelledby` via\n`htmlIdGenerator` (class component) linking
`EuiFlyout` to its `<h2>`\nheading\n-
**`saved_objects_management/.../table.tsx`** — `aria-label` with
i18n\non export `EuiPopover`\n\nWhere a visible heading exists,
`aria-labelledby` is used (preferred).\nWhere no heading is present,
`aria-label` is used. All new strings
use\n`i18n.translate()`.\n\n```tsx\n// aria-labelledby — preferred when
a visible title exists\nconst modalTitleId =
useGeneratedHtmlId();\n<EuiModal aria-labelledby={modalTitleId}>\n
<EuiModalHeaderTitle id={modalTitleId}>Connection
details</EuiModalHeaderTitle>\n</EuiModal>\n\n// aria-label — when no
visible title is available\n<EuiPopover
aria-label={i18n.translate('...', { defaultMessage: 'Export options'
})}>\n```\n\n> [!WARNING]\n>\n> <details>\n> <summary>Firewall rules
blocked me from connecting to one or more\naddresses (expand for
details)</summary>\n>\n> #### I tried to connect to the following
addresses, but was blocked by\nfirewall rules:\n>\n> -
`ci-stats.kibana.dev`\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\nscripts/yarn_install_scripts.js
run ldd 0.8.2\nnibrowser-gtk/sys/lib/libjxl.so.0.8` (dns block)\n> -
Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node
scripts/kbn\nbootstrap` (dns block)\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node node
scripts/eslint\nsrc/platform/packages/shared/cloud/connection_details/connection_details_flyout_content.stories.tsx\nsrc/platform/packages/shared/cloud/connection_details/tabs/endpoints_tab/rows/cloud_id_row/label.tsx\nsrc/platform/packages/shared/cloud/deployment_details/deployment_details_cloudid_input.tsx\nsrc/platform/packages/shared/cloud/deployment_details/deployment_details_modal.tsx\nsrc/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/flyout.tsx\nsrc/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/table.tsx`\n(dns
block)\n> - `clients3.google.com`\n> - Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> -
`detectportal.firefox.com`\n> - Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> - `google.com`\n> -
Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> -
`googlechromelabs.github.io`\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node
install.js p/bin/git\nldd b/li\u0004\u0018` (dns block)\n> -
`iojs.org`\n> - Triggering command: `/usr/bin/curl curl -q --fail
--compressed -L -s\nREDACTED -o -` (dns block)\n>\n> If you need me to
access, download, or install something from one of\nthese locations, you
can either:\n>\n> - Configure [Actions
setup\nsteps](https://gh.io/copilot/actions-setup-steps) to set up
my\nenvironment, which run before the firewall is enabled\n> - Add the
appropriate URLs or hosts to the custom allowlist in this\nrepository's
[Copilot coding
agent\nsettings](https://github.com/elastic/kibana/settings/copilot/coding_agent)\n(admins
only)\n>\n> </details>\n\n\n---\n\n⌨️ Start Copilot coding agent tasks
without leaving your editor —\navailable in [VS
Code](https://gh.io/cca-vs-code-docs),
[Visual\nStudio](https://gh.io/cca-visual-studio-docs),
[JetBrains\nIDEs](https://gh.io/cca-jetbrains-docs)
and\n[Eclipse](https://gh.io/cca-eclipse-docs).\n\n---------\n\nCo-authored-by:
copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov
<alexwizp@gmail.com>","sha":"27ab7c35d87a8c043d5b7f644932f7a2eee284ef","branchLabelMapping":{"^v9.4.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Project:Accessibility","release_note:skip","💝community","backport:version","v9.4.0","v9.3.3","a11y:agent-pr"],"title":"Fix
`@elastic/eui/require-aria-label-for-modals` lint violations across
`@elastic/kibana-core`
files","number":259757,"url":"https://github.com/elastic/kibana/pull/259757","mergeCommit":{"message":"Fix
`@elastic/eui/require-aria-label-for-modals` lint violations across
`@elastic/kibana-core` files (#259757)\n\nCloses:
https://github.com/elastic/kibana/issues/259747\n\nAdds missing
`aria-label` / `aria-labelledby` props to 8 EUI modal-type\ncomponents
(`EuiFlyout`, `EuiModal`, `EuiPopover`) across 6 files to\nsatisfy the
`@elastic/eui/require-aria-label-for-modals` ESLint rule.\n\n###
Changes\n\n- **`connection_details_flyout_content.stories.tsx`** —
`aria-label`\nwith i18n on 3 `EuiFlyout` instances\n-
**`cloud_id_row/label.tsx`** — `aria-label` with i18n on `EuiPopover`\n-
**`deployment_details_cloudid_input.tsx`** — `aria-label` with i18n
on\n`EuiPopover`\n- **`deployment_details_modal.tsx`** —
`aria-labelledby` via\n`useGeneratedHtmlId` linking `EuiModal` to its
`EuiModalHeaderTitle`\n- **`saved_objects_management/.../flyout.tsx`** —
`aria-labelledby` via\n`htmlIdGenerator` (class component) linking
`EuiFlyout` to its `<h2>`\nheading\n-
**`saved_objects_management/.../table.tsx`** — `aria-label` with
i18n\non export `EuiPopover`\n\nWhere a visible heading exists,
`aria-labelledby` is used (preferred).\nWhere no heading is present,
`aria-label` is used. All new strings
use\n`i18n.translate()`.\n\n```tsx\n// aria-labelledby — preferred when
a visible title exists\nconst modalTitleId =
useGeneratedHtmlId();\n<EuiModal aria-labelledby={modalTitleId}>\n
<EuiModalHeaderTitle id={modalTitleId}>Connection
details</EuiModalHeaderTitle>\n</EuiModal>\n\n// aria-label — when no
visible title is available\n<EuiPopover
aria-label={i18n.translate('...', { defaultMessage: 'Export options'
})}>\n```\n\n> [!WARNING]\n>\n> <details>\n> <summary>Firewall rules
blocked me from connecting to one or more\naddresses (expand for
details)</summary>\n>\n> #### I tried to connect to the following
addresses, but was blocked by\nfirewall rules:\n>\n> -
`ci-stats.kibana.dev`\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\nscripts/yarn_install_scripts.js
run ldd 0.8.2\nnibrowser-gtk/sys/lib/libjxl.so.0.8` (dns block)\n> -
Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node
scripts/kbn\nbootstrap` (dns block)\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node node
scripts/eslint\nsrc/platform/packages/shared/cloud/connection_details/connection_details_flyout_content.stories.tsx\nsrc/platform/packages/shared/cloud/connection_details/tabs/endpoints_tab/rows/cloud_id_row/label.tsx\nsrc/platform/packages/shared/cloud/deployment_details/deployment_details_cloudid_input.tsx\nsrc/platform/packages/shared/cloud/deployment_details/deployment_details_modal.tsx\nsrc/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/flyout.tsx\nsrc/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/table.tsx`\n(dns
block)\n> - `clients3.google.com`\n> - Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> -
`detectportal.firefox.com`\n> - Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> - `google.com`\n> -
Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> -
`googlechromelabs.github.io`\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node
install.js p/bin/git\nldd b/li\u0004\u0018` (dns block)\n> -
`iojs.org`\n> - Triggering command: `/usr/bin/curl curl -q --fail
--compressed -L -s\nREDACTED -o -` (dns block)\n>\n> If you need me to
access, download, or install something from one of\nthese locations, you
can either:\n>\n> - Configure [Actions
setup\nsteps](https://gh.io/copilot/actions-setup-steps) to set up
my\nenvironment, which run before the firewall is enabled\n> - Add the
appropriate URLs or hosts to the custom allowlist in this\nrepository's
[Copilot coding
agent\nsettings](https://github.com/elastic/kibana/settings/copilot/coding_agent)\n(admins
only)\n>\n> </details>\n\n\n---\n\n⌨️ Start Copilot coding agent tasks
without leaving your editor —\navailable in [VS
Code](https://gh.io/cca-vs-code-docs),
[Visual\nStudio](https://gh.io/cca-visual-studio-docs),
[JetBrains\nIDEs](https://gh.io/cca-jetbrains-docs)
and\n[Eclipse](https://gh.io/cca-eclipse-docs).\n\n---------\n\nCo-authored-by:
copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov
<alexwizp@gmail.com>","sha":"27ab7c35d87a8c043d5b7f644932f7a2eee284ef"}},"sourceBranch":"main","suggestedTargetBranches":["9.3"],"targetPullRequestStates":[{"branch":"main","label":"v9.4.0","branchLabelMappingKey":"^v9.4.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/259757","number":259757,"mergeCommit":{"message":"Fix
`@elastic/eui/require-aria-label-for-modals` lint violations across
`@elastic/kibana-core` files (#259757)\n\nCloses:
https://github.com/elastic/kibana/issues/259747\n\nAdds missing
`aria-label` / `aria-labelledby` props to 8 EUI modal-type\ncomponents
(`EuiFlyout`, `EuiModal`, `EuiPopover`) across 6 files to\nsatisfy the
`@elastic/eui/require-aria-label-for-modals` ESLint rule.\n\n###
Changes\n\n- **`connection_details_flyout_content.stories.tsx`** —
`aria-label`\nwith i18n on 3 `EuiFlyout` instances\n-
**`cloud_id_row/label.tsx`** — `aria-label` with i18n on `EuiPopover`\n-
**`deployment_details_cloudid_input.tsx`** — `aria-label` with i18n
on\n`EuiPopover`\n- **`deployment_details_modal.tsx`** —
`aria-labelledby` via\n`useGeneratedHtmlId` linking `EuiModal` to its
`EuiModalHeaderTitle`\n- **`saved_objects_management/.../flyout.tsx`** —
`aria-labelledby` via\n`htmlIdGenerator` (class component) linking
`EuiFlyout` to its `<h2>`\nheading\n-
**`saved_objects_management/.../table.tsx`** — `aria-label` with
i18n\non export `EuiPopover`\n\nWhere a visible heading exists,
`aria-labelledby` is used (preferred).\nWhere no heading is present,
`aria-label` is used. All new strings
use\n`i18n.translate()`.\n\n```tsx\n// aria-labelledby — preferred when
a visible title exists\nconst modalTitleId =
useGeneratedHtmlId();\n<EuiModal aria-labelledby={modalTitleId}>\n
<EuiModalHeaderTitle id={modalTitleId}>Connection
details</EuiModalHeaderTitle>\n</EuiModal>\n\n// aria-label — when no
visible title is available\n<EuiPopover
aria-label={i18n.translate('...', { defaultMessage: 'Export options'
})}>\n```\n\n> [!WARNING]\n>\n> <details>\n> <summary>Firewall rules
blocked me from connecting to one or more\naddresses (expand for
details)</summary>\n>\n> #### I tried to connect to the following
addresses, but was blocked by\nfirewall rules:\n>\n> -
`ci-stats.kibana.dev`\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\nscripts/yarn_install_scripts.js
run ldd 0.8.2\nnibrowser-gtk/sys/lib/libjxl.so.0.8` (dns block)\n> -
Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node
scripts/kbn\nbootstrap` (dns block)\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node node
scripts/eslint\nsrc/platform/packages/shared/cloud/connection_details/connection_details_flyout_content.stories.tsx\nsrc/platform/packages/shared/cloud/connection_details/tabs/endpoints_tab/rows/cloud_id_row/label.tsx\nsrc/platform/packages/shared/cloud/deployment_details/deployment_details_cloudid_input.tsx\nsrc/platform/packages/shared/cloud/deployment_details/deployment_details_modal.tsx\nsrc/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/flyout.tsx\nsrc/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/table.tsx`\n(dns
block)\n> - `clients3.google.com`\n> - Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> -
`detectportal.firefox.com`\n> - Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> - `google.com`\n> -
Triggering
command:\n`/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\n/home/REDACTED/work/kibana/kibana/node_modules/@moonrepo/core-linux-x64-gnu/moon\nrun
:extract-version-dependencies :build-webpack
0.8.2\nb/libWPEBackend-fdo-1.0.so.1` (dns block)\n> -
`googlechromelabs.github.io`\n> - Triggering
command:\n`/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node\n/home/REDACTED/.nvm/versions/node/v22.22.0/bin/node
install.js p/bin/git\nldd b/li\u0004\u0018` (dns block)\n> -
`iojs.org`\n> - Triggering command: `/usr/bin/curl curl -q --fail
--compressed -L -s\nREDACTED -o -` (dns block)\n>\n> If you need me to
access, download, or install something from one of\nthese locations, you
can either:\n>\n> - Configure [Actions
setup\nsteps](https://gh.io/copilot/actions-setup-steps) to set up
my\nenvironment, which run before the firewall is enabled\n> - Add the
appropriate URLs or hosts to the custom allowlist in this\nrepository's
[Copilot coding
agent\nsettings](https://github.com/elastic/kibana/settings/copilot/coding_agent)\n(admins
only)\n>\n> </details>\n\n\n---\n\n⌨️ Start Copilot coding agent tasks
without leaving your editor —\navailable in [VS
Code](https://gh.io/cca-vs-code-docs),
[Visual\nStudio](https://gh.io/cca-visual-studio-docs),
[JetBrains\nIDEs](https://gh.io/cca-jetbrains-docs)
and\n[Eclipse](https://gh.io/cca-eclipse-docs).\n\n---------\n\nCo-authored-by:
copilot-swe-agent[bot]
<198982749+Copilot@users.noreply.github.com>\nCo-authored-by: alexwizp
<20072247+alexwizp@users.noreply.github.com>\nCo-authored-by: Alexey
Antonov
<alexwizp@gmail.com>","sha":"27ab7c35d87a8c043d5b7f644932f7a2eee284ef"}},{"branch":"9.3","label":"v9.3.3","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Co-authored-by: Alexey Antonov <alexwizp@gmail.com>
jeramysoucy pushed a commit to jeramysoucy/kibana that referenced this pull request Apr 1, 2026
…ss `@elastic/kibana-core` files (elastic#259757)

Closes: elastic#259747

Adds missing `aria-label` / `aria-labelledby` props to 8 EUI modal-type
components (`EuiFlyout`, `EuiModal`, `EuiPopover`) across 6 files to
satisfy the `@elastic/eui/require-aria-label-for-modals` ESLint rule.

### Changes

- **`connection_details_flyout_content.stories.tsx`** — `aria-label`
with i18n on 3 `EuiFlyout` instances
- **`cloud_id_row/label.tsx`** — `aria-label` with i18n on `EuiPopover`
- **`deployment_details_cloudid_input.tsx`** — `aria-label` with i18n on
`EuiPopover`
- **`deployment_details_modal.tsx`** — `aria-labelledby` via
`useGeneratedHtmlId` linking `EuiModal` to its `EuiModalHeaderTitle`
- **`saved_objects_management/.../flyout.tsx`** — `aria-labelledby` via
`htmlIdGenerator` (class component) linking `EuiFlyout` to its `<h2>`
heading
- **`saved_objects_management/.../table.tsx`** — `aria-label` with i18n
on export `EuiPopover`

Where a visible heading exists, `aria-labelledby` is used (preferred).
Where no heading is present, `aria-label` is used. All new strings use
`i18n.translate()`.

```tsx
// aria-labelledby — preferred when a visible title exists
const modalTitleId = useGeneratedHtmlId();
<EuiModal aria-labelledby={modalTitleId}>
  <EuiModalHeaderTitle id={modalTitleId}>Connection details</EuiModalHeaderTitle>
</EuiModal>

// aria-label — when no visible title is available
<EuiPopover aria-label={i18n.translate('...', { defaultMessage: 'Export options' })}>
```

> [!WARNING]
>
> <details>
> <summary>Firewall rules blocked me from connecting to one or more
addresses (expand for details)</summary>
>
> #### 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
nibrowser-gtk/sys/lib/libjxl.so.0.8` (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/eslint
src/platform/packages/shared/cloud/connection_details/connection_details_flyout_content.stories.tsx
src/platform/packages/shared/cloud/connection_details/tabs/endpoints_tab/rows/cloud_id_row/label.tsx
src/platform/packages/shared/cloud/deployment_details/deployment_details_cloudid_input.tsx
src/platform/packages/shared/cloud/deployment_details/deployment_details_modal.tsx
src/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/flyout.tsx
src/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/table.tsx`
(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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 p/bin/git
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:
>
> - Configure [Actions setup
steps](https://gh.io/copilot/actions-setup-steps) to set up my
environment, which run before the firewall is enabled
> - Add the appropriate URLs or hosts to the custom allowlist in this
repository's [Copilot coding agent
settings](https://github.com/elastic/kibana/settings/copilot/coding_agent)
(admins only)
>
> </details>

<!-- START COPILOT CODING AGENT TIPS -->
---

⌨️ Start Copilot coding agent tasks without leaving your editor —
available in [VS Code](https://gh.io/cca-vs-code-docs), [Visual
Studio](https://gh.io/cca-visual-studio-docs), [JetBrains
IDEs](https://gh.io/cca-jetbrains-docs) and
[Eclipse](https://gh.io/cca-eclipse-docs).

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Co-authored-by: Alexey Antonov <alexwizp@gmail.com>
paulinashakirova pushed a commit to paulinashakirova/kibana that referenced this pull request Apr 2, 2026
…ss `@elastic/kibana-core` files (elastic#259757)

Closes: elastic#259747

Adds missing `aria-label` / `aria-labelledby` props to 8 EUI modal-type
components (`EuiFlyout`, `EuiModal`, `EuiPopover`) across 6 files to
satisfy the `@elastic/eui/require-aria-label-for-modals` ESLint rule.

### Changes

- **`connection_details_flyout_content.stories.tsx`** — `aria-label`
with i18n on 3 `EuiFlyout` instances
- **`cloud_id_row/label.tsx`** — `aria-label` with i18n on `EuiPopover`
- **`deployment_details_cloudid_input.tsx`** — `aria-label` with i18n on
`EuiPopover`
- **`deployment_details_modal.tsx`** — `aria-labelledby` via
`useGeneratedHtmlId` linking `EuiModal` to its `EuiModalHeaderTitle`
- **`saved_objects_management/.../flyout.tsx`** — `aria-labelledby` via
`htmlIdGenerator` (class component) linking `EuiFlyout` to its `<h2>`
heading
- **`saved_objects_management/.../table.tsx`** — `aria-label` with i18n
on export `EuiPopover`

Where a visible heading exists, `aria-labelledby` is used (preferred).
Where no heading is present, `aria-label` is used. All new strings use
`i18n.translate()`.

```tsx
// aria-labelledby — preferred when a visible title exists
const modalTitleId = useGeneratedHtmlId();
<EuiModal aria-labelledby={modalTitleId}>
  <EuiModalHeaderTitle id={modalTitleId}>Connection details</EuiModalHeaderTitle>
</EuiModal>

// aria-label — when no visible title is available
<EuiPopover aria-label={i18n.translate('...', { defaultMessage: 'Export options' })}>
```

> [!WARNING]
>
> <details>
> <summary>Firewall rules blocked me from connecting to one or more
addresses (expand for details)</summary>
>
> #### 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
nibrowser-gtk/sys/lib/libjxl.so.0.8` (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/eslint
src/platform/packages/shared/cloud/connection_details/connection_details_flyout_content.stories.tsx
src/platform/packages/shared/cloud/connection_details/tabs/endpoints_tab/rows/cloud_id_row/label.tsx
src/platform/packages/shared/cloud/deployment_details/deployment_details_cloudid_input.tsx
src/platform/packages/shared/cloud/deployment_details/deployment_details_modal.tsx
src/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/flyout.tsx
src/platform/plugins/shared/saved_objects_management/public/management_section/objects_table/components/table.tsx`
(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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 :extract-version-dependencies :build-webpack 0.8.2
b/libWPEBackend-fdo-1.0.so.1` (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 p/bin/git
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:
>
> - Configure [Actions setup
steps](https://gh.io/copilot/actions-setup-steps) to set up my
environment, which run before the firewall is enabled
> - Add the appropriate URLs or hosts to the custom allowlist in this
repository's [Copilot coding agent
settings](https://github.com/elastic/kibana/settings/copilot/coding_agent)
(admins only)
>
> </details>

<!-- START COPILOT CODING AGENT TIPS -->
---

⌨️ Start Copilot coding agent tasks without leaving your editor —
available in [VS Code](https://gh.io/cca-vs-code-docs), [Visual
Studio](https://gh.io/cca-visual-studio-docs), [JetBrains
IDEs](https://gh.io/cca-jetbrains-docs) and
[Eclipse](https://gh.io/cca-eclipse-docs).

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: alexwizp <20072247+alexwizp@users.noreply.github.com>
Co-authored-by: Alexey Antonov <alexwizp@gmail.com>
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:version Backport to applied version labels 💝community Project:Accessibility release_note:skip Skip the PR/issue when compiling release notes v9.3.3 v9.4.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-core files

5 participants