pour-engine 1.42.0 → 1.42.1
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.
package/config/project.config.js
CHANGED
package/engine/COVERAGE.md
CHANGED
|
@@ -113,7 +113,7 @@ meaning that only a person can settle, even where a rule decides most real pages
|
|
|
113
113
|
|
|
114
114
|
| SC | Name | Level | Coverage | Rules |
|
|
115
115
|
|---|---|---|---|---|
|
|
116
|
-
| 4.1.2 | [Name, Role, Value](https://www.w3.org/WAI/WCAG22/Understanding/name-role-value.html) | A | Partially automated | input-image-alt, form-label, link-name, aria-allowed-attr, aria-attr-valid, aria-field-name, aria-hidden-focus, aria-label-misuse, aria-valid-refs, button-name, composite-widget-name,
|
|
116
|
+
| 4.1.2 | [Name, Role, Value](https://www.w3.org/WAI/WCAG22/Understanding/name-role-value.html) | A | Partially automated | input-image-alt, form-label, link-name, aria-allowed-attr, aria-attr-valid, aria-field-name, aria-hidden-focus, aria-label-misuse, aria-valid-refs, button-name, composite-widget-name, frame-title, invoker-target, label-for-valid, nested-interactive, role-required-aria, summary-name, valid-role |
|
|
117
117
|
| 4.1.3 | [Status Messages](https://www.w3.org/WAI/WCAG22/Understanding/status-messages.html) | AA | Manual review | — |
|
|
118
118
|
|
|
119
119
|
**Totals:** 51 partially automated · 35 manual — with 98 rules.
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
//
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
1
|
+
// A dialog with no accessible name is announced as just "dialog". ARIA 1.2
|
|
2
|
+
// requires authors to name one, but WCAG 4.1.2 is written for user interface
|
|
3
|
+
// components, defined as controls, and a dialog is a container of controls
|
|
4
|
+
// whose own names 4.1.2 already covers. So the pattern is an ARIA authoring
|
|
5
|
+
// failure, not a WCAG one: demoted from 4.1.2 to best practice on 2026-09-13
|
|
6
|
+
// after rnib.org.uk's unnamed cookie banner was challenged.
|
|
7
7
|
import { labelledByName } from '../../lib/accessible-name.js';
|
|
8
8
|
|
|
9
9
|
export default {
|
|
10
10
|
id: 'dialog-name',
|
|
11
11
|
name: 'Dialog names',
|
|
12
12
|
impact: 'serious',
|
|
13
|
-
tags: ['
|
|
14
|
-
help: 'Dialogs
|
|
15
|
-
helpUrl: 'https://www.w3.org/WAI/
|
|
13
|
+
tags: ['best-practice'],
|
|
14
|
+
help: 'Dialogs should have an accessible name',
|
|
15
|
+
helpUrl: 'https://www.w3.org/WAI/ARIA/apg/patterns/dialog-modal/',
|
|
16
16
|
// Default visibility filter: a closed <dialog> is display:none, so only
|
|
17
17
|
// dialogs the user can actually encounter are judged.
|
|
18
18
|
selector: 'dialog, [role="dialog"], [role="alertdialog"]',
|
package/engine/rules/index.js
CHANGED
|
@@ -76,7 +76,9 @@ import scrollableRegionFocusable from './wcag/2.1.1-scrollable-region-focusable.
|
|
|
76
76
|
import tableHeaders from './wcag/1.3.1-table-headers.js';
|
|
77
77
|
import contrastEnhanced from './wcag/1.4.6-contrast-enhanced.js';
|
|
78
78
|
import targetSizeEnhanced from './wcag/2.5.5-target-size-enhanced.js';
|
|
79
|
-
|
|
79
|
+
// Demoted to best-practice 2026-09-13: ARIA requires a dialog name, but 4.1.2
|
|
80
|
+
// covers controls and a dialog is their container (see the rule file).
|
|
81
|
+
import dialogName from './best-practice/dialog-name.js';
|
|
80
82
|
import controlContrast from './wcag/1.4.3-control-contrast.js';
|
|
81
83
|
import nonTextContrast from './wcag/1.4.11-non-text-contrast.js';
|
|
82
84
|
import textSpacing from './wcag/1.4.12-text-spacing.js';
|
package/package.json
CHANGED