govuk_publishing_components 16.6.0 → 16.7.0
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/component_guide/accessibility-test.js +6 -12
- data/app/assets/javascripts/component_guide/vendor/bind-polyfill.js +8 -0
- data/app/assets/javascripts/govuk_publishing_components/lib/toggle.js +16 -0
- data/app/assets/stylesheets/govuk_publishing_components/components/_fieldset.scss +1 -27
- data/app/views/govuk_publishing_components/components/_fieldset.html.erb +2 -2
- data/app/views/govuk_publishing_components/components/_input.html.erb +2 -0
- data/app/views/govuk_publishing_components/components/docs/input.yml +7 -0
- data/lib/govuk_publishing_components/version.rb +1 -1
- data/node_modules/accessible-autocomplete/package.json +1 -1
- data/node_modules/axe-core/CHANGELOG.md +741 -0
- data/node_modules/axe-core/CONTRIBUTING.md +187 -0
- data/node_modules/axe-core/LICENSE +362 -0
- data/node_modules/axe-core/README.md +147 -0
- data/node_modules/axe-core/axe.d.ts +216 -0
- data/node_modules/axe-core/axe.js +15298 -0
- data/node_modules/axe-core/axe.min.js +12 -0
- data/node_modules/axe-core/bower.json +40 -0
- data/node_modules/axe-core/doc/API.md +798 -0
- data/node_modules/axe-core/doc/accessibility-supported.md +33 -0
- data/node_modules/axe-core/doc/act-rules-format.md +37 -0
- data/node_modules/axe-core/doc/aria-supported.md +23 -0
- data/node_modules/axe-core/doc/axelogo2018.png +0 -0
- data/node_modules/axe-core/doc/code-submission-guidelines.md +178 -0
- data/node_modules/axe-core/doc/developer-guide.md +500 -0
- data/node_modules/axe-core/doc/examples/chrome-debugging-protocol/README.md +13 -0
- data/node_modules/axe-core/doc/examples/chrome-debugging-protocol/axe-cdp.js +81 -0
- data/node_modules/axe-core/doc/examples/chrome-debugging-protocol/package.json +8 -0
- data/node_modules/axe-core/doc/examples/html-handlebars.md +164 -0
- data/node_modules/axe-core/doc/examples/jasmine/README.md +37 -0
- data/node_modules/axe-core/doc/examples/jasmine/package.json +20 -0
- data/node_modules/axe-core/doc/examples/jasmine/spec/a11y.js +36 -0
- data/node_modules/axe-core/doc/examples/jest_react/README.md +41 -0
- data/node_modules/axe-core/doc/examples/jest_react/link.js +7 -0
- data/node_modules/axe-core/doc/examples/jest_react/link.test.js +24 -0
- data/node_modules/axe-core/doc/examples/jest_react/package.json +28 -0
- data/node_modules/axe-core/doc/examples/jest_react/test-helpers.js +21 -0
- data/node_modules/axe-core/doc/examples/mocha/README.md +37 -0
- data/node_modules/axe-core/doc/examples/mocha/package.json +21 -0
- data/node_modules/axe-core/doc/examples/phantomjs/README.md +17 -0
- data/node_modules/axe-core/doc/examples/phantomjs/axe-phantom.js +51 -0
- data/node_modules/axe-core/doc/examples/phantomjs/package.json +19 -0
- data/node_modules/axe-core/doc/examples/puppeteer/README.md +12 -0
- data/node_modules/axe-core/doc/examples/puppeteer/axe-puppeteer.js +60 -0
- data/node_modules/axe-core/doc/examples/puppeteer/package.json +10 -0
- data/node_modules/axe-core/doc/examples/qunit/README.md +37 -0
- data/node_modules/axe-core/doc/examples/qunit/package.json +21 -0
- data/node_modules/axe-core/doc/plugins.md +123 -0
- data/node_modules/axe-core/doc/projects.md +44 -0
- data/node_modules/axe-core/doc/rule-descriptions.md +79 -0
- data/node_modules/axe-core/doc/rule-development.md +95 -0
- data/node_modules/axe-core/doc/rule-proposal.md +106 -0
- data/node_modules/axe-core/lib/checks/aria/abstractrole.js +1 -0
- data/node_modules/axe-core/lib/checks/aria/abstractrole.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/allowed-attr.js +39 -0
- data/node_modules/axe-core/lib/checks/aria/allowed-attr.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/aria-allowed-role.js +28 -0
- data/node_modules/axe-core/lib/checks/aria/aria-allowed-role.json +16 -0
- data/node_modules/axe-core/lib/checks/aria/aria-hidden-body.js +1 -0
- data/node_modules/axe-core/lib/checks/aria/aria-hidden-body.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/errormessage.js +33 -0
- data/node_modules/axe-core/lib/checks/aria/errormessage.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/has-widget-role.js +6 -0
- data/node_modules/axe-core/lib/checks/aria/has-widget-role.json +12 -0
- data/node_modules/axe-core/lib/checks/aria/implicit-role-fallback.js +6 -0
- data/node_modules/axe-core/lib/checks/aria/implicit-role-fallback.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/invalidrole.js +3 -0
- data/node_modules/axe-core/lib/checks/aria/invalidrole.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/required-attr.js +28 -0
- data/node_modules/axe-core/lib/checks/aria/required-attr.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/required-children.js +117 -0
- data/node_modules/axe-core/lib/checks/aria/required-children.json +15 -0
- data/node_modules/axe-core/lib/checks/aria/required-parent.js +87 -0
- data/node_modules/axe-core/lib/checks/aria/required-parent.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/unsupportedattr.js +39 -0
- data/node_modules/axe-core/lib/checks/aria/unsupportedattr.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/unsupportedrole.js +1 -0
- data/node_modules/axe-core/lib/checks/aria/unsupportedrole.json +11 -0
- data/node_modules/axe-core/lib/checks/aria/valid-attr-value.js +32 -0
- data/node_modules/axe-core/lib/checks/aria/valid-attr-value.json +12 -0
- data/node_modules/axe-core/lib/checks/aria/valid-attr.js +25 -0
- data/node_modules/axe-core/lib/checks/aria/valid-attr.json +12 -0
- data/node_modules/axe-core/lib/checks/aria/valid-scrollable-semantics.js +62 -0
- data/node_modules/axe-core/lib/checks/aria/valid-scrollable-semantics.json +12 -0
- data/node_modules/axe-core/lib/checks/color/color-contrast.js +70 -0
- data/node_modules/axe-core/lib/checks/color/color-contrast.json +24 -0
- data/node_modules/axe-core/lib/checks/color/link-in-text-block.js +85 -0
- data/node_modules/axe-core/lib/checks/color/link-in-text-block.json +19 -0
- data/node_modules/axe-core/lib/checks/forms/autocomplete-appropriate.js +67 -0
- data/node_modules/axe-core/lib/checks/forms/autocomplete-appropriate.json +11 -0
- data/node_modules/axe-core/lib/checks/forms/autocomplete-valid.js +2 -0
- data/node_modules/axe-core/lib/checks/forms/autocomplete-valid.json +11 -0
- data/node_modules/axe-core/lib/checks/forms/fieldset-after.js +25 -0
- data/node_modules/axe-core/lib/checks/forms/fieldset.js +109 -0
- data/node_modules/axe-core/lib/checks/forms/fieldset.json +12 -0
- data/node_modules/axe-core/lib/checks/forms/group-labelledby-after.js +16 -0
- data/node_modules/axe-core/lib/checks/forms/group-labelledby.js +66 -0
- data/node_modules/axe-core/lib/checks/forms/group-labelledby.json +12 -0
- data/node_modules/axe-core/lib/checks/keyboard/accesskeys-after.js +19 -0
- data/node_modules/axe-core/lib/checks/keyboard/accesskeys.js +5 -0
- data/node_modules/axe-core/lib/checks/keyboard/accesskeys.json +12 -0
- data/node_modules/axe-core/lib/checks/keyboard/focusable-disabled.js +25 -0
- data/node_modules/axe-core/lib/checks/keyboard/focusable-disabled.json +11 -0
- data/node_modules/axe-core/lib/checks/keyboard/focusable-no-name.js +6 -0
- data/node_modules/axe-core/lib/checks/keyboard/focusable-no-name.json +11 -0
- data/node_modules/axe-core/lib/checks/keyboard/focusable-not-tabbable.js +25 -0
- data/node_modules/axe-core/lib/checks/keyboard/focusable-not-tabbable.json +11 -0
- data/node_modules/axe-core/lib/checks/keyboard/landmark-is-top-level.js +18 -0
- data/node_modules/axe-core/lib/checks/keyboard/landmark-is-top-level.json +11 -0
- data/node_modules/axe-core/lib/checks/keyboard/page-has-elm-after.js +11 -0
- data/node_modules/axe-core/lib/checks/keyboard/page-has-elm.js +9 -0
- data/node_modules/axe-core/lib/checks/keyboard/page-has-heading-one.json +15 -0
- data/node_modules/axe-core/lib/checks/keyboard/page-has-main.json +15 -0
- data/node_modules/axe-core/lib/checks/keyboard/page-no-duplicate-banner.json +15 -0
- data/node_modules/axe-core/lib/checks/keyboard/page-no-duplicate-contentinfo.json +15 -0
- data/node_modules/axe-core/lib/checks/keyboard/page-no-duplicate-main.json +14 -0
- data/node_modules/axe-core/lib/checks/keyboard/page-no-duplicate.js +22 -0
- data/node_modules/axe-core/lib/checks/keyboard/tabindex.js +1 -0
- data/node_modules/axe-core/lib/checks/keyboard/tabindex.json +11 -0
- data/node_modules/axe-core/lib/checks/label/alt-space-value.js +2 -0
- data/node_modules/axe-core/lib/checks/label/alt-space-value.json +11 -0
- data/node_modules/axe-core/lib/checks/label/duplicate-img-label.js +19 -0
- data/node_modules/axe-core/lib/checks/label/duplicate-img-label.json +11 -0
- data/node_modules/axe-core/lib/checks/label/explicit.js +15 -0
- data/node_modules/axe-core/lib/checks/label/explicit.json +11 -0
- data/node_modules/axe-core/lib/checks/label/help-same-as-label.js +23 -0
- data/node_modules/axe-core/lib/checks/label/help-same-as-label.json +12 -0
- data/node_modules/axe-core/lib/checks/label/hidden-explicit-label.js +12 -0
- data/node_modules/axe-core/lib/checks/label/hidden-explicit-label.json +11 -0
- data/node_modules/axe-core/lib/checks/label/implicit.js +7 -0
- data/node_modules/axe-core/lib/checks/label/implicit.json +11 -0
- data/node_modules/axe-core/lib/checks/label/label-content-name-mismatch.js +49 -0
- data/node_modules/axe-core/lib/checks/label/label-content-name-mismatch.json +11 -0
- data/node_modules/axe-core/lib/checks/label/multiple-label.js +29 -0
- data/node_modules/axe-core/lib/checks/label/multiple-label.json +11 -0
- data/node_modules/axe-core/lib/checks/label/title-only.js +5 -0
- data/node_modules/axe-core/lib/checks/label/title-only.json +11 -0
- data/node_modules/axe-core/lib/checks/language/has-lang.js +5 -0
- data/node_modules/axe-core/lib/checks/language/has-lang.json +11 -0
- data/node_modules/axe-core/lib/checks/language/valid-lang.js +26 -0
- data/node_modules/axe-core/lib/checks/language/valid-lang.json +11 -0
- data/node_modules/axe-core/lib/checks/language/xml-lang-mismatch.js +5 -0
- data/node_modules/axe-core/lib/checks/language/xml-lang-mismatch.json +11 -0
- data/node_modules/axe-core/lib/checks/lists/dlitem.js +23 -0
- data/node_modules/axe-core/lib/checks/lists/dlitem.json +11 -0
- data/node_modules/axe-core/lib/checks/lists/listitem.js +18 -0
- data/node_modules/axe-core/lib/checks/lists/listitem.json +11 -0
- data/node_modules/axe-core/lib/checks/lists/only-dlitems.js +42 -0
- data/node_modules/axe-core/lib/checks/lists/only-dlitems.json +11 -0
- data/node_modules/axe-core/lib/checks/lists/only-listitems.js +68 -0
- data/node_modules/axe-core/lib/checks/lists/only-listitems.json +11 -0
- data/node_modules/axe-core/lib/checks/lists/structured-dlitems.js +22 -0
- data/node_modules/axe-core/lib/checks/lists/structured-dlitems.json +11 -0
- data/node_modules/axe-core/lib/checks/media/caption.js +8 -0
- data/node_modules/axe-core/lib/checks/media/caption.json +11 -0
- data/node_modules/axe-core/lib/checks/media/description.js +8 -0
- data/node_modules/axe-core/lib/checks/media/description.json +11 -0
- data/node_modules/axe-core/lib/checks/media/frame-tested.js +28 -0
- data/node_modules/axe-core/lib/checks/media/frame-tested.json +15 -0
- data/node_modules/axe-core/lib/checks/mobile/css-orientation-lock.js +132 -0
- data/node_modules/axe-core/lib/checks/mobile/css-orientation-lock.json +12 -0
- data/node_modules/axe-core/lib/checks/mobile/meta-viewport-large.json +15 -0
- data/node_modules/axe-core/lib/checks/mobile/meta-viewport-scale.js +38 -0
- data/node_modules/axe-core/lib/checks/mobile/meta-viewport.json +14 -0
- data/node_modules/axe-core/lib/checks/navigation/header-present.js +4 -0
- data/node_modules/axe-core/lib/checks/navigation/header-present.json +11 -0
- data/node_modules/axe-core/lib/checks/navigation/heading-order-after.js +14 -0
- data/node_modules/axe-core/lib/checks/navigation/heading-order.js +15 -0
- data/node_modules/axe-core/lib/checks/navigation/heading-order.json +12 -0
- data/node_modules/axe-core/lib/checks/navigation/internal-link-present.js +4 -0
- data/node_modules/axe-core/lib/checks/navigation/internal-link-present.json +11 -0
- data/node_modules/axe-core/lib/checks/navigation/landmark.js +3 -0
- data/node_modules/axe-core/lib/checks/navigation/landmark.json +11 -0
- data/node_modules/axe-core/lib/checks/navigation/meta-refresh.js +4 -0
- data/node_modules/axe-core/lib/checks/navigation/meta-refresh.json +11 -0
- data/node_modules/axe-core/lib/checks/navigation/p-as-heading.js +93 -0
- data/node_modules/axe-core/lib/checks/navigation/p-as-heading.json +30 -0
- data/node_modules/axe-core/lib/checks/navigation/region-after.js +1 -0
- data/node_modules/axe-core/lib/checks/navigation/region.js +85 -0
- data/node_modules/axe-core/lib/checks/navigation/region.json +12 -0
- data/node_modules/axe-core/lib/checks/navigation/skip-link.js +5 -0
- data/node_modules/axe-core/lib/checks/navigation/skip-link.json +12 -0
- data/node_modules/axe-core/lib/checks/navigation/unique-frame-title-after.js +9 -0
- data/node_modules/axe-core/lib/checks/navigation/unique-frame-title.js +6 -0
- data/node_modules/axe-core/lib/checks/navigation/unique-frame-title.json +12 -0
- data/node_modules/axe-core/lib/checks/parsing/duplicate-id-active.json +12 -0
- data/node_modules/axe-core/lib/checks/parsing/duplicate-id-after.js +8 -0
- data/node_modules/axe-core/lib/checks/parsing/duplicate-id-aria.json +12 -0
- data/node_modules/axe-core/lib/checks/parsing/duplicate-id.js +17 -0
- data/node_modules/axe-core/lib/checks/parsing/duplicate-id.json +12 -0
- data/node_modules/axe-core/lib/checks/shared/aria-label.js +2 -0
- data/node_modules/axe-core/lib/checks/shared/aria-label.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/aria-labelledby.js +2 -0
- data/node_modules/axe-core/lib/checks/shared/aria-labelledby.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/button-has-visible-text.js +12 -0
- data/node_modules/axe-core/lib/checks/shared/button-has-visible-text.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/doc-has-title.js +2 -0
- data/node_modules/axe-core/lib/checks/shared/doc-has-title.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/exists.js +1 -0
- data/node_modules/axe-core/lib/checks/shared/exists.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/has-alt.js +4 -0
- data/node_modules/axe-core/lib/checks/shared/has-alt.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/has-visible-text.js +1 -0
- data/node_modules/axe-core/lib/checks/shared/has-visible-text.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/is-on-screen.js +4 -0
- data/node_modules/axe-core/lib/checks/shared/is-on-screen.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/non-empty-alt.js +2 -0
- data/node_modules/axe-core/lib/checks/shared/non-empty-alt.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/non-empty-if-present.js +11 -0
- data/node_modules/axe-core/lib/checks/shared/non-empty-if-present.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/non-empty-title.js +2 -0
- data/node_modules/axe-core/lib/checks/shared/non-empty-title.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/non-empty-value.js +2 -0
- data/node_modules/axe-core/lib/checks/shared/non-empty-value.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/role-none.js +1 -0
- data/node_modules/axe-core/lib/checks/shared/role-none.json +11 -0
- data/node_modules/axe-core/lib/checks/shared/role-presentation.js +1 -0
- data/node_modules/axe-core/lib/checks/shared/role-presentation.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/caption-faked.js +10 -0
- data/node_modules/axe-core/lib/checks/tables/caption-faked.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/has-caption.js +1 -0
- data/node_modules/axe-core/lib/checks/tables/has-caption.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/has-summary.js +1 -0
- data/node_modules/axe-core/lib/checks/tables/has-summary.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/has-th.js +31 -0
- data/node_modules/axe-core/lib/checks/tables/has-th.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/headers-visible-text.js +30 -0
- data/node_modules/axe-core/lib/checks/tables/html5-scope.js +5 -0
- data/node_modules/axe-core/lib/checks/tables/html5-scope.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/same-caption-summary.js +7 -0
- data/node_modules/axe-core/lib/checks/tables/same-caption-summary.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/scope-value.js +5 -0
- data/node_modules/axe-core/lib/checks/tables/scope-value.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/td-has-header.js +29 -0
- data/node_modules/axe-core/lib/checks/tables/td-has-header.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/td-headers-attr.js +62 -0
- data/node_modules/axe-core/lib/checks/tables/td-headers-attr.json +11 -0
- data/node_modules/axe-core/lib/checks/tables/th-has-data-cells.js +76 -0
- data/node_modules/axe-core/lib/checks/tables/th-has-data-cells.json +12 -0
- data/node_modules/axe-core/lib/checks/tables/th-single-row-column.js +39 -0
- data/node_modules/axe-core/lib/checks/visibility/hidden-content.js +21 -0
- data/node_modules/axe-core/lib/checks/visibility/hidden-content.json +12 -0
- data/node_modules/axe-core/lib/commons/aria/arialabel-text.js +15 -0
- data/node_modules/axe-core/lib/commons/aria/arialabelledby-text.js +52 -0
- data/node_modules/axe-core/lib/commons/aria/attributes.js +45 -0
- data/node_modules/axe-core/lib/commons/aria/get-element-unallowed-roles.js +92 -0
- data/node_modules/axe-core/lib/commons/aria/get-owned-virtual.js +24 -0
- data/node_modules/axe-core/lib/commons/aria/get-role.js +44 -0
- data/node_modules/axe-core/lib/commons/aria/index.js +2417 -0
- data/node_modules/axe-core/lib/commons/aria/is-accessible-ref.js +55 -0
- data/node_modules/axe-core/lib/commons/aria/is-aria-role-allowed-on-element.js +41 -0
- data/node_modules/axe-core/lib/commons/aria/is-unsupported-role.js +14 -0
- data/node_modules/axe-core/lib/commons/aria/label-virtual.js +54 -0
- data/node_modules/axe-core/lib/commons/aria/named-from-contents.js +39 -0
- data/node_modules/axe-core/lib/commons/aria/roles.js +208 -0
- data/node_modules/axe-core/lib/commons/aria/validate-attr-value.js +63 -0
- data/node_modules/axe-core/lib/commons/color/contrast.js +172 -0
- data/node_modules/axe-core/lib/commons/color/element-is-distinct.js +88 -0
- data/node_modules/axe-core/lib/commons/color/get-background-color.js +411 -0
- data/node_modules/axe-core/lib/commons/color/get-foreground-color.js +32 -0
- data/node_modules/axe-core/lib/commons/color/incomplete-data.js +50 -0
- data/node_modules/axe-core/lib/commons/color/index.js +8 -0
- data/node_modules/axe-core/lib/commons/dom/elements-below-floating.js +39 -0
- data/node_modules/axe-core/lib/commons/dom/find-elms-in-context.js +28 -0
- data/node_modules/axe-core/lib/commons/dom/find-up.js +63 -0
- data/node_modules/axe-core/lib/commons/dom/get-composed-parent.js +25 -0
- data/node_modules/axe-core/lib/commons/dom/get-element-by-reference.js +34 -0
- data/node_modules/axe-core/lib/commons/dom/get-element-coordinates.js +38 -0
- data/node_modules/axe-core/lib/commons/dom/get-root-node.js +12 -0
- data/node_modules/axe-core/lib/commons/dom/get-scroll-offset.js +34 -0
- data/node_modules/axe-core/lib/commons/dom/get-tabbable-elements.js +24 -0
- data/node_modules/axe-core/lib/commons/dom/get-viewport-size.js +37 -0
- data/node_modules/axe-core/lib/commons/dom/has-content-virtual.js +73 -0
- data/node_modules/axe-core/lib/commons/dom/idrefs.js +36 -0
- data/node_modules/axe-core/lib/commons/dom/index.js +9 -0
- data/node_modules/axe-core/lib/commons/dom/is-focusable.js +90 -0
- data/node_modules/axe-core/lib/commons/dom/is-hidden-with-css.js +60 -0
- data/node_modules/axe-core/lib/commons/dom/is-html5.js +17 -0
- data/node_modules/axe-core/lib/commons/dom/is-in-text-block.js +95 -0
- data/node_modules/axe-core/lib/commons/dom/is-node.js +13 -0
- data/node_modules/axe-core/lib/commons/dom/is-offscreen.js +62 -0
- data/node_modules/axe-core/lib/commons/dom/is-visible.js +77 -0
- data/node_modules/axe-core/lib/commons/dom/is-visual-content.js +50 -0
- data/node_modules/axe-core/lib/commons/dom/shadow-elements-from-point.js +41 -0
- data/node_modules/axe-core/lib/commons/dom/visually-contains.js +62 -0
- data/node_modules/axe-core/lib/commons/dom/visually-overlaps.js +47 -0
- data/node_modules/axe-core/lib/commons/index.js +11 -0
- data/node_modules/axe-core/lib/commons/intro.stub +1 -0
- data/node_modules/axe-core/lib/commons/matches/attributes.js +23 -0
- data/node_modules/axe-core/lib/commons/matches/condition.js +19 -0
- data/node_modules/axe-core/lib/commons/matches/from-definition.js +47 -0
- data/node_modules/axe-core/lib/commons/matches/from-function.js +38 -0
- data/node_modules/axe-core/lib/commons/matches/from-primative.js +30 -0
- data/node_modules/axe-core/lib/commons/matches/index.js +37 -0
- data/node_modules/axe-core/lib/commons/matches/node-name.js +34 -0
- data/node_modules/axe-core/lib/commons/matches/properties.js +25 -0
- data/node_modules/axe-core/lib/commons/outro.stub +2 -0
- data/node_modules/axe-core/lib/commons/table/get-all-cells.js +28 -0
- data/node_modules/axe-core/lib/commons/table/get-cell-position.js +28 -0
- data/node_modules/axe-core/lib/commons/table/get-headers.js +29 -0
- data/node_modules/axe-core/lib/commons/table/get-scope.js +54 -0
- data/node_modules/axe-core/lib/commons/table/index.js +9 -0
- data/node_modules/axe-core/lib/commons/table/is-column-header.js +13 -0
- data/node_modules/axe-core/lib/commons/table/is-data-cell.js +22 -0
- data/node_modules/axe-core/lib/commons/table/is-data-table.js +190 -0
- data/node_modules/axe-core/lib/commons/table/is-header.js +22 -0
- data/node_modules/axe-core/lib/commons/table/is-row-header.js +13 -0
- data/node_modules/axe-core/lib/commons/table/to-grid.js +38 -0
- data/node_modules/axe-core/lib/commons/table/traverse.js +78 -0
- data/node_modules/axe-core/lib/commons/text/accessible-text-virtual.js +152 -0
- data/node_modules/axe-core/lib/commons/text/form-control-value.js +204 -0
- data/node_modules/axe-core/lib/commons/text/index.js +8 -0
- data/node_modules/axe-core/lib/commons/text/is-human-interpretable.js +51 -0
- data/node_modules/axe-core/lib/commons/text/is-valid-autocomplete.js +118 -0
- data/node_modules/axe-core/lib/commons/text/label-text.js +58 -0
- data/node_modules/axe-core/lib/commons/text/label-virtual.js +53 -0
- data/node_modules/axe-core/lib/commons/text/native-element-types.js +100 -0
- data/node_modules/axe-core/lib/commons/text/native-text-alternative.js +50 -0
- data/node_modules/axe-core/lib/commons/text/native-text-methods.js +122 -0
- data/node_modules/axe-core/lib/commons/text/sanitize.js +18 -0
- data/node_modules/axe-core/lib/commons/text/subtree-text.js +89 -0
- data/node_modules/axe-core/lib/commons/text/title-text.js +33 -0
- data/node_modules/axe-core/lib/commons/text/unicode.js +117 -0
- data/node_modules/axe-core/lib/commons/text/unsupported.js +5 -0
- data/node_modules/axe-core/lib/commons/text/visible-virtual.js +46 -0
- data/node_modules/axe-core/lib/commons/utils/index.js +10 -0
- data/node_modules/axe-core/lib/core/base/audit.js +684 -0
- data/node_modules/axe-core/lib/core/base/check-result.js +33 -0
- data/node_modules/axe-core/lib/core/base/check.js +123 -0
- data/node_modules/axe-core/lib/core/base/context.js +273 -0
- data/node_modules/axe-core/lib/core/base/rule-result.js +39 -0
- data/node_modules/axe-core/lib/core/base/rule.js +383 -0
- data/node_modules/axe-core/lib/core/constants.js +68 -0
- data/node_modules/axe-core/lib/core/imports/index.js +26 -0
- data/node_modules/axe-core/lib/core/index.js +45 -0
- data/node_modules/axe-core/lib/core/log.js +12 -0
- data/node_modules/axe-core/lib/core/public/cleanup-plugins.js +53 -0
- data/node_modules/axe-core/lib/core/public/configure.js +57 -0
- data/node_modules/axe-core/lib/core/public/get-rules.js +29 -0
- data/node_modules/axe-core/lib/core/public/load.js +66 -0
- data/node_modules/axe-core/lib/core/public/plugins.js +47 -0
- data/node_modules/axe-core/lib/core/public/reporter.js +24 -0
- data/node_modules/axe-core/lib/core/public/reset.js +12 -0
- data/node_modules/axe-core/lib/core/public/run-rules.js +94 -0
- data/node_modules/axe-core/lib/core/public/run.js +148 -0
- data/node_modules/axe-core/lib/core/reporters/helpers/failure-summary.js +35 -0
- data/node_modules/axe-core/lib/core/reporters/helpers/get-environment-data.js +39 -0
- data/node_modules/axe-core/lib/core/reporters/helpers/incomplete-fallback-msg.js +11 -0
- data/node_modules/axe-core/lib/core/reporters/helpers/index.js +3 -0
- data/node_modules/axe-core/lib/core/reporters/helpers/process-aggregate.js +102 -0
- data/node_modules/axe-core/lib/core/reporters/na.js +20 -0
- data/node_modules/axe-core/lib/core/reporters/no-passes.js +18 -0
- data/node_modules/axe-core/lib/core/reporters/raw.js +8 -0
- data/node_modules/axe-core/lib/core/reporters/v1.js +26 -0
- data/node_modules/axe-core/lib/core/reporters/v2.js +22 -0
- data/node_modules/axe-core/lib/core/utils/aggregate.js +19 -0
- data/node_modules/axe-core/lib/core/utils/aggregateChecks.js +85 -0
- data/node_modules/axe-core/lib/core/utils/aggregateNodeResults.js +61 -0
- data/node_modules/axe-core/lib/core/utils/aggregateResult.js +37 -0
- data/node_modules/axe-core/lib/core/utils/are-styles-set.js +24 -0
- data/node_modules/axe-core/lib/core/utils/check-helper.js +38 -0
- data/node_modules/axe-core/lib/core/utils/clone.js +27 -0
- data/node_modules/axe-core/lib/core/utils/collect-results-from-frames.js +127 -0
- data/node_modules/axe-core/lib/core/utils/contains.js +30 -0
- data/node_modules/axe-core/lib/core/utils/css-parser.js +5 -0
- data/node_modules/axe-core/lib/core/utils/dq-element.js +97 -0
- data/node_modules/axe-core/lib/core/utils/element-matches.js +39 -0
- data/node_modules/axe-core/lib/core/utils/escape-selector.js +79 -0
- data/node_modules/axe-core/lib/core/utils/extend-meta-data.js +17 -0
- data/node_modules/axe-core/lib/core/utils/finalize-result.js +11 -0
- data/node_modules/axe-core/lib/core/utils/find-by.js +14 -0
- data/node_modules/axe-core/lib/core/utils/flattened-tree.js +170 -0
- data/node_modules/axe-core/lib/core/utils/get-all-checks.js +12 -0
- data/node_modules/axe-core/lib/core/utils/get-base-lang.js +16 -0
- data/node_modules/axe-core/lib/core/utils/get-check-option.js +40 -0
- data/node_modules/axe-core/lib/core/utils/get-friendly-uri-end.js +144 -0
- data/node_modules/axe-core/lib/core/utils/get-root-node.js +17 -0
- data/node_modules/axe-core/lib/core/utils/get-selector.js +406 -0
- data/node_modules/axe-core/lib/core/utils/get-xpath.js +84 -0
- data/node_modules/axe-core/lib/core/utils/index.js +10 -0
- data/node_modules/axe-core/lib/core/utils/inject-style.js +38 -0
- data/node_modules/axe-core/lib/core/utils/is-hidden.js +40 -0
- data/node_modules/axe-core/lib/core/utils/is-html-element.js +135 -0
- data/node_modules/axe-core/lib/core/utils/is-shadow-root.js +40 -0
- data/node_modules/axe-core/lib/core/utils/is-xhtml.js +14 -0
- data/node_modules/axe-core/lib/core/utils/merge-results.js +116 -0
- data/node_modules/axe-core/lib/core/utils/node-sorter.js +21 -0
- data/node_modules/axe-core/lib/core/utils/performance-timer.js +121 -0
- data/node_modules/axe-core/lib/core/utils/pollyfills.js +299 -0
- data/node_modules/axe-core/lib/core/utils/preload-cssom.js +456 -0
- data/node_modules/axe-core/lib/core/utils/preload.js +109 -0
- data/node_modules/axe-core/lib/core/utils/publish-metadata.js +93 -0
- data/node_modules/axe-core/lib/core/utils/qsa.js +322 -0
- data/node_modules/axe-core/lib/core/utils/queue.js +138 -0
- data/node_modules/axe-core/lib/core/utils/respondable.js +243 -0
- data/node_modules/axe-core/lib/core/utils/rule-should-run.js +83 -0
- data/node_modules/axe-core/lib/core/utils/scroll-state.js +70 -0
- data/node_modules/axe-core/lib/core/utils/select.js +146 -0
- data/node_modules/axe-core/lib/core/utils/to-array.js +21 -0
- data/node_modules/axe-core/lib/core/utils/token-list.js +15 -0
- data/node_modules/axe-core/lib/core/utils/uuid.js +242 -0
- data/node_modules/axe-core/lib/core/utils/valid-input-type.js +35 -0
- data/node_modules/axe-core/lib/core/utils/valid-langs.js +8152 -0
- data/node_modules/axe-core/lib/intro.stub +15 -0
- data/node_modules/axe-core/lib/misc/any-failure-summary.json +6 -0
- data/node_modules/axe-core/lib/misc/incomplete-fallback.json +3 -0
- data/node_modules/axe-core/lib/misc/none-failure-summary.json +6 -0
- data/node_modules/axe-core/lib/outro.stub +2 -0
- data/node_modules/axe-core/lib/rules/accesskeys.json +13 -0
- data/node_modules/axe-core/lib/rules/area-alt.json +19 -0
- data/node_modules/axe-core/lib/rules/aria-allowed-attr-matches.js +11 -0
- data/node_modules/axe-core/lib/rules/aria-allowed-attr.json +12 -0
- data/node_modules/axe-core/lib/rules/aria-allowed-role-matches.js +7 -0
- data/node_modules/axe-core/lib/rules/aria-allowed-role.json +14 -0
- data/node_modules/axe-core/lib/rules/aria-dpub-role-fallback-matches.js +10 -0
- data/node_modules/axe-core/lib/rules/aria-dpub-role-fallback.json +13 -0
- data/node_modules/axe-core/lib/rules/aria-has-attr-matches.js +11 -0
- data/node_modules/axe-core/lib/rules/aria-hidden-body.json +13 -0
- data/node_modules/axe-core/lib/rules/aria-hidden-focus-matches.js +18 -0
- data/node_modules/axe-core/lib/rules/aria-hidden-focus.json +14 -0
- data/node_modules/axe-core/lib/rules/aria-required-attr.json +12 -0
- data/node_modules/axe-core/lib/rules/aria-required-children.json +12 -0
- data/node_modules/axe-core/lib/rules/aria-required-parent.json +12 -0
- data/node_modules/axe-core/lib/rules/aria-roles.json +12 -0
- data/node_modules/axe-core/lib/rules/aria-valid-attr-value.json +12 -0
- data/node_modules/axe-core/lib/rules/aria-valid-attr.json +12 -0
- data/node_modules/axe-core/lib/rules/audio-caption.json +20 -0
- data/node_modules/axe-core/lib/rules/autocomplete-matches.js +45 -0
- data/node_modules/axe-core/lib/rules/autocomplete-valid.json +12 -0
- data/node_modules/axe-core/lib/rules/blink.json +19 -0
- data/node_modules/axe-core/lib/rules/button-name.json +27 -0
- data/node_modules/axe-core/lib/rules/bypass-matches.js +1 -0
- data/node_modules/axe-core/lib/rules/bypass.json +20 -0
- data/node_modules/axe-core/lib/rules/checkboxgroup.json +12 -0
- data/node_modules/axe-core/lib/rules/color-contrast-matches.js +120 -0
- data/node_modules/axe-core/lib/rules/color-contrast.json +16 -0
- data/node_modules/axe-core/lib/rules/css-orientation-lock.json +13 -0
- data/node_modules/axe-core/lib/rules/data-table-large-matches.js +11 -0
- data/node_modules/axe-core/lib/rules/data-table-matches.js +1 -0
- data/node_modules/axe-core/lib/rules/definition-list.json +13 -0
- data/node_modules/axe-core/lib/rules/dlitem.json +13 -0
- data/node_modules/axe-core/lib/rules/document-title.json +13 -0
- data/node_modules/axe-core/lib/rules/duplicate-id-active-matches.js +8 -0
- data/node_modules/axe-core/lib/rules/duplicate-id-active.json +14 -0
- data/node_modules/axe-core/lib/rules/duplicate-id-aria-matches.js +1 -0
- data/node_modules/axe-core/lib/rules/duplicate-id-aria.json +14 -0
- data/node_modules/axe-core/lib/rules/duplicate-id-misc-matches.js +11 -0
- data/node_modules/axe-core/lib/rules/duplicate-id.json +14 -0
- data/node_modules/axe-core/lib/rules/empty-heading.json +13 -0
- data/node_modules/axe-core/lib/rules/focus-order-semantics.json +13 -0
- data/node_modules/axe-core/lib/rules/form-field-multiple-labels.json +13 -0
- data/node_modules/axe-core/lib/rules/frame-tested.json +12 -0
- data/node_modules/axe-core/lib/rules/frame-title-has-text.js +2 -0
- data/node_modules/axe-core/lib/rules/frame-title-unique.json +13 -0
- data/node_modules/axe-core/lib/rules/frame-title.json +25 -0
- data/node_modules/axe-core/lib/rules/heading-matches.js +15 -0
- data/node_modules/axe-core/lib/rules/heading-order.json +13 -0
- data/node_modules/axe-core/lib/rules/hidden-content.json +13 -0
- data/node_modules/axe-core/lib/rules/html-has-lang.json +12 -0
- data/node_modules/axe-core/lib/rules/html-lang-valid.json +12 -0
- data/node_modules/axe-core/lib/rules/html-xml-lang-mismatch.json +13 -0
- data/node_modules/axe-core/lib/rules/image-alt.json +25 -0
- data/node_modules/axe-core/lib/rules/img-redundant-alt.json +12 -0
- data/node_modules/axe-core/lib/rules/input-image-alt.json +18 -0
- data/node_modules/axe-core/lib/rules/inserted-into-focus-order-matches.js +1 -0
- data/node_modules/axe-core/lib/rules/label-content-name-mismatch-matches.js +42 -0
- data/node_modules/axe-core/lib/rules/label-content-name-mismatch.json +12 -0
- data/node_modules/axe-core/lib/rules/label-matches.js +11 -0
- data/node_modules/axe-core/lib/rules/label-title-only.json +13 -0
- data/node_modules/axe-core/lib/rules/label.json +26 -0
- data/node_modules/axe-core/lib/rules/landmark-banner-is-top-level.json +13 -0
- data/node_modules/axe-core/lib/rules/landmark-complementary-is-top-level.json +12 -0
- data/node_modules/axe-core/lib/rules/landmark-contentinfo-is-top-level.json +13 -0
- data/node_modules/axe-core/lib/rules/landmark-has-body-context.js +8 -0
- data/node_modules/axe-core/lib/rules/landmark-main-is-top-level.json +12 -0
- data/node_modules/axe-core/lib/rules/landmark-no-duplicate-banner.json +12 -0
- data/node_modules/axe-core/lib/rules/landmark-no-duplicate-contentinfo.json +12 -0
- data/node_modules/axe-core/lib/rules/landmark-one-main.json +12 -0
- data/node_modules/axe-core/lib/rules/layout-table-matches.js +8 -0
- data/node_modules/axe-core/lib/rules/layout-table.json +13 -0
- data/node_modules/axe-core/lib/rules/link-in-text-block-matches.js +14 -0
- data/node_modules/axe-core/lib/rules/link-in-text-block.json +14 -0
- data/node_modules/axe-core/lib/rules/link-name.json +26 -0
- data/node_modules/axe-core/lib/rules/list.json +13 -0
- data/node_modules/axe-core/lib/rules/listitem.json +13 -0
- data/node_modules/axe-core/lib/rules/marquee.json +13 -0
- data/node_modules/axe-core/lib/rules/meta-refresh.json +13 -0
- data/node_modules/axe-core/lib/rules/meta-viewport-large.json +13 -0
- data/node_modules/axe-core/lib/rules/meta-viewport.json +13 -0
- data/node_modules/axe-core/lib/rules/no-role-matches.js +1 -0
- data/node_modules/axe-core/lib/rules/not-html-matches.js +1 -0
- data/node_modules/axe-core/lib/rules/object-alt.json +25 -0
- data/node_modules/axe-core/lib/rules/p-as-heading-matches.js +17 -0
- data/node_modules/axe-core/lib/rules/p-as-heading.json +13 -0
- data/node_modules/axe-core/lib/rules/page-has-heading-one.json +12 -0
- data/node_modules/axe-core/lib/rules/radiogroup.json +12 -0
- data/node_modules/axe-core/lib/rules/region.json +13 -0
- data/node_modules/axe-core/lib/rules/role-not-button-matches.js +1 -0
- data/node_modules/axe-core/lib/rules/scope-attr-valid.json +12 -0
- data/node_modules/axe-core/lib/rules/server-side-image-map.json +18 -0
- data/node_modules/axe-core/lib/rules/skip-link-matches.js +1 -0
- data/node_modules/axe-core/lib/rules/skip-link.json +13 -0
- data/node_modules/axe-core/lib/rules/tabindex.json +12 -0
- data/node_modules/axe-core/lib/rules/table-duplicate-name.json +12 -0
- data/node_modules/axe-core/lib/rules/table-fake-caption.json +20 -0
- data/node_modules/axe-core/lib/rules/td-has-header.json +20 -0
- data/node_modules/axe-core/lib/rules/td-headers-attr.json +12 -0
- data/node_modules/axe-core/lib/rules/th-has-data-cells.json +13 -0
- data/node_modules/axe-core/lib/rules/valid-lang.json +13 -0
- data/node_modules/axe-core/lib/rules/video-caption.json +19 -0
- data/node_modules/axe-core/lib/rules/video-description.json +19 -0
- data/node_modules/axe-core/lib/rules/window-is-top.js +3 -0
- data/node_modules/axe-core/lib/rules/xml-lang-mismatch-matches.js +12 -0
- data/node_modules/axe-core/locales/de.json +627 -0
- data/node_modules/axe-core/locales/fr.json +667 -0
- data/node_modules/axe-core/locales/ja.json +728 -0
- data/node_modules/axe-core/locales/nl.json +36 -0
- data/node_modules/axe-core/package.json +215 -0
- data/node_modules/axe-core/sri-history.json +138 -0
- data/node_modules/axe-core/typings/axe-core/axe-core-tests.ts +180 -0
- data/node_modules/govuk-frontend/all.js +19 -14
- data/node_modules/govuk-frontend/components/error-summary/error-summary.js +1 -3
- data/node_modules/govuk-frontend/components/summary-list/macro-options.json +12 -6
- data/node_modules/govuk-frontend/components/summary-list/template.njk +1 -1
- data/node_modules/govuk-frontend/components/tabs/_tabs.scss +1 -1
- data/node_modules/govuk-frontend/helpers/_typography.scss +3 -2
- data/node_modules/govuk-frontend/objects/_main-wrapper.scss +10 -2
- data/node_modules/govuk-frontend/package.json +10 -10
- data/node_modules/govuk-frontend/settings/_typography-font.scss +12 -0
- metadata +513 -3
- data/app/assets/javascripts/component_guide/vendor/axe.min.js +0 -41
@@ -0,0 +1,667 @@
|
|
1
|
+
{
|
2
|
+
"lang": "fr",
|
3
|
+
"rules": {
|
4
|
+
"accesskeys": {
|
5
|
+
"description": "S’assure que chaque valeur de l’attribut accesskey soit unique",
|
6
|
+
"help": "La valeur de l’attribut accesskey doit être unique"
|
7
|
+
},
|
8
|
+
"area-alt": {
|
9
|
+
"description": "S’assure que les éléments <area> d’une image réactive ont une alternative textuelle",
|
10
|
+
"help": "Les éléments <area> actifs doivent avoir une alternative textuelle"
|
11
|
+
},
|
12
|
+
"aria-allowed-attr": {
|
13
|
+
"description": "S’assure que les attributs ARIA sont autorisés pour le rôle d’un élément",
|
14
|
+
"help": "Les éléments doivent seulement utiliser les attributs ARIA autorisés"
|
15
|
+
},
|
16
|
+
"aria-allowed-role": {
|
17
|
+
"description": "S’assure que l’attribut role a une valeur valide pour cet élément",
|
18
|
+
"help": "Le rôle ARIA doit être valide pour cet élément"
|
19
|
+
},
|
20
|
+
"aria-dpub-role-fallback": {
|
21
|
+
"description": "S’assure que les rôles DPUB non supportés ne sont utilisés que sur des éléments avec des rôles implicites",
|
22
|
+
"help": "Les rôles DPUB non supportés doivent être utilisés sur des éléments avec des rôles implicites"
|
23
|
+
},
|
24
|
+
"aria-hidden-body": {
|
25
|
+
"description": "S’assure que aria-hidden='true' n’est pas présent sur le corps du document (élément body)",
|
26
|
+
"help": "aria-hidden='true' ne doit pas être présent sur body"
|
27
|
+
},
|
28
|
+
"aria-required-attr": {
|
29
|
+
"description": "S’assure que les éléments avec des rôles ARIA ont les attributs ARIA requis",
|
30
|
+
"help": "Les attributs ARIA requis doivent être présents"
|
31
|
+
},
|
32
|
+
"aria-required-children": {
|
33
|
+
"description": "S’assure que les éléments avec un rôle ARIA requérant des rôles enfants les contient",
|
34
|
+
"help": "Certains rôles ARIA doivent contenir des enfants spécifiques"
|
35
|
+
},
|
36
|
+
"aria-required-parent": {
|
37
|
+
"description": "S’assure que les éléments avec un rôle ARIA requérant des rôles parents y sont contenus",
|
38
|
+
"help": "Certains rôles ARIA doivent être contenus par des parents spécifiques"
|
39
|
+
},
|
40
|
+
"aria-roles": {
|
41
|
+
"description": "S’assure que les éléments avec un attribut role utilisent une valeur valide",
|
42
|
+
"help": "Les rôles ARIA doivent se conformer aux valeurs valides"
|
43
|
+
},
|
44
|
+
"aria-valid-attr-value": {
|
45
|
+
"description": "S’assure que tous les attributs ARIA ont des valeurs valides",
|
46
|
+
"help": "Les attributs ARIA doivent avoir des valeurs valides"
|
47
|
+
},
|
48
|
+
"aria-valid-attr": {
|
49
|
+
"description": "S’assure que les attributs commençant par aria- sont des attributs ARIA valides",
|
50
|
+
"help": "Les attributs ARIA doivent se conformer aux noms valides"
|
51
|
+
},
|
52
|
+
"audio-caption": {
|
53
|
+
"description": "S’assure que les éléments <audio> ont des sous-titres",
|
54
|
+
"help": "Les éléments <audio> doivent avoir une psite de sous-titres"
|
55
|
+
},
|
56
|
+
"autocomplete-valid": {
|
57
|
+
"description": "S’assure que l’attribut autocomplete est correct et adapté pour le champ de formulaire",
|
58
|
+
"help": "L’attribut autocomplete doit être utilisé correctement"
|
59
|
+
},
|
60
|
+
"blink": {
|
61
|
+
"description": "S’assure que l’élément <blink> n’est pas utilisé",
|
62
|
+
"help": "L’élément <blink> est déprécié et ne doit pas être utilisé"
|
63
|
+
},
|
64
|
+
"button-name": {
|
65
|
+
"description": "S’assure que les boutons ont un texte perceptible",
|
66
|
+
"help": "Les boutons doivent avoir un texte perceptible"
|
67
|
+
},
|
68
|
+
"bypass": {
|
69
|
+
"description": "S’assure que chaque page dispose au minium d’un mécanisme d’évitement de la navigation pour accéder directement au contenu",
|
70
|
+
"help": "Chaque page doit fournir des moyens d’éviter les contenus répétés"
|
71
|
+
},
|
72
|
+
"checkboxgroup": {
|
73
|
+
"description": "S’assure que les éléments <input type=\"checkbox\"> en relation sont regroupés et que la désignation du groupe est cohérente",
|
74
|
+
"help": "Les cases à cocher avec la même valeur pour l’attribut name doivent faire partie d’un groupe"
|
75
|
+
},
|
76
|
+
"color-contrast": {
|
77
|
+
"description": "S’assure que les contrastes entre le premier plan et l’arrière-plan atteignent les seuils de contrastes exigés par les WCAG 2 AA",
|
78
|
+
"help": "Les éléments doivent avoir un contraste de couleurs suffisant"
|
79
|
+
},
|
80
|
+
"definition-list": {
|
81
|
+
"description": "S’assure que les éléments <dl> sont correctement structurés",
|
82
|
+
"help": "Les éléments <dl> ne doivent contenir directement que des groupes d’élements <dt> et <dd> correctement ordonnés, ou des éléments <script> ou <template>"
|
83
|
+
},
|
84
|
+
"dlitem": {
|
85
|
+
"description": "S’assure que les éléments <dt> et <dd> sont contenus dans un élément <dl>",
|
86
|
+
"help": "Les éléments <dt> et <dd> doivent être contenus dans un élément <dl>"
|
87
|
+
},
|
88
|
+
"document-title": {
|
89
|
+
"description": "S’assure que chaque document HTML contient un élément <title> non vide",
|
90
|
+
"help": "Chaque document doit avoir un élément <title> pour aider à la navigation"
|
91
|
+
},
|
92
|
+
"duplicate-id": {
|
93
|
+
"description": "S’assure que la valeur de chaque attribut id est unique",
|
94
|
+
"help": "La valeur de l’attribut id doit être unique"
|
95
|
+
},
|
96
|
+
"empty-heading": {
|
97
|
+
"description": "S’assure que les niveaux de titre ont un texte perceptible",
|
98
|
+
"help": "Les niveaux de titre ne doivent pas être vides"
|
99
|
+
},
|
100
|
+
"focus-order-semantics": {
|
101
|
+
"description": "S’assure que les éléments dans le parcours du focus aient un rôle approprié",
|
102
|
+
"help": "Les éléments dans le parcours du focus doivent avoir un rôle approprié pour le contenu interactif"
|
103
|
+
},
|
104
|
+
"frame-tested": {
|
105
|
+
"description": "S’assure que les éléments <iframe> et <frame> contiennent le script axe-core",
|
106
|
+
"help": "Les cadres doivent êtres testés avec axe-core"
|
107
|
+
},
|
108
|
+
"frame-title-unique": {
|
109
|
+
"description": "S’assure que les éléments <iframe> et <frame> ont un attribut title unique",
|
110
|
+
"help": "Chaque cadre doit avoir un attribut title unique"
|
111
|
+
},
|
112
|
+
"frame-title": {
|
113
|
+
"description": "S’assure que les éléments <iframe> et <frame> ont un attribut title non vide",
|
114
|
+
"help": "Chaque cadre doit avoir un attribut title"
|
115
|
+
},
|
116
|
+
"heading-order": {
|
117
|
+
"description": "S’assure que la hiérarchie des niveaux de titre est sémantiquement correcte",
|
118
|
+
"help": "Les niveaux de titre doivent s’incrémenter d’un seul niveau à la fois"
|
119
|
+
},
|
120
|
+
"hidden-content": {
|
121
|
+
"description": "Informe les utilisateurs sur les contenus cachés",
|
122
|
+
"help": "Le contenu caché sur la page ne peut pas être analysé"
|
123
|
+
},
|
124
|
+
"html-has-lang": {
|
125
|
+
"description": "S’assure que chaque document HTML a un attribut lang",
|
126
|
+
"help": "L’élément <html> doit avoir un attribut lang"
|
127
|
+
},
|
128
|
+
"html-lang-valid": {
|
129
|
+
"description": "S’assure que l’attribut lang sur l’élément HTML a une valeur valide",
|
130
|
+
"help": "L’élément <html> doit avoir une valeur valide pour l’attribut lang"
|
131
|
+
},
|
132
|
+
"html-xml-lang-mismatch": {
|
133
|
+
"description": "S’assure que les éléments HTML avec les attributs lang et xml:lang valides indiquent la même langue de base pour la page",
|
134
|
+
"help": "Les éléments HTML avec les attributs lang et xml:lang doivent avoir la même langue de base"
|
135
|
+
},
|
136
|
+
"image-alt": {
|
137
|
+
"description": "S’assure que les éléments <img> ont un alternative textuelle, ou un rôle none ou presentation",
|
138
|
+
"help": "Les images doivent avoir un alternative textuelle"
|
139
|
+
},
|
140
|
+
"image-redundant-alt": {
|
141
|
+
"description": "S’assure que l’intitulé des liens et boutons n’est pas répété dans l’alternative de l’image",
|
142
|
+
"help": "L’intitulé des liens et boutons ne doit pas être répété dans l’alternative de l’image"
|
143
|
+
},
|
144
|
+
"input-image-alt": {
|
145
|
+
"description": "S’assure que les éléments <input type=\"image\"> ont une alternative textuelle",
|
146
|
+
"help": "Les boutons images doivent avoir un alternative textuelle"
|
147
|
+
},
|
148
|
+
"label-title-only": {
|
149
|
+
"description": "S’assure que chaque élément de formulaire n’est pas labellisé uniquement par les attributs title ou aria-describedby",
|
150
|
+
"help": "Chaque élément de formulaire doit avoir un label visible"
|
151
|
+
},
|
152
|
+
"label": {
|
153
|
+
"description": "S’assure que chaque élément de formulaire a un label",
|
154
|
+
"help": "Chaque élément de formulaire doit avoir un label"
|
155
|
+
},
|
156
|
+
"landmark-banner-is-top-level": {
|
157
|
+
"description": "La région banner ne devrait pas être contenue dans une autre région",
|
158
|
+
"help": "La région banner doit être au niveau le plus haut"
|
159
|
+
},
|
160
|
+
"landmark-contentinfo-is-top-level": {
|
161
|
+
"description": "La région contentinfo ne devrait pas être contenue dans une autre région",
|
162
|
+
"help": "La région contentinfo doit être au niveau le plus haut"
|
163
|
+
},
|
164
|
+
"landmark-main-is-top-level": {
|
165
|
+
"description": "La région main ne devrait pas être contenue dans une autre région",
|
166
|
+
"help": "La région main doit être au niveau le plus haut"
|
167
|
+
},
|
168
|
+
"landmark-no-duplicate-banner": {
|
169
|
+
"description": "S’assure que le document n’a pas plus d’une région banner",
|
170
|
+
"help": "Le document contient au plus une région banner"
|
171
|
+
},
|
172
|
+
"landmark-no-duplicate-contentinfo": {
|
173
|
+
"description": "S’assure que le document n’a pas plus d’une région contentinfo",
|
174
|
+
"help": "Le document contient au plus une région contentinfo"
|
175
|
+
},
|
176
|
+
"landmark-one-main": {
|
177
|
+
"description": "S’assure qu’une navigation pointe vers le contenu principal de la page. Si la page contient des iframes, chaque iframe ne doit contenir qu’une région main, ou aucune",
|
178
|
+
"help": "La page doit contenir une région main"
|
179
|
+
},
|
180
|
+
"layout-table": {
|
181
|
+
"description": "S’assure que les éléments <table> de présentation n’utilisent pas les éléments <th>, <caption> ni l’attribut summary",
|
182
|
+
"help": "Les tableaux de présentation ne doivent pas utiliser les éléments de tableaux de données"
|
183
|
+
},
|
184
|
+
"link-in-text-block": {
|
185
|
+
"description": "Les liens doivent pouvoir être distingués autrement que par la couleur",
|
186
|
+
"help": "Les liens doivent pouvoir être distingués du texte environnant d’une façon qui ne repose pas sur la couleur"
|
187
|
+
},
|
188
|
+
"link-name": {
|
189
|
+
"description": "S’assure que les liens ont un texte perceptible",
|
190
|
+
"help": "Les liens doivent avoir un texte perceptible"
|
191
|
+
},
|
192
|
+
"list": {
|
193
|
+
"description": "S’assure que les listes sont structurées correctement",
|
194
|
+
"help": "<ul> et <ol> doivent ne contenir directement que des éléments <li>, <script> ou <template>"
|
195
|
+
},
|
196
|
+
"listitem": {
|
197
|
+
"description": "S’assure que les éléments <li> sont utilisés sémantiquement",
|
198
|
+
"help": "Les éléments <li> doivent être contenus dans un élément <ul> ou <ol>"
|
199
|
+
},
|
200
|
+
"marquee": {
|
201
|
+
"description": "S’assure que l’élément <marquee> n’est pas utilisé",
|
202
|
+
"help": "L’élément <marquee> est déprécié et ne doit pas être utilisé"
|
203
|
+
},
|
204
|
+
"meta-refresh": {
|
205
|
+
"description": "S’assure que <meta http-equiv=\"refresh\"> n’est pas utilisé",
|
206
|
+
"help": "La page HTML ne doit pas être actualisée automatiquement"
|
207
|
+
},
|
208
|
+
"meta-viewport-large": {
|
209
|
+
"description": "S’assure que <meta name=\"viewport\"> permet un agrandissement significatif",
|
210
|
+
"help": "Les utilisateurs devraient pouvoir zoomer et agrandir le texte jusqu’à 500%"
|
211
|
+
},
|
212
|
+
"meta-viewport": {
|
213
|
+
"description": "S’assure que <meta name=\"viewport\"> ne désactive pas le zoom ni l’agrandissement",
|
214
|
+
"help": "Le zoom et l’agrandissement ne doivent pas être désactivés"
|
215
|
+
},
|
216
|
+
"object-alt": {
|
217
|
+
"description": "S’assure que les éléments <object> ont un alternative textuelle",
|
218
|
+
"help": "Les éléments <object> doivent avoir un alternative textuelle"
|
219
|
+
},
|
220
|
+
"p-as-heading": {
|
221
|
+
"description": "S’assure que les éléments p ne sont pas utilisés pour styler des niveaux de titres",
|
222
|
+
"help": "La graisse, le style et le corps du texte ne doivent pas être utilisés pour styler les éléments p comme des niveaux de titres"
|
223
|
+
},
|
224
|
+
"page-has-heading-one": {
|
225
|
+
"description": "S’assure que la page, ou au moins une de ses iframes, contient un titre de niveau un",
|
226
|
+
"help": "La page doit contenir un titre de niveau un"
|
227
|
+
},
|
228
|
+
"radiogroup": {
|
229
|
+
"description": "S’assure que les éléments <input type=\"radio\"> liés sont regroupés et que le nom du groupe est cohérent",
|
230
|
+
"help": "Les boutons radios ayant le même attribut name doivent être regroupés"
|
231
|
+
},
|
232
|
+
"region": {
|
233
|
+
"description": "S’assure que tout le contenu est localisé dans une région",
|
234
|
+
"help": "Le contenu doit être localisé dans une région"
|
235
|
+
},
|
236
|
+
"scope-attr-valid": {
|
237
|
+
"description": "S’assure que l’attribut scope est utilisé correctement dans les tableaux",
|
238
|
+
"help": "L’attribut scope doit être utilisé correctement"
|
239
|
+
},
|
240
|
+
"server-side-image-map": {
|
241
|
+
"description": "S’assure que les images réactives côté serveur ne sont pas utilisées",
|
242
|
+
"help": "Les images réactives côté serveur ne devraient pas être utilisées"
|
243
|
+
},
|
244
|
+
"skip-link": {
|
245
|
+
"description": "S’assure que tous les liens d’évitement ont une cible pouvant recevoir le focus",
|
246
|
+
"help": "La cible d’un lien d’évitement doit exister et pouvoir recevoir le focus"
|
247
|
+
},
|
248
|
+
"tabindex": {
|
249
|
+
"description": "S’assure que les valeurs de l’attribut tabindex ne sont pas supérieures à 0",
|
250
|
+
"help": "Aucun élément ne devrait avoir un tabindex avec une valeur supérieure à zéro"
|
251
|
+
},
|
252
|
+
"table-duplicate-name": {
|
253
|
+
"description": "S’assure que chaque tableau n’ait pas un summary et un caption identiques",
|
254
|
+
"help": "L’élément <caption> ne devrait pas contenir le même texte que l’attribut summary"
|
255
|
+
},
|
256
|
+
"table-fake-caption": {
|
257
|
+
"description": "S’assure que les tableaux avec une légende utilisent l’élément <caption>",
|
258
|
+
"help": "Les données ou les cellules d’entête ne devraient pas être utilisées pour légender un tableau de données."
|
259
|
+
},
|
260
|
+
"td-has-header": {
|
261
|
+
"description": "S’assure que chaque cellule de données non vide dans un tableau de données a une ou plusieurs cellules d’entête",
|
262
|
+
"help": "Chaque élément td non vide dans un tableau plus grand que 3 × 3 doit avoir une cellule d’entête associée"
|
263
|
+
},
|
264
|
+
"td-headers-attr": {
|
265
|
+
"description": "S’assure que chaque cellule utilisant l’attribut headers fait référence à une autre cellule du même tableau",
|
266
|
+
"help": "Les cellules utilisant l’attribut headers ne doivent faire référence qu’à d’autres cellules du même tableau"
|
267
|
+
},
|
268
|
+
"th-has-data-cells": {
|
269
|
+
"description": "S’assure que chaque cellule d’entête dans un tableau de données fait référence à des cellules de données",
|
270
|
+
"help": "Tous les éléments th et ceux avec role=columnheader/rowheader doivent décrire des cellules de données"
|
271
|
+
},
|
272
|
+
"valid-lang": {
|
273
|
+
"description": "S’assure que les attributs lang ont des valeurs valides",
|
274
|
+
"help": "L’attribut lang doit avoir une valeur valide"
|
275
|
+
},
|
276
|
+
"video-caption": {
|
277
|
+
"description": "S’assure que les éléments <video> ont des sous-titres",
|
278
|
+
"help": "Les éléments <video> doivent avoir des sous-titres"
|
279
|
+
},
|
280
|
+
"video-description": {
|
281
|
+
"description": "S’assure que les éléments <video> ont des audiodescriptions",
|
282
|
+
"help": "Les éléments <video> doivent avoir des audiodescriptions"
|
283
|
+
}
|
284
|
+
},
|
285
|
+
"checks": {
|
286
|
+
"abstractrole": {
|
287
|
+
"pass": "Les rôles abstraits ne sont pas utilisés",
|
288
|
+
"fail": "Les rôles abstraits ne peuvent pas être utilisés directement"
|
289
|
+
},
|
290
|
+
"aria-allowed-attr": {
|
291
|
+
"pass": "Les attributs ARIA sont utilisés correctement pour le rôle défini",
|
292
|
+
"fail": "{{=it.data && it.data.length > 1 ? 'Attributs ARIA non autorisés' : 'Attribut ARIA non autorisé'}} : {{~it.data:value}} {{=value}}{{~}}"
|
293
|
+
},
|
294
|
+
"aria-allowed-role": {
|
295
|
+
"pass": "Le rôle ARIA est autorisé pour l’élément donné",
|
296
|
+
"fail": "{{=it.data && it.data.length > 1 ? 'Les rôles' : 'Le rôle'}} {{=it.data.join(', ')}} {{=it.data && it.data.length > 1 ? 'ne sont pas autorisés' : 'n’est pas autorisé'}} pour l’élément donné"
|
297
|
+
},
|
298
|
+
"aria-hidden-body": {
|
299
|
+
"pass": "Aucun attribut aria-hidden n’est présent sur body",
|
300
|
+
"fail": "aria-hidden=true ne devrait pas être présent sur body"
|
301
|
+
},
|
302
|
+
"aria-errormessage": {
|
303
|
+
"pass": "Utilise une technique prise en charge pour aria-errormessage",
|
304
|
+
"fail": "{{=it.data && it.data.length > 1 ? 'Les valeurs de aria-errormessage' : 'La valeur de aria-errormessage'}} {{~it.data:value}} `{{=value}}{{~}}` doit utiliser une technique pour annoncer le message (ex. : aria-live, aria-describedby, role=alert, etc.)"
|
305
|
+
},
|
306
|
+
"has-widget-role": {
|
307
|
+
"pass": "L’élément a un rôle widget.",
|
308
|
+
"fail": "L’élément n’a pas de rôle widget."
|
309
|
+
},
|
310
|
+
"implicit-role-fallback": {
|
311
|
+
"pass": "Le rôle ARIA implicite de l’élément est un repli approprié",
|
312
|
+
"fail": "Le rôle ARIA implicite de l’élément n’est pas un bon repli pour ce rôle (non pris en charge)"
|
313
|
+
},
|
314
|
+
"invalidrole": {
|
315
|
+
"pass": "Le rôle ARIA est valide",
|
316
|
+
"fail": "Le rôle doit être un des rôles ARIA valides"
|
317
|
+
},
|
318
|
+
"aria-required-attr": {
|
319
|
+
"pass": "Tous les attributs ARIA requis sont présents",
|
320
|
+
"fail": "{{=it.data && it.data.length > 1 ? 'Attributs ARIA requis absents' : 'Attribut ARIA requis absent'}} : {{~it.data:value}} {{=value}}{{~}}"
|
321
|
+
},
|
322
|
+
"aria-required-children": {
|
323
|
+
"pass": "Les descendants ARIA requis sont présents",
|
324
|
+
"fail": "{{=it.data && it.data.length > 1 ? 'Descendants ARIA requis absents' : 'Descendant ARIA requis absent'}} : {{~it.data:value}} {{=value}}{{~}}",
|
325
|
+
"incomplete": "{{=it.data && it.data.length > 1 ? 'Les descendants requièrent' : 'Le descendant requiert'}} le rôle ARIA : {{~it.data:value}} {{=value}}{{~}}"
|
326
|
+
},
|
327
|
+
"aria-required-parent": {
|
328
|
+
"pass": "Les rôles parents ARIA requis sont présents",
|
329
|
+
"fail": "{{=it.data && it.data.length > 1 ? 'Rôles parents ARIA requis absents' : 'Rôle parent ARIA requis absent'}} : {{~it.data:value}} {{=value}}{{~}}"
|
330
|
+
},
|
331
|
+
"unsupportedrole": {
|
332
|
+
"pass": "Le rôle ARIA est supporté",
|
333
|
+
"fail": "Le rôle utilisé n’est pas suffisamment supporté par les technologies d’assistance"
|
334
|
+
},
|
335
|
+
"aria-valid-attr-value": {
|
336
|
+
"pass": "Les valeurs d’attribut ARIA sont valides",
|
337
|
+
"fail": "{{=it.data && it.data.length > 1 ? 'Valeurs d’attribut ARIA invalides' : 'Valeur d’attribut ARIA invalide'}} : {{~it.data:value}} {{=value}}{{~}}"
|
338
|
+
},
|
339
|
+
"aria-valid-attr": {
|
340
|
+
"pass": "{{=it.data && it.data.length > 1 ? 'Les noms d’attributs ARIA sont valides' : 'Le nom d’attribut ARIA est valide'}}",
|
341
|
+
"fail": "{{=it.data && it.data.length > 1 ? 'Noms d’attributs ARIA invalides' : 'Nom d’attribut ARIA invalide'}} : {{~it.data:value}} {{=value}}{{~}}"
|
342
|
+
},
|
343
|
+
"valid-scrollable-semantics": {
|
344
|
+
"pass": "L’élément a une sémantique valide pour un élément dans l’ordre de tabulation.",
|
345
|
+
"fail": "L’élément n’a pas une sémantique valide pour un élément dans l’ordre de tabulation."
|
346
|
+
},
|
347
|
+
"color-contrast": {
|
348
|
+
"pass": "L’élément a un contraste de couleurs suffisant de {{=it.data.contrastRatio}}",
|
349
|
+
"fail": "L’élément a un contraste de couleurs insuffisant de {{=it.data.contrastRatio}} (couleur du texte : {{=it.data.fgColor}}, couleur d’arrière-plan : {{=it.data.bgColor}}, corps : {{=it.data.fontSize}}, graisse : {{=it.data.fontWeight}}). Le rapport de contraste attendu est {{=it.data.expectedContrastRatio}}",
|
350
|
+
"incomplete": {
|
351
|
+
"bgImage": "La couleur d’arrière-plan de l’élément n’a pu être déterminée à cause d’une image d’arrière-plan",
|
352
|
+
"bgGradient": "La couleur d’arrière-plan de l’élément n’a pu être déterminée à cause d’un dégradé d’arrière-plan",
|
353
|
+
"imgNode": "La couleur d’arrière-plan de l’élément n’a pu être déterminée car l’élément contient une balise image",
|
354
|
+
"bgOverlap": "La couleur d’arrière-plan de l’élément n’a pu être déterminée car un autre élément le chevauche",
|
355
|
+
"fgAlpha": "La couleur du texte de l’élément n’a pu être déterminée à cause d’une opacité réduite",
|
356
|
+
"elmPartiallyObscured": "La couleur d’arrière-plan de l’élément n’a pu être déterminée car l’élément est partiellement masqué par un autre élément",
|
357
|
+
"elmPartiallyObscuring": "La couleur d’arrière-plan de l’élément n’a pu être déterminée car il chevauche partiellement un autre élément",
|
358
|
+
"outsideViewport": "La couleur d’arrière-plan de l’élément n’a pu être déterminée car il est à l’extérieur du viewport",
|
359
|
+
"equalRatio": "L’élément a un rapport de contraste de 1:1 avec son arrière-plan",
|
360
|
+
"default": "Impossible de déterminer le rapport de contraste"
|
361
|
+
}
|
362
|
+
},
|
363
|
+
"link-in-text-block": {
|
364
|
+
"pass": "Les liens peuvent être distingués du texte environnant par un autre moyen que la couleur",
|
365
|
+
"fail": "Les liens doivent se distinguer du texte environnant par un autre moyen que la couleur",
|
366
|
+
"incomplete": {
|
367
|
+
"bgContrast": "Le rapport de contraste de l’élément n’a pu être déterminé. Recherchez un style différent pour le hover/focus.",
|
368
|
+
"bgImage": "Le rapport de contraste de l’élément n’a pu être déterminé à cause d’une image d’arrière-plan",
|
369
|
+
"bgGradient": "Le rapport de contraste de l’élément n’a pu être déterminé à cause d’un dégradé d’arrière-plan",
|
370
|
+
"imgNode": "Le rapport de contraste de l’élément n’a pu être déterminé car l’élément contient une balise image",
|
371
|
+
"bgOverlap": "Le rapport de contraste de l’élément n’a pu être déterminé à cause d’un chevauchement",
|
372
|
+
"default": "Impossible de déterminer le rapport de contraste"
|
373
|
+
}
|
374
|
+
},
|
375
|
+
"autocomplete-appropriate": {
|
376
|
+
"pass": "La valeur autocomplete est sur un élément approprié",
|
377
|
+
"fail": "La valeur autocomplete est inappropriée sur ce type de champ de formulaire"
|
378
|
+
},
|
379
|
+
"autocomplete-valid": {
|
380
|
+
"pass": "L’attribut autocomplete est formaté correctement",
|
381
|
+
"fail": "L’attribut autocomplete est formaté incorrectement"
|
382
|
+
},
|
383
|
+
"fieldset": {
|
384
|
+
"pass": "L’élément est contenu dans un fieldset",
|
385
|
+
"fail": "{{var code = it.data && it.data.failureCode;}}{{? code === 'no-legend'}}Le fieldset n’a pas de legend en premier descendant direct{{?? code === 'empty-legend'}}L’élément legend n’a pas de texte discernable par les lecteurs d’écran{{?? code === 'mixed-inputs'}}Le fieldset contient des champs non liés{{?? code === 'no-group-label'}}Le groupe ARIA n’a pas d’attribut aria-label ou aria-labelledby{{?? code === 'group-mixed-inputs'}}Le groupe ARIA contient des champs non liés {{??}}L’élément n’est contenu ni dans un fieldset ni dans un groupe ARIA{{?}}"
|
386
|
+
},
|
387
|
+
"group-labelledby": {
|
388
|
+
"pass": "Tous les éléments avec le nom \"{{=it.data.name}}\" font référence au même élément avec aria-labelledby",
|
389
|
+
"fail": "Tous les éléments avec le nom \"{{=it.data.name}}\" ne font pas référence au même élément avec aria-labelledby"
|
390
|
+
},
|
391
|
+
"accesskeys": {
|
392
|
+
"pass": "La valeur de l'attribut accesskey est unique",
|
393
|
+
"fail": "Plusieurs éléments ont le même accesskey au sein du document"
|
394
|
+
},
|
395
|
+
"focusable-no-name": {
|
396
|
+
"pass": "L’élément n’est pas dans l’ordre de tabulation ou a un intitulé accessible",
|
397
|
+
"fail": "L’élément est dans l’ordre de tabulation et n’a pas d’intitulé accessible"
|
398
|
+
},
|
399
|
+
"landmark-is-top-level": {
|
400
|
+
"pass": "La région {{=it.data.role }} est au niveau le plus haut.",
|
401
|
+
"fail": "La région {{=it.data.role }} est contenue dans une autre région."
|
402
|
+
},
|
403
|
+
"page-has-heading-one": {
|
404
|
+
"pass": "La page a au moins un titre de niveau un",
|
405
|
+
"fail": "La page doit avoir un titre de niveau un"
|
406
|
+
},
|
407
|
+
"page-has-main": {
|
408
|
+
"pass": "La page a au moins une région main",
|
409
|
+
"fail": "La page doit avoir une région main"
|
410
|
+
},
|
411
|
+
"page-no-duplicate-banner": {
|
412
|
+
"pass": "Le document n’a pas plus d’une région banner",
|
413
|
+
"fail": "Le document a plus d’une région banner"
|
414
|
+
},
|
415
|
+
"page-no-duplicate-contentinfo": {
|
416
|
+
"pass": "Le document n’a pas plus d’une région contentinfo",
|
417
|
+
"fail": "Le document a plus d’une région contentinfo"
|
418
|
+
},
|
419
|
+
"page-no-duplicate-main": {
|
420
|
+
"pass": "Le document n’a pas plus d’une région main",
|
421
|
+
"fail": "Le document a plus d’une région banner"
|
422
|
+
},
|
423
|
+
"tabindex": {
|
424
|
+
"pass": "L’élément n’a pas de tabindex supérieur à 0",
|
425
|
+
"fail": "L’élément a un tabindex supérieur à 0"
|
426
|
+
},
|
427
|
+
"duplicate-img-label": {
|
428
|
+
"pass": "L’élément ne duplique pas un texte existant dans l’alternative textuelle de l’élément <img>",
|
429
|
+
"fail": "L’élément contient un élément <img> dont l’alternative textuelle duplique un texte existant"
|
430
|
+
},
|
431
|
+
"explicit-label": {
|
432
|
+
"pass": "L’élément de formulaire a un <label> explicite",
|
433
|
+
"fail": "L’élément de formulaire n’a pas de <label> explicite"
|
434
|
+
},
|
435
|
+
"help-same-as-label": {
|
436
|
+
"pass": "L’aide à la saisie (title ou aria-describedby) ne duplique pas le contenu du label",
|
437
|
+
"fail": "L’aide à la saisie (title ou aria-describedby) est identique au contenu du label"
|
438
|
+
},
|
439
|
+
"hidden-explicit-label": {
|
440
|
+
"pass": "L’élément de formulaire a un <label> visible et explicite",
|
441
|
+
"fail": "L’élément de formulaire a un <label> explicite qui est masqué"
|
442
|
+
},
|
443
|
+
"implicit-label": {
|
444
|
+
"pass": "L’élément de formulaire a un <label> implicite (imbriqué)",
|
445
|
+
"fail": "L’élément de formulaire n’a pas de <label> implicite (imbriqué)"
|
446
|
+
},
|
447
|
+
"multiple-label": {
|
448
|
+
"pass": "L’élément de formulaire n’a pas plusieurs éléments <label>",
|
449
|
+
"fail": "L’élément de formulaire a plusieurs éléments <label>"
|
450
|
+
},
|
451
|
+
"title-only": {
|
452
|
+
"pass": "L’élément de formulaire n’a pas uniquement l’attribut title comme étiquette",
|
453
|
+
"fail": "Seul l’attribut title est utilisé comme étiquette pour l’élément de formulaire"
|
454
|
+
},
|
455
|
+
"has-lang": {
|
456
|
+
"pass": "L’élément <html> a un attribut lang",
|
457
|
+
"fail": "L’élément <html> n’a pas d’attribut lang"
|
458
|
+
},
|
459
|
+
"valid-lang": {
|
460
|
+
"pass": "La valeur de l’attribut lang fait partie des codes de langues valides",
|
461
|
+
"fail": "La valeur de l’attribut lang ne fait pas partie des codes de langues valides"
|
462
|
+
},
|
463
|
+
"xml-lang-mismatch": {
|
464
|
+
"pass": "Les attributs lang et xml:lang indiquent la même langue de base",
|
465
|
+
"fail": "Les attributs lang et xml:lang indiquent des langues de base différentes"
|
466
|
+
},
|
467
|
+
"dlitem": {
|
468
|
+
"pass": "L’item de liste de description a un élément <dl> parent",
|
469
|
+
"fail": "L’item de liste de description n’a pas d’élément <dl> parent"
|
470
|
+
},
|
471
|
+
"listitem": {
|
472
|
+
"pass": "L’item de liste a un élément <ul>, <ol> ou role=\"list\" parent",
|
473
|
+
"fail": "L’item de liste n’a pas d’élément <ul>, <ol> ou role=\"list\" parent"
|
474
|
+
},
|
475
|
+
"only-dlitems": {
|
476
|
+
"pass": "L’élément de liste n’a que des descendants directs qui sont autorisés dans les éléments <dt> ou <dd>",
|
477
|
+
"fail": "L’élément de liste a des descendants directs qui ne sont pas autorisés dans les éléments <dt> ou <dd>"
|
478
|
+
},
|
479
|
+
"only-listitems": {
|
480
|
+
"pass": "L’élément de liste n’a que des descendants directs qui sont autorisés dans les éléments <li>",
|
481
|
+
"fail": "L’élément de liste a des descendants directs qui ne sont pas autorisés dans les éléments <li>"
|
482
|
+
},
|
483
|
+
"structured-dlitems": {
|
484
|
+
"pass": "S’il n’est pas vide, l’élément contient au moins un élément <dt> et un élément <dd>",
|
485
|
+
"fail": "S’il n’est pas vide, l’élément doit contenir au moins un élément <dt> et un élément <dd>"
|
486
|
+
},
|
487
|
+
"caption": {
|
488
|
+
"pass": "L’élément multimédia a une piste de sous-titres",
|
489
|
+
"fail": "L’élément multimédia n’a pas de piste de sous-titres",
|
490
|
+
"incomplete": "Aucune piste de sous-titres n’a pu être trouvée pour cet élément"
|
491
|
+
},
|
492
|
+
"description": {
|
493
|
+
"pass": "L’élément multimédia a une piste d’audiodescription",
|
494
|
+
"fail": "L’élément multimédia n’a pas de piste d’audiodescription",
|
495
|
+
"incomplete": "Aucune piste d’audiopdescription n’a pu être trouvée pour cet élément"
|
496
|
+
},
|
497
|
+
"frame-tested": {
|
498
|
+
"pass": "L’iframe a été testée avec axe-core",
|
499
|
+
"fail": "L’iframe n’a pu être testée avec axe-core",
|
500
|
+
"incomplete": "L’iframe doit encore être testée avec axe-core"
|
501
|
+
},
|
502
|
+
"meta-viewport-large": {
|
503
|
+
"pass": "La balise <meta> ne limite pas l’agrandissement sur les appareils mobiles",
|
504
|
+
"fail": "La balise <meta> limite l’agrandissement sur les appareils mobiles"
|
505
|
+
},
|
506
|
+
"meta-viewport": {
|
507
|
+
"pass": "La balise <meta> n’empêche pas l’agrandissement sur les appareils mobiles",
|
508
|
+
"fail": "La balise <meta> empêche l’agrandissement sur les appareils mobiles"
|
509
|
+
},
|
510
|
+
"header-present": {
|
511
|
+
"pass": "La page a un entête",
|
512
|
+
"fail": "La page n’a pas d’entête"
|
513
|
+
},
|
514
|
+
"heading-order": {
|
515
|
+
"pass": "Hiérarchie entre les titres valide",
|
516
|
+
"fail": "Hiérarchie entre les titres invalide"
|
517
|
+
},
|
518
|
+
"internal-link-present": {
|
519
|
+
"pass": "Lien d’évitement valide trouvé",
|
520
|
+
"fail": "Aucun lien d’évitement valide trouvé"
|
521
|
+
},
|
522
|
+
"landmark": {
|
523
|
+
"pass": "La page a une région",
|
524
|
+
"fail": "La page n’a pas de région"
|
525
|
+
},
|
526
|
+
"meta-refresh": {
|
527
|
+
"pass": "Aucune balise <meta> ne rafraîchit immédiatement la page",
|
528
|
+
"fail": "La balise <meta> force le rafraîchissement minuté de la page"
|
529
|
+
},
|
530
|
+
"p-as-heading": {
|
531
|
+
"pass": "Les éléments <p> ne sont pas stylés comme des titres",
|
532
|
+
"fail": "Des titres doivent être utilisés au lieu de styler des éléments <p>"
|
533
|
+
},
|
534
|
+
"region": {
|
535
|
+
"pass": "Contenu imbriqué dans une région ARIA",
|
536
|
+
"fail": "Contenu non imbriqué dans une région ARIA"
|
537
|
+
},
|
538
|
+
"skip-link": {
|
539
|
+
"pass": "La cible du lien d’évitement existe",
|
540
|
+
"incomplete": "La cible du lien d’évitement devrait devenir visible lors de l’activation",
|
541
|
+
"fail": "Lien d’évitement sans cible"
|
542
|
+
},
|
543
|
+
"unique-frame-title": {
|
544
|
+
"pass": "L’attribut title de l’élément est unique",
|
545
|
+
"fail": "L’attribut title de l’élément n’est pas unique"
|
546
|
+
},
|
547
|
+
"aria-label": {
|
548
|
+
"pass": "L’attribut aria-label existe et n’est pas vide",
|
549
|
+
"fail": "L’attribut aria-label n’existe pas ou est vide"
|
550
|
+
},
|
551
|
+
"aria-labelledby": {
|
552
|
+
"pass": "L’attribut aria-labelledby existe et fait référence à des éléments visibles par les lecteurs d’écran",
|
553
|
+
"fail": "L’attribut aria-labelledby n’existe pas, fait référence à des éléments qui n’existent pas ou à des éléments vides ou non visibles"
|
554
|
+
},
|
555
|
+
"button-has-visible-text": {
|
556
|
+
"pass": "L’élément a un contenu textuel visible par les lecteurs d’écran",
|
557
|
+
"fail": "L’élément n’a aucun contenu textuel visible par les lecteurs d’écran"
|
558
|
+
},
|
559
|
+
"doc-has-title": {
|
560
|
+
"pass": "Le document a un élément <title> non vide",
|
561
|
+
"fail": "Le document n’a pas d’élément <title> non vide"
|
562
|
+
},
|
563
|
+
"duplicate-id": {
|
564
|
+
"pass": "Le document n’a pas d’éléments qui partagent le même attribut id",
|
565
|
+
"fail": "Le document a plusieurs éléments avec le même attribut id : {{=it.data}}"
|
566
|
+
},
|
567
|
+
"exists": {
|
568
|
+
"pass": "L’élément n’existe pas",
|
569
|
+
"fail": "L’élément existe"
|
570
|
+
},
|
571
|
+
"has-alt": {
|
572
|
+
"pass": "L’élément a un attribut alt",
|
573
|
+
"fail": "L’élément n’a pas d’attribut alt"
|
574
|
+
},
|
575
|
+
"has-visible-text": {
|
576
|
+
"pass": "L’élément a un contenu textuel visible par les lecteurs d’écran",
|
577
|
+
"fail": "L’élément n’a aucun contenu textuel visible par les lecteurs d’écran"
|
578
|
+
},
|
579
|
+
"is-on-screen": {
|
580
|
+
"pass": "L’élément n’est pas visible",
|
581
|
+
"fail": "L’élément est visible"
|
582
|
+
},
|
583
|
+
"non-empty-alt": {
|
584
|
+
"pass": "L’élément a un attribut alt non vide",
|
585
|
+
"fail": "L’élément n’a pas d'attribut alt ou l’attribut alt est vide"
|
586
|
+
},
|
587
|
+
"non-empty-if-present": {
|
588
|
+
"pass": "L’élément {{?it.data}}a un attribut value non vide{{??}}n’a pas d’attribut value{{?}}",
|
589
|
+
"fail": "L’élément a un attribut value, et cet attribut est vide"
|
590
|
+
},
|
591
|
+
"non-empty-title": {
|
592
|
+
"pass": "L’élément a un attribut title",
|
593
|
+
"fail": "L’élément n’a pas d’attribut title ou l’attribut title est vide."
|
594
|
+
},
|
595
|
+
"non-empty-value": {
|
596
|
+
"pass": "L’élément a un attribut value non vide",
|
597
|
+
"fail": "L’élément n’a pas d’attribut value, ou a un attribut value vide"
|
598
|
+
},
|
599
|
+
"role-none": {
|
600
|
+
"pass": "La sémantique par défaut de l’élément est annulée avec role=\"none\"",
|
601
|
+
"fail": "La sémantique par défaut de l’élément n’est pas annulée avec role=\"none\""
|
602
|
+
},
|
603
|
+
"role-presentation": {
|
604
|
+
"pass": "La sémantique par défaut de l’élément est annulée avec role=\"presentation\"",
|
605
|
+
"fail": "La sémantique par défaut de l’élément n’est pas annulée avec role=\"presentation\""
|
606
|
+
},
|
607
|
+
"caption-faked": {
|
608
|
+
"pass": "La première ligne d’un tableau n’est pas utilisée en guise de légende",
|
609
|
+
"fail": "La première ligne d’un tableau devrait être un caption et non des cellules de tableau"
|
610
|
+
},
|
611
|
+
"has-caption": {
|
612
|
+
"pass": "Le tableau de présentation n’utilise pas d’élément <caption>",
|
613
|
+
"fail": "Le tableau de présentation utilise un élément <caption>"
|
614
|
+
},
|
615
|
+
"has-summary": {
|
616
|
+
"pass": "Le tableau de présentation n’utilise pas d’attribut summary",
|
617
|
+
"fail": "Le tableau de présentation utilise un attribut summary"
|
618
|
+
},
|
619
|
+
"has-th": {
|
620
|
+
"pass": "Le tableau de présentation n’utilise pas d’éléments <th>",
|
621
|
+
"fail": "Le tableau de présentation utilise des éléments <th>"
|
622
|
+
},
|
623
|
+
"html5-scope": {
|
624
|
+
"pass": "L’attribut scope est utilisé uniquement sur des cellules d’entête de tableau",
|
625
|
+
"fail": "En HTML 5, l’attribut scope ne peut être utilisé que sur des cellules d’entête de tableau"
|
626
|
+
},
|
627
|
+
"same-caption-summary": {
|
628
|
+
"pass": "Les contenus de l’attribut summary et de <caption> ne sont pas identiques",
|
629
|
+
"fail": "Les contenus de l’attribut summary et de <caption> sont identiques"
|
630
|
+
},
|
631
|
+
"scope-value": {
|
632
|
+
"pass": "L’attribut scope est utilisé correctement",
|
633
|
+
"fail": "La valeur de l’attribut scope ne peut être que 'row' ou 'col'"
|
634
|
+
},
|
635
|
+
"td-has-header": {
|
636
|
+
"pass": "Toutes les cellules de données non vides ont un entête de tableau",
|
637
|
+
"fail": "Certaines cellules de données non vides n’ont pas d’entête de tableau"
|
638
|
+
},
|
639
|
+
"td-headers-attr": {
|
640
|
+
"pass": "L’attribut headers est utilisé exclusivement pour faire référence à d’autres cellules dans le tableau",
|
641
|
+
"fail": "L’attribut headers n’est pas utilisé exclusivement pour faire référence à d’autres cellules dans le tableau"
|
642
|
+
},
|
643
|
+
"th-has-data-cells": {
|
644
|
+
"pass": "Toutes les cellules d’entête de tableau font référence à des cellules de données",
|
645
|
+
"fail": "Toutes les cellules d’entête de tableau ne font pas référence à des cellules de données",
|
646
|
+
"incomplete": "Les cellules de données sont absentes ou vides"
|
647
|
+
},
|
648
|
+
"hidden-content": {
|
649
|
+
"pass": "Tout le contenu de la page a été analysé.",
|
650
|
+
"fail": "Il y a eu des problèmes pour analyser le contenu de cette page.",
|
651
|
+
"incomplete": "Il y a du contenu caché sur la page qui n’a pas été analysé. Vous allez devoir modifier l’affichage de ce contenu afin de l’analyser."
|
652
|
+
}
|
653
|
+
},
|
654
|
+
"failureSummaries": {
|
655
|
+
"any": {
|
656
|
+
"failureMessage": "Corriger l’un des éléments suivants : {{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
|
657
|
+
},
|
658
|
+
"none": {
|
659
|
+
"failureMessage": "Corriger tous les éléments suivants : {{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
|
660
|
+
}
|
661
|
+
},
|
662
|
+
"incompleteFallbackMessage": {
|
663
|
+
"undefined": {
|
664
|
+
"failureMessage": "Corriger tous les éléments suivants : {{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
|
665
|
+
}
|
666
|
+
}
|
667
|
+
}
|