govuk_publishing_components 35.15.1 → 35.15.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-core.js +13 -1
- data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-event-tracker.js +1 -1
- data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-link-tracker.js +11 -9
- data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-page-views.js +25 -4
- data/app/assets/javascripts/govuk_publishing_components/vendor/lux/lux-reporter.js +6 -8
- data/app/assets/stylesheets/govuk_publishing_components/components/_cards.scss +2 -5
- data/app/views/govuk_publishing_components/components/_intervention.html.erb +13 -3
- data/app/views/govuk_publishing_components/components/docs/intervention.yml +14 -2
- data/config/locales/en.yml +2 -0
- data/lib/govuk_publishing_components/version.rb +1 -1
- data/node_modules/axe-core/axe.d.ts +72 -9
- data/node_modules/axe-core/axe.js +4509 -4081
- data/node_modules/axe-core/axe.min.js +3 -3
- data/node_modules/axe-core/locales/_template.json +42 -13
- data/node_modules/axe-core/locales/fr.json +14 -6
- data/node_modules/axe-core/locales/ja.json +270 -232
- data/node_modules/axe-core/locales/pl.json +280 -138
- data/node_modules/axe-core/package.json +4 -2
- data/node_modules/axe-core/sri-history.json +4 -0
- metadata +2 -2
@@ -10,24 +10,36 @@
|
|
10
10
|
"help": "Active <area> elements must have alternate text"
|
11
11
|
},
|
12
12
|
"aria-allowed-attr": {
|
13
|
-
"description": "Ensures
|
14
|
-
"help": "Elements must only use
|
13
|
+
"description": "Ensures an element's role supports its ARIA attributes",
|
14
|
+
"help": "Elements must only use supported ARIA attributes"
|
15
15
|
},
|
16
16
|
"aria-allowed-role": {
|
17
17
|
"description": "Ensures role attribute has an appropriate value for the element",
|
18
18
|
"help": "ARIA role should be appropriate for the element"
|
19
19
|
},
|
20
|
+
"aria-braille-equivalent": {
|
21
|
+
"description": "Ensure aria-braillelabel and aria-brailleroledescription have a non-braille equivalent",
|
22
|
+
"help": "aria-braille attributes must have a non-braille equivalent"
|
23
|
+
},
|
20
24
|
"aria-command-name": {
|
21
25
|
"description": "Ensures every ARIA button, link and menuitem has an accessible name",
|
22
26
|
"help": "ARIA commands must have an accessible name"
|
23
27
|
},
|
28
|
+
"aria-conditional-attr": {
|
29
|
+
"description": "Ensures ARIA attributes are used as described in the specification of the element's role",
|
30
|
+
"help": "ARIA attributes must be used as specified for the element's role"
|
31
|
+
},
|
32
|
+
"aria-deprecated-role": {
|
33
|
+
"description": "Ensures elements do not use deprecated roles",
|
34
|
+
"help": "Deprecated ARIA roles must not be used"
|
35
|
+
},
|
24
36
|
"aria-dialog-name": {
|
25
37
|
"description": "Ensures every ARIA dialog and alertdialog node has an accessible name",
|
26
38
|
"help": "ARIA dialog and alertdialog nodes should have an accessible name"
|
27
39
|
},
|
28
40
|
"aria-hidden-body": {
|
29
|
-
"description": "Ensures aria-hidden
|
30
|
-
"help": "aria-hidden
|
41
|
+
"description": "Ensures aria-hidden=\"true\" is not present on the document body.",
|
42
|
+
"help": "aria-hidden=\"true\" must not be present on the document body"
|
31
43
|
},
|
32
44
|
"aria-hidden-focus": {
|
33
45
|
"description": "Ensures aria-hidden elements are not focusable nor contain focusable elements",
|
@@ -45,6 +57,10 @@
|
|
45
57
|
"description": "Ensures every ARIA progressbar node has an accessible name",
|
46
58
|
"help": "ARIA progressbar nodes must have an accessible name"
|
47
59
|
},
|
60
|
+
"aria-prohibited-attr": {
|
61
|
+
"description": "Ensures ARIA attributes are not prohibited for an element's role",
|
62
|
+
"help": "Elements must only use permitted ARIA attributes"
|
63
|
+
},
|
48
64
|
"aria-required-attr": {
|
49
65
|
"description": "Ensures elements with ARIA roles have all required ARIA attributes",
|
50
66
|
"help": "Required ARIA attributes must be provided"
|
@@ -66,7 +82,7 @@
|
|
66
82
|
"help": "ARIA roles used must conform to valid values"
|
67
83
|
},
|
68
84
|
"aria-text": {
|
69
|
-
"description": "Ensures
|
85
|
+
"description": "Ensures role=\"text\" is used on elements with no focusable descendants",
|
70
86
|
"help": "\"role=text\" should have no focusable descendants"
|
71
87
|
},
|
72
88
|
"aria-toggle-field-name": {
|
@@ -334,8 +350,8 @@
|
|
334
350
|
"help": "All page content should be contained by landmarks"
|
335
351
|
},
|
336
352
|
"role-img-alt": {
|
337
|
-
"description": "Ensures [role
|
338
|
-
"help": "[role
|
353
|
+
"description": "Ensures [role=\"img\"] elements have alternate text",
|
354
|
+
"help": "[role=\"img\"] elements must have an alternative text"
|
339
355
|
},
|
340
356
|
"scope-attr-valid": {
|
341
357
|
"description": "Ensures the scope attribute is used correctly on tables",
|
@@ -529,6 +545,18 @@
|
|
529
545
|
"plural": "Invalid ARIA attribute names: ${data.values}"
|
530
546
|
}
|
531
547
|
},
|
548
|
+
"braille-label-equivalent": {
|
549
|
+
"pass": "aria-braillelabel is used on an element with accessible text",
|
550
|
+
"fail": "aria-braillelabel is used on an element with no accessible text",
|
551
|
+
"incomplete": "Unable to compute accessible text"
|
552
|
+
},
|
553
|
+
"braille-roledescription-equivalent": {
|
554
|
+
"pass": "aria-brailleroledescription is used on an element with aria-roledescription",
|
555
|
+
"fail": {
|
556
|
+
"noRoleDescription": "aria-brailleroledescription is used on an element with no aria-roledescription",
|
557
|
+
"emptyRoleDescription": "aria-brailleroledescription is used on an element with an empty aria-roledescription"
|
558
|
+
}
|
559
|
+
},
|
532
560
|
"deprecatedrole": {
|
533
561
|
"pass": "ARIA role is not deprecated",
|
534
562
|
"fail": "The role used is deprecated: ${data}"
|
@@ -611,6 +639,7 @@
|
|
611
639
|
"bgGradient": "Element's background color could not be determined due to a background gradient",
|
612
640
|
"imgNode": "Element's background color could not be determined because element contains an image node",
|
613
641
|
"bgOverlap": "Element's background color could not be determined because it is overlapped by another element",
|
642
|
+
"complexTextShadows": "Element's contrast could not be determined because it uses complex text shadows",
|
614
643
|
"fgAlpha": "Element's foreground color could not be determined because of alpha transparency",
|
615
644
|
"elmPartiallyObscured": "Element's background color could not be determined because it's partially obscured by another element",
|
616
645
|
"elmPartiallyObscuring": "Element's background color could not be determined because it partially overlaps other elements",
|
@@ -681,7 +710,7 @@
|
|
681
710
|
"focusable-not-tabbable": {
|
682
711
|
"pass": "No focusable elements contained within element",
|
683
712
|
"incomplete": "Check if the focusable elements immediately move the focus indicator",
|
684
|
-
"fail": "Focusable content should have tabindex
|
713
|
+
"fail": "Focusable content should have tabindex=\"-1\" or be removed from the DOM"
|
685
714
|
},
|
686
715
|
"frame-focusable-content": {
|
687
716
|
"pass": "Element does not have focusable descendants",
|
@@ -696,7 +725,7 @@
|
|
696
725
|
"pass": "Element does not have focusable descendants",
|
697
726
|
"fail": {
|
698
727
|
"default": "Element has focusable descendants",
|
699
|
-
"notHidden": "Using a negative tabindex on an element inside an interactive control does not prevent assistive technologies from focusing the element (even with
|
728
|
+
"notHidden": "Using a negative tabindex on an element inside an interactive control does not prevent assistive technologies from focusing the element (even with aria-hidden=\"true\")"
|
700
729
|
},
|
701
730
|
"incomplete": "Could not determine if element has descendants"
|
702
731
|
},
|
@@ -833,11 +862,11 @@
|
|
833
862
|
"fail": "${data} on <meta> tag disables zooming on mobile devices"
|
834
863
|
},
|
835
864
|
"target-offset": {
|
836
|
-
"pass": "Target has sufficient
|
837
|
-
"fail": "Target has insufficient
|
865
|
+
"pass": "Target has sufficient space from its closest neighbors (${data.closestOffset}px should be at least ${data.minOffset}px)",
|
866
|
+
"fail": "Target has insufficient space to its closest neighbors. Safe clickable space has a diameter of {$data.closestOffset}px instead of at least ${data.minOffset}px)",
|
838
867
|
"incomplete": {
|
839
|
-
"default": "Element with negative tabindex has insufficient
|
840
|
-
"nonTabbableNeighbor": "Target has insufficient
|
868
|
+
"default": "Element with negative tabindex has insufficient space to its closest neighbors. Safe clickable space has a diameter of {$data.closestOffset}px instead of at least ${data.minOffset}px). Is this a target?",
|
869
|
+
"nonTabbableNeighbor": "Target has insufficient space to its closest neighbors. Safe clickable space has a diameter of {$data.closestOffset}px instead of at least ${data.minOffset}px). Is the neighbor a target?"
|
841
870
|
}
|
842
871
|
},
|
843
872
|
"target-size": {
|
@@ -113,14 +113,14 @@
|
|
113
113
|
"description": "Vérifier que chaque page dispose au minimum d’un mécanisme de contournement de la navigation pour accéder directement au contenu",
|
114
114
|
"help": "Chaque page doit fournir des moyens de contourner les contenus répétés"
|
115
115
|
},
|
116
|
-
"color-contrast": {
|
117
|
-
"description": "Vérifier que les contrastes entre le premier plan et l’arrière-plan rencontrent les seuils de contrastes exigés par les WCAG 2 AA",
|
118
|
-
"help": "Les éléments doivent avoir un contraste de couleurs suffisant"
|
119
|
-
},
|
120
116
|
"color-contrast-enhanced": {
|
121
117
|
"description": "Vérifier que les contrastes entre le premier plan et l’arrière-plan rencontrent les seuils de contrastes exigés par les WCAG 2 AAA",
|
122
118
|
"help": "Les éléments doivent avoir un contraste de couleurs suffisant"
|
123
119
|
},
|
120
|
+
"color-contrast": {
|
121
|
+
"description": "Vérifier que les contrastes entre le premier plan et l’arrière-plan rencontrent les seuils de contrastes exigés par les WCAG 2 AA",
|
122
|
+
"help": "Les éléments doivent avoir un contraste de couleurs suffisant"
|
123
|
+
},
|
124
124
|
"css-orientation-lock": {
|
125
125
|
"description": "Vérifier que les contenus ne sont pas limités à une orientation spécifique de l’écran, et que le contenu est utilisable sous toutes les orientations de l’écran",
|
126
126
|
"help": "Les CSS Media queries ne sont pas utilisées pour verrouiller l’orientation de l’écran"
|
@@ -289,9 +289,13 @@
|
|
289
289
|
"description": "Vérifier que l’élément <marquee> n’est pas utilisé",
|
290
290
|
"help": "L’élément <marquee> est déprécié et ne doit pas être utilisé"
|
291
291
|
},
|
292
|
+
"meta-refresh-no-exceptions": {
|
293
|
+
"description": "Vérifier que <meta http-equiv=\"refresh\"> n’est pas utilisé pour une actualisation différée",
|
294
|
+
"help": "L'actualisation différée ne doit pas être utilisée"
|
295
|
+
},
|
292
296
|
"meta-refresh": {
|
293
|
-
"description": "Vérifier que <meta http-equiv=\"refresh\"> n’est pas utilisé",
|
294
|
-
"help": "
|
297
|
+
"description": "Vérifier que <meta http-equiv=\"refresh\"> n’est pas utilisé pour une actualisation différée",
|
298
|
+
"help": "L'actualisation différée en dessous de 20 heures ne doit pas être utilisée"
|
295
299
|
},
|
296
300
|
"meta-viewport-large": {
|
297
301
|
"description": "Vérifier que <meta name=\"viewport\"> permet un agrandissement significatif",
|
@@ -369,6 +373,10 @@
|
|
369
373
|
"description": "Vérifier que les tableaux avec une légende utilisent l’élément <caption>",
|
370
374
|
"help": "Les données ou les cellules d’entête ne devraient pas être utilisées pour légender un tableau de données"
|
371
375
|
},
|
376
|
+
"target-size": {
|
377
|
+
"description": "Vérifier que la cible tactile a une taille et un espace suffisants",
|
378
|
+
"help": "Toutes les cibles tactiles doivent faire 24px de large, ou être suffisamment grandes"
|
379
|
+
},
|
372
380
|
"td-has-header": {
|
373
381
|
"description": "Vérifier que chaque cellule de données non vide dans un tableau de données a une ou plusieurs cellules d’entête",
|
374
382
|
"help": "Chaque élément td non vide dans un tableau plus grand que 3 × 3 doit avoir une cellule d’entête associée"
|