@kodalabs-io/eqo 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,291 @@
1
+ // src/i18n/fr-FR.ts
2
+ var frFR = {
3
+ themes: {
4
+ 1: "Images",
5
+ 2: "Cadres",
6
+ 3: "Couleurs",
7
+ 4: "Multim\xE9dia",
8
+ 5: "Tableaux",
9
+ 6: "Liens",
10
+ 7: "Scripts",
11
+ 8: "\xC9l\xE9ments obligatoires",
12
+ 9: "Structuration de l'information",
13
+ 10: "Pr\xE9sentation de l'information",
14
+ 11: "Formulaires",
15
+ 12: "Navigation",
16
+ 13: "Consultation"
17
+ },
18
+ criteria: {
19
+ "1.1": "Chaque image porteuse d'information a-t-elle une alternative textuelle ?",
20
+ "1.2": "Chaque image de d\xE9coration est-elle correctement ignor\xE9e par les technologies d'assistance ?",
21
+ "1.3": "Pour chaque image porteuse d'information ayant une alternative textuelle, cette alternative est-elle pertinente (hors cas particuliers) ?",
22
+ "1.4": "Pour chaque image utilis\xE9e comme CAPTCHA ou comme image-test, ayant une alternative textuelle, cette alternative d\xE9crit-elle la nature et la fonction de l'image ?",
23
+ "1.5": "Pour chaque image utilis\xE9e comme CAPTCHA, une solution d'acc\xE8s alternatif au contenu ou \xE0 la fonction du CAPTCHA est-elle disponible ?",
24
+ "1.6": "Chaque image porteuse d'information a-t-elle, si n\xE9cessaire, une description d\xE9taill\xE9e ?",
25
+ "1.7": "Pour chaque image porteuse d'information ayant une description d\xE9taill\xE9e, cette description est-elle pertinente ?",
26
+ "1.8": "Chaque image texte porteuse d'information, en l'absence d'un m\xE9canisme de remplacement, doit-elle \xEAtre remplac\xE9e par du texte styl\xE9 ?",
27
+ "1.9": "Chaque l\xE9gende d'image est-elle, si n\xE9cessaire, correctement reli\xE9e \xE0 l'image correspondante ?",
28
+ "2.1": "Chaque cadre a-t-il un titre de cadre ?",
29
+ "2.2": "Pour chaque cadre ayant un titre de cadre, ce titre de cadre est-il pertinent ?",
30
+ "3.1": "Dans chaque page web, l'information ne doit pas \xEAtre donn\xE9e uniquement par la couleur. Cette r\xE8gle est-elle respect\xE9e ?",
31
+ "3.2": "Dans chaque page web, le contraste entre la couleur du texte et la couleur de son arri\xE8re-plan est-il suffisamment \xE9lev\xE9 ?",
32
+ "3.3": "Dans chaque page web, les couleurs utilis\xE9es dans les composants d'interface ou les \xE9l\xE9ments graphiques porteurs d'informations sont-elles suffisamment contrast\xE9es ?",
33
+ "4.1": "Chaque m\xE9dia temporel pr\xE9-enregistr\xE9 a-t-il, si n\xE9cessaire, une transcription textuelle ou une audiodescription ?",
34
+ "4.2": "Pour chaque m\xE9dia temporel pr\xE9-enregistr\xE9 ayant une transcription textuelle ou une audiodescription, celles-ci sont-elles pertinentes ?",
35
+ "4.3": "Chaque m\xE9dia temporel synchronis\xE9 pr\xE9-enregistr\xE9 a-t-il, si n\xE9cessaire, des sous-titres synchronis\xE9s ?",
36
+ "4.4": "Pour chaque m\xE9dia temporel synchronis\xE9 pr\xE9-enregistr\xE9 ayant des sous-titres synchronis\xE9s, ces sous-titres sont-ils pertinents ?",
37
+ "4.5": "Chaque m\xE9dia temporel pr\xE9-enregistr\xE9 a-t-il, si n\xE9cessaire, une audiodescription ?",
38
+ "4.6": "Pour chaque m\xE9dia temporel pr\xE9-enregistr\xE9 ayant une audiodescription, celle-ci est-elle pertinente ?",
39
+ "4.7": "Chaque m\xE9dia temporel est-il clairement identifiable (hors cas particuliers) ?",
40
+ "4.8": "Chaque m\xE9dia non temporel a-t-il, si n\xE9cessaire, une alternative (hors cas particuliers) ?",
41
+ "4.9": "Pour chaque m\xE9dia non temporel ayant une alternative, cette alternative est-elle pertinente ?",
42
+ "4.10": "Chaque son d\xE9clench\xE9 automatiquement est-il contr\xF4lable par l'utilisateur ?",
43
+ "4.11": "La consultation de chaque m\xE9dia temporel est-elle, si n\xE9cessaire, contr\xF4lable par le clavier et tout dispositif de pointage ?",
44
+ "4.12": "La consultation de chaque m\xE9dia non temporel est-elle contr\xF4lable par le clavier et tout dispositif de pointage ?",
45
+ "4.13": "Chaque m\xE9dia temporel et non temporel est-il compatible avec les technologies d'assistance ?",
46
+ "5.1": "Chaque tableau de donn\xE9es complexe a-t-il un r\xE9sum\xE9 ?",
47
+ "5.2": "Pour chaque tableau de donn\xE9es complexe ayant un r\xE9sum\xE9, celui-ci est-il pertinent ?",
48
+ "5.3": "Pour chaque tableau de mise en forme, le contenu lin\xE9aris\xE9 reste-t-il compr\xE9hensible ?",
49
+ "5.4": "Pour chaque tableau de donn\xE9es ayant un titre, le titre est-il correctement associ\xE9 au tableau de donn\xE9es ?",
50
+ "5.5": "Pour chaque tableau de donn\xE9es ayant un titre, celui-ci est-il pertinent ?",
51
+ "5.6": "Pour chaque tableau de donn\xE9es, chaque en-t\xEAte de colonne et chaque en-t\xEAte de ligne sont-ils correctement d\xE9clar\xE9s ?",
52
+ "5.7": "Pour chaque tableau de donn\xE9es, la technique appropri\xE9e permettant d'associer chaque cellule \xE0 ses en-t\xEAtes est-elle utilis\xE9e ?",
53
+ "5.8": "Chaque tableau de mise en forme ne doit pas utiliser d'\xE9l\xE9ments propres aux tableaux de donn\xE9es.",
54
+ "6.1": "Chaque lien est-il explicite (hors cas particuliers) ?",
55
+ "6.2": "Dans chaque page web, chaque lien a-t-il un intitul\xE9 ?",
56
+ "7.1": "Chaque script est-il, si n\xE9cessaire, compatible avec les technologies d'assistance ?",
57
+ "7.2": "Pour chaque script ayant une alternative, cette alternative est-elle pertinente ?",
58
+ "7.3": "Chaque script est-il contr\xF4lable par le clavier et par tout dispositif de pointage ?",
59
+ "7.4": "Pour chaque script qui initie un changement de contexte, l'utilisateur est-il averti ?",
60
+ "7.5": "Dans chaque page web, les messages de statut sont-ils correctement restitu\xE9s par les technologies d'assistance ?",
61
+ "8.1": "Chaque page web est-elle d\xE9finie par un type de document ?",
62
+ "8.2": "Pour chaque page web, le code source g\xE9n\xE9r\xE9 est-il valide selon le type de document sp\xE9cifi\xE9 ?",
63
+ "8.3": "Dans chaque page web, la langue par d\xE9faut est-elle pr\xE9sente ?",
64
+ "8.4": "Pour chaque page web ayant une langue par d\xE9faut, le code de langue est-il pertinent ?",
65
+ "8.5": "Chaque page web a-t-elle un titre de page ?",
66
+ "8.6": "Pour chaque page web ayant un titre de page, ce titre est-il pertinent ?",
67
+ "8.7": "Dans chaque page web, chaque changement de langue est-il indiqu\xE9 dans le code source (hors cas particuliers) ?",
68
+ "8.8": "Dans chaque page web, le code de langue de chaque changement de langue est-il valide et pertinent ?",
69
+ "8.9": "Dans chaque page web, les balises ne doivent pas \xEAtre utilis\xE9es uniquement \xE0 des fins de pr\xE9sentation.",
70
+ "8.10": "Dans chaque page web, les changements du sens de lecture sont-ils signal\xE9s ?",
71
+ "9.1": "Dans chaque page web, l'information est-elle structur\xE9e par l'utilisation appropri\xE9e de titres ?",
72
+ "9.2": "Dans chaque page web, la structure du document est-elle coh\xE9rente (hors cas particuliers) ?",
73
+ "9.3": "Dans chaque page web, chaque liste est-elle correctement structur\xE9e ?",
74
+ "9.4": "Dans chaque page web, chaque citation est-elle correctement indiqu\xE9e ?",
75
+ "10.1": "Dans le site web, des feuilles de styles sont-elles utilis\xE9es pour contr\xF4ler la pr\xE9sentation de l'information ?",
76
+ "10.2": "Dans chaque page web, le contenu visible porteur d'information reste-t-il pr\xE9sent lorsque les feuilles de styles sont d\xE9sactiv\xE9es ?",
77
+ "10.3": "Dans chaque page web, l'information reste-t-elle compr\xE9hensible lorsque les feuilles de styles sont d\xE9sactiv\xE9es ?",
78
+ "10.4": "Dans chaque page web, le texte reste-t-il lisible lorsque la taille des caract\xE8res est augment\xE9e jusqu'\xE0 200% ?",
79
+ "10.5": "Dans chaque page web, les d\xE9clarations CSS de couleurs de fond d'\xE9l\xE9ment et de police sont-elles faites conjointement ?",
80
+ "10.6": "Dans chaque page web, chaque lien dont la nature n'est pas \xE9vidente est-il visible par rapport au texte environnant ?",
81
+ "10.7": "Dans chaque page web, pour chaque \xE9l\xE9ment recevant le focus, la prise de focus est-elle visible ?",
82
+ "10.8": "Pour chaque page web, les contenus cach\xE9s ont-ils vocation \xE0 \xEAtre ignor\xE9s par les technologies d'assistance ?",
83
+ "10.9": "Dans chaque page web, l'information ne doit pas \xEAtre donn\xE9e uniquement par la forme, la taille ou la position.",
84
+ "10.10": "Dans chaque page web, l'information ne doit pas \xEAtre donn\xE9e par la forme, la taille ou la position uniquement.",
85
+ "10.11": "Pour chaque page web, les contenus peuvent-ils \xEAtre pr\xE9sent\xE9s sans perte d'information ou de fonctionnalit\xE9 et sans d\xE9filement horizontal ?",
86
+ "10.12": "Dans chaque page web, les propri\xE9t\xE9s d'espacement du texte peuvent-elles \xEAtre red\xE9finies par l'utilisateur sans perte de contenu ou de fonctionnalit\xE9 ?",
87
+ "10.13": "Dans chaque page web, les contenus additionnels apparaissant \xE0 la prise de focus ou au survol d'un composant d'interface sont-ils contr\xF4lables par l'utilisateur ?",
88
+ "10.14": "Dans chaque page web, les contenus additionnels apparaissant via les styles CSS peuvent-ils \xEAtre rendus visibles au clavier et par tout dispositif de pointage ?",
89
+ "11.1": "Chaque champ de formulaire a-t-il une \xE9tiquette ?",
90
+ "11.2": "Chaque \xE9tiquette associ\xE9e \xE0 un champ de formulaire est-elle pertinente (hors cas particuliers) ?",
91
+ "11.3": "Dans chaque formulaire, chaque \xE9tiquette associ\xE9e \xE0 un champ de formulaire ayant la m\xEAme fonction et r\xE9p\xE9t\xE9e plusieurs fois dans une m\xEAme page ou dans un ensemble de pages est-elle coh\xE9rente ?",
92
+ "11.4": "Dans chaque formulaire, chaque \xE9tiquette de champ et son champ associ\xE9 sont-ils accol\xE9s ?",
93
+ "11.5": "Dans chaque formulaire, les champs de m\xEAme nature sont-ils regroup\xE9s, si n\xE9cessaire ?",
94
+ "11.6": "Dans chaque formulaire, chaque regroupement de champs de m\xEAme nature a-t-il une l\xE9gende ?",
95
+ "11.7": "Dans chaque formulaire, chaque l\xE9gende associ\xE9e \xE0 un regroupement de champs est-elle pertinente ?",
96
+ "11.8": "Dans chaque formulaire, les items de m\xEAme nature d'une liste de choix sont-ils regroup\xE9s de mani\xE8re pertinente ?",
97
+ "11.9": "Dans chaque formulaire, l'intitul\xE9 de chaque bouton est-il pertinent (hors cas particuliers) ?",
98
+ "11.10": "Dans chaque formulaire, le contr\xF4le de saisie est-il utilis\xE9 de mani\xE8re pertinente ?",
99
+ "11.11": "Dans chaque formulaire, le contr\xF4le de saisie est-il accompagn\xE9, si n\xE9cessaire, de suggestions facilitant la correction des erreurs de saisie ?",
100
+ "11.12": "Pour chaque formulaire qui modifie ou supprime des donn\xE9es, ou qui transmet des r\xE9ponses \xE0 un test ou \xE0 un examen, ou dont la validation a des cons\xE9quences financi\xE8res ou juridiques, les donn\xE9es saisies peuvent-elles \xEAtre modifi\xE9es, mises \xE0 jour ou r\xE9cup\xE9r\xE9es par l'utilisateur ?",
101
+ "11.13": "La finalit\xE9 d'un champ de saisie peut-elle \xEAtre d\xE9duite pour faciliter le remplissage automatique des champs avec les donn\xE9es de l'utilisateur ?",
102
+ "12.1": "Chaque ensemble de pages dispose-t-il de deux syst\xE8mes de navigation au moins ?",
103
+ "12.2": "Dans chaque ensemble de pages, le menu et les barres de navigation sont-ils toujours \xE0 la m\xEAme place ?",
104
+ "12.3": "La page \xAB plan du site \xBB est-elle pertinente ?",
105
+ "12.4": "Dans chaque ensemble de pages, la page \xAB plan du site \xBB est-elle accessible \xE0 partir de n'importe quelle page ?",
106
+ "12.5": "Dans chaque ensemble de pages, le moteur de recherche est-il atteignable de n'importe quelle page ?",
107
+ "12.6": "Les zones de regroupement de contenus pr\xE9sentes dans plusieurs pages web sont-elles identifiables par l'utilisateur ?",
108
+ "12.7": "Dans chaque page web, un lien d'\xE9vitement ou d'acc\xE8s rapide \xE0 la zone de contenu principale est-il pr\xE9sent ?",
109
+ "12.8": "Dans chaque page web, l'ordre de tabulation est-il coh\xE9rent ?",
110
+ "12.9": "Dans chaque page web, la navigation ne doit pas contenir de pi\xE8ge au clavier.",
111
+ "12.10": "Dans chaque page web, les raccourcis clavier n'utilisant qu'une seule touche (lettre majuscule ou minuscule, ponctuation, chiffre ou symbole) sont-ils contr\xF4lables par l'utilisateur ?",
112
+ "12.11": "Dans chaque page web, les contenus additionnels apparaissant au survol, \xE0 la prise de focus ou \xE0 l'activation d'un composant d'interface sont-ils si n\xE9cessaire atteignables au clavier ?",
113
+ "13.1": "Pour chaque page web, l'utilisateur a-t-il le contr\xF4le de chaque limite de temps modifiant le contenu ?",
114
+ "13.2": "Dans chaque page web, l'ouverture d'une nouvelle fen\xEAtre ne doit pas \xEAtre d\xE9clench\xE9e sans que l'utilisateur en soit averti.",
115
+ "13.3": "Dans chaque page web, chaque document bureautique en t\xE9l\xE9chargement poss\xE8de-t-il, si n\xE9cessaire, une version accessible ?",
116
+ "13.4": "Pour chaque document bureautique ayant une version accessible, cette version offre-t-elle la m\xEAme information ?",
117
+ "13.5": "Dans chaque page web, chaque contenu cryptique (art ASCII, \xE9motic\xF4ne, syntaxe cryptique) a-t-il une alternative ?",
118
+ "13.6": "Dans chaque page web, pour chaque contenu cryptique (art ASCII, \xE9motic\xF4ne, syntaxe cryptique) ayant une alternative, cette alternative est-elle correctement restitu\xE9e par les technologies d'assistance ?",
119
+ "13.7": "Dans chaque page web, les changements brusques de luminosit\xE9 ou les effets de flash sont-ils correctement utilis\xE9s ?",
120
+ "13.8": "Dans chaque page web, chaque contenu en mouvement ou clignotant est-il contr\xF4lable par l'utilisateur ?",
121
+ "13.9": "Dans chaque page web, le contenu propos\xE9 est-il consultable quelle que soit l'orientation de l'affichage ?",
122
+ "13.10": "Dans chaque page web, les fonctionnalit\xE9s utilisables ou disponibles au moyen d'un geste complexe peuvent-elles \xEAtre \xE9galement disponibles au moyen d'un geste simple ?",
123
+ "13.11": "Dans chaque page web, les actions d\xE9clench\xE9es au moyen d'un dispositif de pointage sur un point unique de l'\xE9cran peuvent-elles faire l'objet d'une annulation ?",
124
+ "13.12": "Dans chaque page web, les fonctionnalit\xE9s qui impliquent un mouvement de l'appareil ou vers l'appareil peuvent-elles \xEAtre satisfaites de mani\xE8re alternative ?"
125
+ },
126
+ tests: {
127
+ "1.1.1": `Chaque <img> ou \xE9l\xE9ment avec role="img" porteur d'information a une alternative textuelle`,
128
+ "1.1.2": "Chaque zone <area> porteuse d'information a une alternative textuelle",
129
+ "1.1.3": 'Chaque <input type="image"> a une alternative textuelle',
130
+ "1.1.5": `Chaque <svg role="img"> porteur d'information a un nom accessible`,
131
+ "2.1.1": "Chaque <iframe> poss\xE8de un attribut title",
132
+ "2.2.1": "Le title de chaque <iframe> est non vide et pertinent",
133
+ "5.4.1": "Le titre de chaque tableau de donn\xE9es est associ\xE9 via <caption> ou aria-labelledby",
134
+ "5.6.1": "Chaque en-t\xEAte de colonne utilise <th> ou un r\xF4le appropri\xE9",
135
+ "6.2.1": "Chaque lien a un intitul\xE9 accessible non vide",
136
+ "8.1.1": "Chaque page a une d\xE9claration DOCTYPE",
137
+ "8.2.1": "Aucun attribut id en doublon sur la m\xEAme page",
138
+ "8.3.1": "L'\xE9l\xE9ment <html> poss\xE8de un attribut lang",
139
+ "8.4.1": "La valeur de l'attribut lang est un code de langue BCP 47 valide",
140
+ "8.5.1": "Chaque page poss\xE8de un \xE9l\xE9ment <title>",
141
+ "8.6.1": "Le <title> de chaque page est non vide",
142
+ "8.9.1": "Les balises de pr\xE9sentation (b, i, u, blink, marquee) ne sont pas utilis\xE9es \xE0 des fins purement stylistiques",
143
+ "9.1.1": "Des titres sont pr\xE9sents sur la page",
144
+ "9.1.2": "Les niveaux de titre ne sautent pas de niveau",
145
+ "9.1.3": "Un seul <h1> est pr\xE9sent sur la page",
146
+ "9.3.1": "Les <ul>, <ol> et <dl> sont correctement structur\xE9s",
147
+ "11.1.1": "Chaque <input> a un <label> ou une \xE9tiquette ARIA associ\xE9e",
148
+ "11.1.2": "Chaque <textarea> a un <label> ou une \xE9tiquette ARIA associ\xE9e",
149
+ "11.1.3": "Chaque <select> a un <label> ou une \xE9tiquette ARIA associ\xE9e",
150
+ "11.6.1": "Chaque <fieldset> a un <legend>",
151
+ "11.6.2": 'Chaque groupe avec role="group" ou role="radiogroup" a aria-labelledby ou aria-label',
152
+ "11.9.1": "Chaque <button> a un nom accessible non vide",
153
+ "11.13.1": "Les champs de formulaire collectant des donn\xE9es personnelles ont un attribut autocomplete appropri\xE9",
154
+ "12.6.1": "Les zones de contenu utilisent <header>, <nav>, <main>, <footer> ou des \xE9quivalents ARIA",
155
+ "12.7.1": "Un lien d'\xE9vitement vers le contenu principal est pr\xE9sent et fonctionnel",
156
+ "12.9.1": "La navigation au clavier ne cr\xE9e pas de pi\xE8ge au clavier"
157
+ },
158
+ issues: {
159
+ "img.missing-alt": "L'image est d\xE9pourvue d'alternative textuelle (attribut alt manquant)",
160
+ "img.missing-alt-on-role-img": `L'\xE9l\xE9ment avec role="img" est d\xE9pourvu de nom accessible (aria-label ou aria-labelledby)`,
161
+ "img.empty-alt-missing": "L'image porteuse d'information n'a pas d'alternative textuelle",
162
+ "img.input-image-missing-alt": `<input type="image"> est d\xE9pourvu d'alternative textuelle (attribut alt manquant)`,
163
+ "img.svg-missing-accessible-name": '<svg role="img"> est d\xE9pourvu de nom accessible',
164
+ "img.decorative-has-alt": `L'image de d\xE9coration devrait avoir alt="" et aucune autre alternative textuelle`,
165
+ "img.decorative-svg-not-hidden": 'Le <svg> d\xE9coratif doit avoir aria-hidden="true"',
166
+ "img.figcaption-not-in-figure": "<figcaption> doit \xEAtre un enfant direct de <figure>",
167
+ "img.figure-missing-img": "<figure> contenant un <figcaption> devrait aussi contenir une image",
168
+ "frame.missing-title": "<iframe> est d\xE9pourvu d'attribut title",
169
+ "frame.empty-title": "<iframe> a un attribut title vide",
170
+ "table.missing-caption": "Le tableau de donn\xE9es est d\xE9pourvu de <caption> ou de nom accessible",
171
+ "table.th-missing-scope": "<th> est d\xE9pourvu d'attribut scope",
172
+ "table.layout-has-th": 'Le tableau de mise en forme (role="presentation") contient un \xE9l\xE9ment <th>',
173
+ "table.layout-has-caption": 'Le tableau de mise en forme (role="presentation") contient un \xE9l\xE9ment <caption>',
174
+ "link.missing-label": "Le lien n'a pas de nom accessible (pas de contenu texte, aria-label, ni aria-labelledby)",
175
+ "link.empty-label": "Le lien a un nom accessible vide",
176
+ "html.missing-lang": "L'\xE9l\xE9ment <html> est d\xE9pourvu d'attribut lang",
177
+ "html.empty-lang": "L'\xE9l\xE9ment <html> a un attribut lang vide",
178
+ "html.invalid-lang": "Code de langue invalide sur l'\xE9l\xE9ment <html> : {lang}",
179
+ "html.missing-title": "La page est d\xE9pourvue d'\xE9l\xE9ment <title>",
180
+ "html.empty-title": "Le <title> de la page est vide",
181
+ "html.presentational-tag": "<{tag}> utilis\xE9 \xE0 des fins purement pr\xE9sentationnelles",
182
+ "html.duplicate-id": 'id="{id}" en doublon sur la page',
183
+ "heading.skipped-level": "Saut de niveau de titre : <h{from}> suivi de <h{to}>",
184
+ "heading.multiple-h1": "Plusieurs \xE9l\xE9ments <h1> trouv\xE9s sur la m\xEAme page",
185
+ "heading.no-headings": "Aucun titre trouv\xE9 sur la page",
186
+ "list.invalid-child": "<{parent}> contient un enfant direct invalide <{child}> (attendu : <li>)",
187
+ "list.item-outside-list": "<li> n'est pas un enfant de <ul> ou <ol>",
188
+ "form.missing-label": "<{tag}> est d\xE9pourvu d'\xE9tiquette accessible (pas de <label>, aria-label ni aria-labelledby)",
189
+ "form.fieldset-missing-legend": "<fieldset> est d\xE9pourvu d'\xE9l\xE9ment <legend>",
190
+ "form.group-missing-label": `L'\xE9l\xE9ment avec role="{role}" est d\xE9pourvu de nom accessible`,
191
+ "form.button-missing-label": "<button> est d\xE9pourvu de nom accessible",
192
+ "form.submit-empty-value": `<input type="{type}"> est d\xE9pourvu d'attribut value`,
193
+ "form.missing-autocomplete": "Le champ collectant des donn\xE9es \xAB {purpose} \xBB est d\xE9pourvu d'attribut autocomplete",
194
+ "a11y.color-contrast": "Contraste de couleur insuffisant : {ratio} (requis : {required})",
195
+ "a11y.focus-not-visible": "L'\xE9l\xE9ment n'a pas d'indicateur de focus visible",
196
+ "a11y.keyboard-trap": "Le focus clavier est pi\xE9g\xE9 \xE0 l'int\xE9rieur de cet \xE9l\xE9ment",
197
+ "a11y.missing-skip-link": "Aucun lien d'\xE9vitement de navigation trouv\xE9",
198
+ "a11y.missing-landmark": 'La page est d\xE9pourvue de zone de contenu principale (<main> ou role="main")',
199
+ "a11y.status-message-missing-role": 'Le conteneur de message de statut est d\xE9pourvu de aria-live ou role="status"'
200
+ },
201
+ remediation: {
202
+ "img.missing-alt": `Ajouter alt="Description de l'image" ou alt="" si l'image est d\xE9corative`,
203
+ "img.missing-alt-on-role-img": 'Ajouter aria-label="Description" ou aria-labelledby pointant vers un \xE9l\xE9ment texte visible',
204
+ "img.input-image-missing-alt": `Ajouter alt="Description de l'action du bouton" pour d\xE9crire la fonction du bouton`,
205
+ "img.svg-missing-accessible-name": "Ajouter <title> \xE0 l'int\xE9rieur du SVG ou aria-label sur l'\xE9l\xE9ment",
206
+ "img.decorative-has-alt": 'D\xE9finir alt="" et supprimer les attributs title, aria-label et aria-labelledby',
207
+ "img.decorative-svg-not-hidden": `Ajouter aria-hidden="true" sur l'\xE9l\xE9ment <svg>`,
208
+ "frame.missing-title": 'Ajouter un attribut title : <iframe title="Description du cadre">',
209
+ "frame.empty-title": "Fournir un titre significatif et non vide d\xE9crivant le contenu du cadre",
210
+ "table.missing-caption": "Ajouter <caption>Titre du tableau</caption> comme premier enfant du <table>",
211
+ "table.th-missing-scope": 'Ajouter scope="col" pour les en-t\xEAtes de colonne ou scope="row" pour les en-t\xEAtes de ligne',
212
+ "table.layout-has-th": 'Remplacer <th> par <td> dans les tableaux de mise en forme, ou supprimer role="presentation"',
213
+ "link.missing-label": "Ajouter du contenu texte visible, un attribut aria-label ou utiliser aria-labelledby",
214
+ "html.missing-lang": '<html lang="fr"> (ou le code de langue de votre page)',
215
+ "html.invalid-lang": "Utiliser un code de langue BCP 47 valide (ex : fr, en, fr-FR, en-US)",
216
+ "html.missing-title": "Ajouter <title>Titre de la page \u2014 Nom du site</title> dans le <head>",
217
+ "html.empty-title": "Fournir un titre de page descriptif",
218
+ "html.presentational-tag": "Utiliser CSS pour la mise en forme plut\xF4t que des \xE9l\xE9ments HTML pr\xE9sentationnels",
219
+ "html.duplicate-id": "S'assurer que chaque attribut id est unique dans la page",
220
+ "heading.skipped-level": "Maintenir une hi\xE9rarchie de titres logique sans sauter de niveaux",
221
+ "heading.multiple-h1": "N'utiliser qu'un seul <h1> par page pour identifier le sujet principal",
222
+ "heading.no-headings": "Ajouter des titres pour structurer le contenu de la page",
223
+ "list.invalid-child": "N'utiliser que des <li> comme enfants directs de <ul> et <ol>",
224
+ "form.missing-label": 'Utiliser <label for="idDuChamp"> ou ajouter aria-label / aria-labelledby au champ',
225
+ "form.fieldset-missing-legend": "Ajouter <legend>Titre du groupe</legend> comme premier enfant du <fieldset>",
226
+ "form.button-missing-label": "Ajouter du contenu texte ou un aria-label au bouton",
227
+ "form.missing-autocomplete": 'Ajouter autocomplete="{purpose}" pour aider les utilisateurs \xE0 saisir leurs donn\xE9es personnelles',
228
+ "a11y.color-contrast": "Ajuster la couleur du texte ou de l'arri\xE8re-plan pour atteindre un ratio de contraste minimum de 4,5:1 (3:1 pour le grand texte)",
229
+ "a11y.focus-not-visible": "S'assurer que les styles :focus ne sont pas supprim\xE9s (outline: none est interdit sans indicateur personnalis\xE9)",
230
+ "a11y.missing-skip-link": 'Ajouter <a href="#contenu-principal" class="sr-only focus:not-sr-only">Aller au contenu</a>',
231
+ "a11y.missing-landmark": 'Encadrer le contenu principal dans un \xE9l\xE9ment <main> ou ajouter role="main"'
232
+ },
233
+ automationLevel: {
234
+ full: "Enti\xE8rement automatis\xE9",
235
+ partial: "Partiellement automatis\xE9",
236
+ manual: "N\xE9cessite une v\xE9rification manuelle"
237
+ },
238
+ criterionStatus: {
239
+ validated: "Conforme",
240
+ invalidated: "Non conforme",
241
+ "not-applicable": "Non applicable",
242
+ "needs-review": "\xC0 v\xE9rifier manuellement"
243
+ },
244
+ severity: {
245
+ error: "Erreur",
246
+ warning: "Avertissement",
247
+ notice: "Information"
248
+ },
249
+ report: {
250
+ title: "Rapport d'accessibilit\xE9 RGAA v4.1.2",
251
+ generated: "G\xE9n\xE9r\xE9 le",
252
+ project: "Projet",
253
+ pages: "Pages analys\xE9es",
254
+ summary: "R\xE9sum\xE9",
255
+ totalCriteria: "Total crit\xE8res",
256
+ applicable: "Applicables",
257
+ validated: "Conformes",
258
+ invalidated: "Non conformes",
259
+ notApplicable: "Non applicables",
260
+ needsReview: "\xC0 v\xE9rifier",
261
+ complianceRate: "Taux de conformit\xE9",
262
+ themes: "Th\xE9matiques",
263
+ issues: "Probl\xE8mes",
264
+ noIssues: "Aucun probl\xE8me trouv\xE9",
265
+ file: "Fichier",
266
+ line: "Ligne",
267
+ element: "\xC9l\xE9ment",
268
+ page: "Page",
269
+ criterion: "Crit\xE8re",
270
+ test: "Test",
271
+ severity: "Gravit\xE9",
272
+ remediation: "Comment corriger",
273
+ automationDisclaimer: "Note : Ce rapport couvre uniquement les crit\xE8res v\xE9rifiables automatiquement. Les crit\xE8res marqu\xE9s \xAB \xC0 v\xE9rifier \xBB n\xE9cessitent une inspection manuelle. Le taux de conformit\xE9 refl\xE8te uniquement les v\xE9rifications automatis\xE9es."
274
+ },
275
+ cli: {
276
+ analyzing: "Analyse de la conformit\xE9 RGAA v4.1.2\u2026",
277
+ staticPhase: "Analyse statique (fichiers source)",
278
+ runtimePhase: "Analyse dynamique (pages rendues)",
279
+ reportWritten: "Rapport \xE9crit dans {path}",
280
+ done: "Analyse termin\xE9e",
281
+ failed: "\xC9chec de l'analyse",
282
+ thresholdExceeded: "Le taux de conformit\xE9 {rate}% est inf\xE9rieur au seuil requis de {threshold}%",
283
+ noConfig: "Aucun fichier de configuration trouv\xE9. Ex\xE9cutez `eqo init` pour en cr\xE9er un.",
284
+ configCreated: "Fichier de configuration cr\xE9\xE9 dans {path}"
285
+ }
286
+ };
287
+ var fr_FR_default = frFR;
288
+ export {
289
+ fr_FR_default as default
290
+ };
291
+ //# sourceMappingURL=fr-FR-NZKLCQE5.js.map