Skip to content

Commit 57a83ad

Browse files
authored
chore: remaining correction of accessibility (#790)
1 parent 530555c commit 57a83ad

22 files changed

Lines changed: 104 additions & 78 deletions

File tree

.talismanrc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@ fileignoreconfig:
1313
checksum: 4964a9d18ceceda3ff05dab049e08513d2f360e6e09a06ec1773855e070fcbca
1414
- filename: app/(public)/outils/habillement/osez-changer/page.tsx
1515
checksum: 75eb40716bd0ef027e095059733b9df69dc43e3e8d64d0df366bf69f358c7b19
16+
- filename: src/components/externalModules/detection/Detector.tsx
17+
checksum: 1851481f3ddc89e399df61df8d010661643eb94d33822593f173cd68db58369f
1618
version: ""

src/components/breadcrumbs/Breadcrumbs.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import styles from './Breadcrumbs.module.css'
55

66
const Breadcrumbs = ({ links, current }: { links: { label: string; link: string }[]; current: string }) => {
77
return (
8-
<nav role='navigation' aria-label='Breadcrumb' className='main-container'>
8+
<nav role='navigation' aria-label="Fil d'Ariane" className='main-container'>
99
<ol className={styles.container}>
1010
{links.map(({ label, link }) => (
1111
<li key={label} className={styles.li}>

src/components/budget/ByYear.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
'use client'
22

3-
import React, { useState } from 'react'
3+
import { useState } from 'react'
44
import Select from 'components/form/Select'
55
import styles from './ByYear.module.css'
66

@@ -36,13 +36,13 @@ const ByYear = ({ labelId }: { labelId: string }) => {
3636
className={styles.select}
3737
id='annee'
3838
label='Année'
39-
required
40-
onChange={(e) => setBudget(budgets[e.target.value])}>
39+
onChange={(e) => setBudget(budgets[e.target.value])}
40+
inline>
4141
<option value='2024'>2024</option>
4242
<option value='2023'>2023</option>
4343
</Select>
4444
<br />
45-
{budget.description}
45+
<p>{budget.description}</p>
4646
<table className={styles.table} aria-labelledby={labelId}>
4747
<thead>
4848
<tr>

src/components/comparateur/overscreens/Category.tsx

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { useTranslations } from 'next-intl'
2-
import React, { useMemo, useState } from 'react'
2+
import { useMemo, useState } from 'react'
33
import useParamContext from 'src/providers/ParamProvider'
44
import { computedEquivalents } from 'src/providers/equivalents'
55
import { Category as CategoryType } from 'types/category'
@@ -49,7 +49,7 @@ const Category = ({
4949
const t = useTranslations('comparateur.overscreen')
5050
const tCategory = useTranslations('category')
5151
return (
52-
<fieldset className={styles.container}>
52+
<div className={styles.container}>
5353
<button
5454
className={styles.header}
5555
onClick={() => setOpen(!open)}
@@ -90,14 +90,16 @@ const Category = ({
9090
{t('compare-button')}
9191
</Button>
9292
</div>
93-
<Equivalents
94-
equivalents={equivalents}
95-
equivalentsToDisplay={categoryEquivalents}
96-
setEquivalents={setEquivalents}
97-
/>
93+
<fieldset aria-label={`${t('equivalents-group')} ${tCategory(`name-${category.slug}`)}`}>
94+
<Equivalents
95+
equivalents={equivalents}
96+
equivalentsToDisplay={categoryEquivalents}
97+
setEquivalents={setEquivalents}
98+
/>
99+
</fieldset>
98100
</>
99101
)}
100-
</fieldset>
102+
</div>
101103
)
102104
}
103105

src/components/externalModules/detection/Detector.tsx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,9 +152,18 @@ const Detector = ({ impact, language }: { impact: string; language: 'fr' | 'en'
152152
setDisplay('')
153153
}
154154
}
155+
156+
const handleKeyDown = (event: KeyboardEvent) => {
157+
if (event.key === 'Escape') {
158+
setDisplay('')
159+
}
160+
}
161+
155162
document.addEventListener('click', handleClickOutside, true)
163+
document.addEventListener('keydown', handleKeyDown, true)
156164
return () => {
157165
document.removeEventListener('click', handleClickOutside, true)
166+
document.removeEventListener('keydown', handleKeyDown, true)
158167
}
159168
}, [])
160169

@@ -169,7 +178,7 @@ const Detector = ({ impact, language }: { impact: string; language: 'fr' | 'en'
169178
}}
170179
/>
171180
<div
172-
role='alertdialog'
181+
data-testId='etiquette'
173182
aria-labelledby='etiquette-value'
174183
className={classNames(styles.etiquette, {
175184
[styles.hide]: !display,

src/components/externalModules/shopify/ColumnEquivalent.module.css

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111

1212
.leftContent {
1313
flex: 1;
14+
display: flex;
15+
flex-direction: column;
1416
padding: 0.75rem 0.75rem 1rem 0.75rem;
1517
}
1618

src/components/externalModules/shopify/ColumnEquivalent.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import classNames from 'classnames'
2-
import React, { useEffect, useMemo, useState } from 'react'
2+
import { useEffect, useMemo, useState } from 'react'
33
import { Language } from 'types/equivalent'
44
import { getNumberPrecision } from 'utils/formatNumberPrecision'
55
import LocalNumber from 'components/base/LocalNumber'
@@ -43,12 +43,12 @@ const ColumnEquivalent = ({
4343
return (
4444
<div className={classNames(styles.container, { [styles.withRandomize]: !!randomize })}>
4545
<div className={baseStyles.top}>
46-
<div className={styles.leftContent}>
47-
<div className={baseStyles.value} data-testid='etiquette-value'>
46+
<p className={styles.leftContent}>
47+
<span className={baseStyles.value} data-testid='etiquette-value'>
4848
<LocalNumber number={value} />
49-
</div>
50-
<div className={baseStyles.label}>{unit} CO₂e</div>
51-
</div>
49+
</span>
50+
<span className={baseStyles.label}>{unit} CO₂e</span>
51+
</p>
5252
<Logo value={preciseValue} right />
5353
</div>
5454
<div className={baseStyles.rightColumn}>

src/components/externalModules/shopify/Equivalent.module.css

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@
4141
.leftContent {
4242
padding: 0.75em 1.25em 0.75em 0.25em !important;
4343
margin: auto !important;
44+
display: flex !important;
45+
flex-direction: column !important;
4446
}
4547

4648
.rightColumn,

src/components/externalModules/shopify/Equivalent.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React, { ReactNode, useCallback, useEffect, useMemo, useRef, useState } from 'react'
1+
import { ReactNode, useEffect, useMemo, useRef, useState } from 'react'
22
import { Language } from 'types/equivalent'
33
import { getNumberPrecision } from 'utils/formatNumberPrecision'
44
import LocalNumber from 'components/base/LocalNumber'
@@ -60,12 +60,12 @@ const Equivalent = ({
6060
<div className={styles.container}>
6161
<div className={styles.left}>
6262
<Logo value={preciseValue} url={url} />
63-
<div className={styles.leftContent}>
64-
<div className={styles.value} data-testid='etiquette-value'>
63+
<p className={styles.leftContent}>
64+
<span className={styles.value} data-testid='etiquette-value'>
6565
<LocalNumber number={value} />
66-
</div>
67-
<div className={styles.label}>{unit} CO₂e</div>
68-
</div>
66+
</span>
67+
<span className={styles.label}>{unit} CO₂e</span>
68+
</p>
6969
</div>
7070
<div className={styles.right}>
7171
<div className={isAnimated ? styles.animatedEqual : styles.equal}>

src/components/layout/Header.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ import SkipLinks from './SkipLinks'
99

1010
export default function Header() {
1111
return (
12-
<header role='banner' aria-label='En-tête' className={styles.header} id='header-navigation' tabIndex={-1}>
12+
<header role='banner' aria-label='En-tête' className={styles.header} id='header-navigation'>
1313
<SkipLinks />
1414
<div className='main-container'>
1515
<div className={styles.container}>
1616
<Logos />
17-
<nav role='navigation'>
17+
<nav role='navigation' tabIndex={-1} aria-label='Menu principal'>
1818
<ul className={styles.mainLinks}>
1919
<li>
2020
<Link href='/outils' className={styles.link}>

0 commit comments

Comments
 (0)