Skip to content

Commit

Permalink
Merge pull request #4039 from dequelabs/release-2023-05-25
Browse files Browse the repository at this point in the history
chore(release): v4.7.2
  • Loading branch information
WilcoFiers authored May 25, 2023
2 parents c806e57 + 74a912d commit b4f78df
Show file tree
Hide file tree
Showing 19 changed files with 164 additions and 72 deletions.
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,15 @@

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

### [4.7.2](https://github.com/dequelabs/axe-core/compare/v4.7.1...v4.7.2) (2023-05-25)

### Bug Fixes

- **aria-allowed-attr:** Add 'aria-required' to switch role ([#4029](https://github.com/dequelabs/axe-core/issues/4029)) ([cb51be4](https://github.com/dequelabs/axe-core/commit/cb51be4e3ed69e8e8b3725cab5ad1a4671f64c0c)), closes [#4027](https://github.com/dequelabs/axe-core/issues/4027)
- **aria-allowed-attr:** allow aria-required on role=slider ([#4035](https://github.com/dequelabs/axe-core/issues/4035)) ([bb2bf60](https://github.com/dequelabs/axe-core/commit/bb2bf606d75409722c645a3b2e3240cbce7e97ef))
- **aria-required-children:** set related nodes for invalid children ([#4033](https://github.com/dequelabs/axe-core/issues/4033)) ([377f72b](https://github.com/dequelabs/axe-core/commit/377f72b16a4db5272b6c056a070e977dc0589cf5))
- **tags:** Add / correct several TTv5 tags ([#4031](https://github.com/dequelabs/axe-core/issues/4031)) ([25859dd](https://github.com/dequelabs/axe-core/commit/25859dd737e271f69e3912d69ede2a127d78caa4))

### [4.7.1](https://github.com/dequelabs/axe-core/compare/v4.7.0...v4.7.1) (2023-05-15)

### Bug Fixes
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,10 @@ Axe-core has a new minor release every 3 to 5 months, which usually introduces n
- See [release and support](doc/release-and-support.md) for details on the frequency of releases, long-term support and recommendations on upgrading axe-core.
- See [backward compatibility](doc/backwards-compatibility-doc.md) for details on the types of changes different releases may introduce.

## Deque Trademarks Policy

DEQUE, DEQUELABS, AXE®, and AXE-CORE® are trademarks of Deque Systems, Inc. Use of the Deque trademarks must be in accordance with [Deque's trademark policy](https://www.deque.com/legal/trademarks/).

## Supported ARIA Roles and Attributes.

Refer [axe-core ARIA support](./doc/aria-supported.md) for a complete list of ARIA supported roles and attributes by axe.
Expand Down
2 changes: 1 addition & 1 deletion bower.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "axe-core",
"version": "4.7.1",
"version": "4.7.2",
"deprecated": true,
"contributors": [
{
Expand Down
16 changes: 8 additions & 8 deletions doc/rule-descriptions.md

Large diffs are not rendered by default.

23 changes: 15 additions & 8 deletions lib/core/utils/check-helper.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import toArray from './to-array';
import DqElement from './dq-element';
import AbstractVirtualNode from '../base/virtual-node/abstract-virtual-node';

/**
* Helper to denote which checks are asyncronous and provide callbacks and pass data back to the CheckResult
Expand Down Expand Up @@ -28,17 +29,23 @@ function checkHelper(checkResult, options, resolve, reject) {
if (!window.Node) {
return;
}

nodes = nodes instanceof window.Node ? [nodes] : toArray(nodes);

if (
!nodes.every(node => node instanceof window.Node || node.actualNode)
nodes instanceof window.Node ||
nodes instanceof AbstractVirtualNode
) {
return;
nodes = [nodes];
} else {
nodes = toArray(nodes);
}

checkResult.relatedNodes = nodes.map(element => {
return new DqElement(element, options);
checkResult.relatedNodes = [];
nodes.forEach(node => {
if (node instanceof AbstractVirtualNode) {
node = node.actualNode;
}
if (node instanceof window.Node) {
const dqElm = new DqElement(node, options);
checkResult.relatedNodes.push(dqElm);
}
});
}
};
Expand Down
2 changes: 1 addition & 1 deletion lib/rules/aria-hidden-focus.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"selector": "[aria-hidden=\"true\"]",
"matches": "aria-hidden-focus-matches",
"excludeHidden": false,
"tags": ["cat.name-role-value", "wcag2a", "wcag412"],
"tags": ["cat.name-role-value", "wcag2a", "wcag412", "TTv5", "TT6.a"],
"actIds": ["6cfa84"],
"metadata": {
"description": "Ensures aria-hidden elements are not focusable nor contain focusable elements",
Expand Down
2 changes: 1 addition & 1 deletion lib/rules/frame-title-unique.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"id": "frame-title-unique",
"selector": "frame[title], iframe[title]",
"matches": "frame-title-has-text-matches",
"tags": ["cat.text-alternatives", "wcag412", "wcag2a", "TTv5", "TT12.c"],
"tags": ["cat.text-alternatives", "wcag412", "wcag2a", "TTv5", "TT12.d"],
"actIds": ["4b1c6c"],
"metadata": {
"description": "Ensures <iframe> and <frame> elements contain a unique title attribute",
Expand Down
2 changes: 1 addition & 1 deletion lib/rules/frame-title.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"section508",
"section508.22.i",
"TTv5",
"TT12.c"
"TT12.d"
],
"actIds": ["cae760"],
"metadata": {
Expand Down
2 changes: 1 addition & 1 deletion lib/rules/meta-refresh.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"id": "meta-refresh",
"selector": "meta[http-equiv=\"refresh\"][content]",
"excludeHidden": false,
"tags": ["cat.time-and-media", "wcag2a", "wcag221", "TTv5", "TT2.c"],
"tags": ["cat.time-and-media", "wcag2a", "wcag221", "TTv5", "TT8.a"],
"actIds": ["bc659a", "bisz58"],
"metadata": {
"description": "Ensures <meta http-equiv=\"refresh\"> is not used for delayed refresh",
Expand Down
2 changes: 1 addition & 1 deletion lib/rules/nested-interactive.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"id": "nested-interactive",
"matches": "nested-interactive-matches",
"tags": ["cat.keyboard", "wcag2a", "wcag412", "TTv5", "TT4.a"],
"tags": ["cat.keyboard", "wcag2a", "wcag412", "TTv5", "TT6.a"],
"actIds": ["307n5z"],
"metadata": {
"description": "Ensures interactive controls are not nested as they are not always announced by screen readers or can cause focus problems for assistive technologies",
Expand Down
2 changes: 1 addition & 1 deletion lib/rules/scrollable-region-focusable.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"id": "scrollable-region-focusable",
"selector": "*:not(select,textarea)",
"matches": "scrollable-region-focusable-matches",
"tags": ["cat.keyboard", "wcag2a", "wcag211"],
"tags": ["cat.keyboard", "wcag2a", "wcag211", "TTv5", "TT4.a"],
"actIds": ["0ssw9k"],
"metadata": {
"description": "Ensure elements that have scrollable content are accessible by keyboard",
Expand Down
4 changes: 3 additions & 1 deletion lib/rules/server-side-image-map.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,9 @@
"wcag2a",
"wcag211",
"section508",
"section508.22.f"
"section508.22.f",
"TTv5",
"TT4.a"
],
"metadata": {
"description": "Ensures that server-side image maps are not used",
Expand Down
10 changes: 9 additions & 1 deletion lib/rules/td-headers-attr.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,15 @@
"id": "td-headers-attr",
"selector": "table",
"matches": "table-or-grid-role-matches",
"tags": ["cat.tables", "wcag2a", "wcag131", "section508", "section508.22.g"],
"tags": [
"cat.tables",
"wcag2a",
"wcag131",
"section508",
"section508.22.g",
"TTv5",
"TT14.b"
],
"actIds": ["a25f45"],
"metadata": {
"description": "Ensure that each cell in a table that uses the headers attribute refers only to other cells in that table",
Expand Down
5 changes: 4 additions & 1 deletion lib/standards/aria-roles.js
Original file line number Diff line number Diff line change
Expand Up @@ -631,11 +631,14 @@ const ariaRoles = {
// Note: since the slider role has implicit
// aria-orientation, aria-valuemax, aria-valuemin values it
// is not required to be added by the user
// Note: aria-required is not in the 1.1 or 1.2 specs but is
// consistently supported in ATs
allowedAttrs: [
'aria-valuemax',
'aria-valuemin',
'aria-orientation',
'aria-readonly',
'aria-required',
'aria-valuetext'
],
superclassRole: ['input', 'range'],
Expand Down Expand Up @@ -686,7 +689,7 @@ const ariaRoles = {
switch: {
type: 'widget',
requiredAttrs: ['aria-checked'],
allowedAttrs: ['aria-readonly'],
allowedAttrs: ['aria-readonly', 'aria-required'],
superclassRole: ['checkbox'],
accessibleNameRequired: true,
nameFromContent: true,
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "axe-core",
"description": "Accessibility engine for automated Web UI testing",
"version": "4.7.1",
"version": "4.7.2",
"license": "MPL-2.0",
"engines": {
"node": ">=4"
Expand Down
4 changes: 4 additions & 0 deletions sri-history.json
Original file line number Diff line number Diff line change
Expand Up @@ -346,5 +346,9 @@
"4.7.1": {
"axe.js": "sha256-1ruJfhOP+fO+uuQiIs1U9P4ILYOxnFc5MCH7LzaH+Lc=",
"axe.min.js": "sha256-ReDVBpTYnDCOjYC3eTfhCwsWtAcleTtuoekVW8eoU38="
},
"4.7.2": {
"axe.js": "sha256-EE+7F84cDAG4yvmWb/Cbb3WmQaNAGj4FwU4cKxJZqjg=",
"axe.min.js": "sha256-VTWaX4yE65/ofnyeohwMLLKvU1GEYDoWOCbKlcqFMs8="
}
}
Loading

0 comments on commit b4f78df

Please sign in to comment.