Skip to content

Commit 99d674c

Browse files
committed
⚡️(frontend) add correct attributes to decorative and interactive icons
Add aria-hidden and aria-label to improve screen reader accessibility Signed-off-by: Cyril <[email protected]>
1 parent 1cdb6b6 commit 99d674c

File tree

15 files changed

+51
-38
lines changed

15 files changed

+51
-38
lines changed

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,9 @@ and this project adheres to
3131
- ♻️(frontend) redirect to doc after duplicate #1175
3232
- 🔧(project) change env.d system by using local files #1200
3333
- ⚡️(frontend) improve tree stability #1207
34-
- ⚡️(frontend) improve accessibility #1232
34+
- ⚡️(frontend) improve accessibility
35+
- #1232
36+
- #1255
3537
- 🛂(frontend) block drag n drop when not desktop #1239
3638

3739
### Fixed

src/frontend/apps/e2e/__tests__/app-impress/404.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { expect, test } from '@playwright/test';
33
test.beforeEach(async ({ page }) => {
44
await page.goto('/');
55
await expect(
6-
page.locator('header').first().locator('h2').getByText('Docs'),
6+
page.locator('header').first().locator('h1').getByText('Docs'),
77
).toBeVisible();
88
await page.goto('unknown-page404');
99
});

src/frontend/apps/e2e/__tests__/app-impress/doc-create.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ test.describe('Doc Create', () => {
2222
);
2323

2424
const header = page.locator('header').first();
25-
await header.locator('h2').getByText('Docs').click();
25+
await header.locator('h1').getByText('Docs').click();
2626

2727
const docsGrid = page.getByTestId('docs-grid');
2828
await expect(docsGrid).toBeVisible();

src/frontend/apps/e2e/__tests__/app-impress/doc-export.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -429,7 +429,7 @@ test.describe('Doc Export', () => {
429429
await page.waitForLoadState('domcontentloaded');
430430

431431
const header = page.locator('header').first();
432-
await header.locator('h2').getByText('Docs').click();
432+
await header.locator('h1').getByText('Docs').click();
433433

434434
const randomDocFrench = randomName(
435435
'doc-language-export-french',

src/frontend/apps/e2e/__tests__/app-impress/doc-grid-dnd.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ test.describe('Doc grid dnd', () => {
88
await page.goto('/');
99
const header = page.locator('header').first();
1010
await createDoc(page, 'Draggable doc', browserName, 1);
11-
await header.locator('h2').getByText('Docs').click();
11+
await header.locator('h1').getByText('Docs').click();
1212
await createDoc(page, 'Droppable doc', browserName, 1);
13-
await header.locator('h2').getByText('Docs').click();
13+
await header.locator('h1').getByText('Docs').click();
1414

1515
const response = await page.waitForResponse(
1616
(response) =>

src/frontend/apps/e2e/__tests__/app-impress/doc-member-create.spec.ts

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -244,9 +244,7 @@ test.describe('Document create member: Multiple login', () => {
244244

245245
await keyCloakSignIn(page, otherBrowser!);
246246

247-
await expect(
248-
page.getByRole('link', { name: 'Docs Logo Docs' }),
249-
).toBeVisible();
247+
await expect(page.getByTestId('header-logo-link')).toBeVisible();
250248

251249
await page.goto(urlDoc);
252250

@@ -271,9 +269,7 @@ test.describe('Document create member: Multiple login', () => {
271269
await page.goto('/');
272270
await keyCloakSignIn(page, browserName);
273271

274-
await expect(
275-
page.getByRole('link', { name: 'Docs Logo Docs' }),
276-
).toBeVisible({
272+
await expect(page.getByTestId('header-logo-link')).toBeVisible({
277273
timeout: 10000,
278274
});
279275

@@ -334,9 +330,7 @@ test.describe('Document create member: Multiple login', () => {
334330

335331
await keyCloakSignIn(page, otherBrowser!);
336332

337-
await expect(
338-
page.getByRole('link', { name: 'Docs Logo Docs' }),
339-
).toBeVisible({
333+
await expect(page.getByTestId('header-logo-link')).toBeVisible({
340334
timeout: 10000,
341335
});
342336

src/frontend/apps/e2e/__tests__/app-impress/doc-visibility.spec.ts

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -122,9 +122,7 @@ test.describe('Doc Visibility: Restricted', () => {
122122

123123
await keyCloakSignIn(page, otherBrowser!);
124124

125-
await expect(
126-
page.getByRole('link', { name: 'Docs Logo Docs' }),
127-
).toBeVisible({
125+
await expect(page.getByTestId('header-logo-link')).toBeVisible({
128126
timeout: 10000,
129127
});
130128

@@ -178,9 +176,7 @@ test.describe('Doc Visibility: Restricted', () => {
178176

179177
await keyCloakSignIn(page, otherBrowser!);
180178

181-
await expect(
182-
page.getByRole('link', { name: 'Docs Logo Docs' }),
183-
).toBeVisible();
179+
await expect(page.getByTestId('header-logo-link')).toBeVisible();
184180

185181
await page.goto(urlDoc);
186182

@@ -455,9 +451,7 @@ test.describe('Doc Visibility: Authenticated', () => {
455451
const otherBrowser = BROWSERS.find((b) => b !== browserName);
456452
await keyCloakSignIn(page, otherBrowser!);
457453

458-
await expect(
459-
page.getByRole('link', { name: 'Docs Logo Docs' }),
460-
).toBeVisible({
454+
await expect(page.getByTestId('header-logo-link')).toBeVisible({
461455
timeout: 10000,
462456
});
463457

@@ -545,9 +539,7 @@ test.describe('Doc Visibility: Authenticated', () => {
545539
const otherBrowser = BROWSERS.find((b) => b !== browserName);
546540
await keyCloakSignIn(page, otherBrowser!);
547541

548-
await expect(
549-
page.getByRole('link', { name: 'Docs Logo Docs' }),
550-
).toBeVisible();
542+
await expect(page.getByTestId('header-logo-link')).toBeVisible();
551543

552544
await page.goto(urlDoc);
553545

src/frontend/apps/e2e/__tests__/app-impress/header.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ test.describe('Header', () => {
1212

1313
const header = page.locator('header').first();
1414

15-
await expect(header.getByLabel('Docs Logo')).toBeVisible();
15+
await expect(header.getByLabel('Back to homepage')).toBeVisible();
1616
await expect(header.locator('h2').getByText('Docs')).toHaveCSS(
1717
'font-family',
1818
/Roboto/i,

src/frontend/apps/e2e/__tests__/app-impress/utils-common.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ export const goToGridDoc = async (
154154
{ nthRow = 1, title }: GoToGridDocOptions = {},
155155
) => {
156156
const header = page.locator('header').first();
157-
await header.locator('h2').getByText('Docs').click();
157+
await header.locator('h1').getByText('Docs').click();
158158

159159
const docsGrid = page.getByTestId('docs-grid');
160160
await expect(docsGrid).toBeVisible();

src/frontend/apps/impress/src/features/header/components/Header.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ export const Header = () => {
3939
className="--docs--header"
4040
>
4141
{!isDesktop && <ButtonTogglePanel />}
42-
<StyledLink href="/">
42+
<StyledLink href="/" data-testid="header-logo-link">
4343
<Box
4444
$align="center"
4545
$gap={spacingsTokens['3xs']}
@@ -49,11 +49,11 @@ export const Header = () => {
4949
$margin={{ top: 'auto' }}
5050
>
5151
<IconDocs
52-
aria-label={t('Docs Logo')}
52+
aria-label={t('Back to homepage')}
5353
width={32}
5454
color={colorsTokens['primary-text']}
5555
/>
56-
<Title />
56+
<Title headingLevel="h1" />
5757
</Box>
5858
</StyledLink>
5959
{!isDesktop ? (

0 commit comments

Comments
 (0)