From 20fa806014ba48e765bbbcd2e3699d7f37cbb552 Mon Sep 17 00:00:00 2001 From: Lene Gadewoll Date: Mon, 21 Jul 2025 17:46:07 +0200 Subject: [PATCH 1/4] fix(codeBlock): add missing accessible labels for virtualized code blocks --- packages/eui/src/components/code/code_block.tsx | 2 ++ .../src/components/code/code_block_virtualized.tsx | 13 +++++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/packages/eui/src/components/code/code_block.tsx b/packages/eui/src/components/code/code_block.tsx index b9fcb4b3f78..fd08434eae8 100644 --- a/packages/eui/src/components/code/code_block.tsx +++ b/packages/eui/src/components/code/code_block.tsx @@ -293,6 +293,7 @@ export const EuiCodeBlock: FunctionComponent = ({ {isVirtualized ? ( = ({ {isVirtualized ? ( ; @@ -32,10 +34,13 @@ export const EuiCodeBlockVirtualized = ({ }) => { const VirtualizedOuterElement = useMemo( () => - forwardRef(({ style, ...props }, ref) => ( -
+      forwardRef(({ style, children, ...props }, ref) => (
+        
+          {label}
+          {children}
+        
)), - [preProps] + [preProps, label] ); const VirtualizedInnerElement = useMemo( From 60168583da0be37931395c65bd3e5dd30e61937b Mon Sep 17 00:00:00 2001 From: Lene Gadewoll Date: Mon, 21 Jul 2025 17:57:06 +0200 Subject: [PATCH 2/4] test: update snapshots --- .../__snapshots__/code_block.test.tsx.snap | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/packages/eui/src/components/code/__snapshots__/code_block.test.tsx.snap b/packages/eui/src/components/code/__snapshots__/code_block.test.tsx.snap index 2a1ce94508a..45f8615870a 100644 --- a/packages/eui/src/components/code/__snapshots__/code_block.test.tsx.snap +++ b/packages/eui/src/components/code/__snapshots__/code_block.test.tsx.snap @@ -13,6 +13,25 @@ exports[`EuiCodeBlock Virtualization renders a virtualized code block 1`] = ` style="position: relative; block-size: 600px; inline-size: 600px; overflow: auto; will-change: transform; direction: ltr;" tabindex="0" > + +
+ text code block: +
+ Date: Mon, 21 Jul 2025 18:16:02 +0200 Subject: [PATCH 3/4] chore: add changelog --- packages/eui/changelogs/upcoming/8887.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 packages/eui/changelogs/upcoming/8887.md diff --git a/packages/eui/changelogs/upcoming/8887.md b/packages/eui/changelogs/upcoming/8887.md new file mode 100644 index 00000000000..e12235566c0 --- /dev/null +++ b/packages/eui/changelogs/upcoming/8887.md @@ -0,0 +1,4 @@ +**Accessibility** + +- Added accessible labels to virtualized `EuiCodeBlock` + From 974b99294db3ce291c1aba8798aaa5f239ccfd9c Mon Sep 17 00:00:00 2001 From: Lene Gadewoll Date: Thu, 24 Jul 2025 09:35:53 +0200 Subject: [PATCH 4/4] refactor: include aria-label in codeBlockLabel --- .../components/code/__snapshots__/code_block.test.tsx.snap | 4 ++-- packages/eui/src/components/code/code_block.tsx | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/eui/src/components/code/__snapshots__/code_block.test.tsx.snap b/packages/eui/src/components/code/__snapshots__/code_block.test.tsx.snap index 45f8615870a..91cd6b2a9d8 100644 --- a/packages/eui/src/components/code/__snapshots__/code_block.test.tsx.snap +++ b/packages/eui/src/components/code/__snapshots__/code_block.test.tsx.snap @@ -23,6 +23,7 @@ exports[`EuiCodeBlock Virtualization renders a virtualized code block 1`] = `
+ aria-label, text code block:
+ aria-label, text code block: = ({ overflowHeight, isVirtualized: _isVirtualized, lineNumbers = false, + 'aria-label': ariaLabel, ...rest }) => { const euiTheme = useEuiTheme(); @@ -278,7 +279,10 @@ export const EuiCodeBlock: FunctionComponent = ({ <> {tabularCopyMarkers.hiddenNoCopyBoundary} -
{codeBlockLabel}
+
+ {ariaLabel ? `${ariaLabel}, ` : undefined} + {codeBlockLabel} +
{tabularCopyMarkers.hiddenNoCopyBoundary}