apply changes from #16340 and #16341

pull/16345/head
ComputerGuy 2 months ago
parent 389cc32826
commit 7df34a3554

@ -36,7 +36,9 @@ import { roles as roles_map, aria } from 'aria-query';
import { AXObjectRoles, elementAXObjects } from 'axobject-query'; import { AXObjectRoles, elementAXObjects } from 'axobject-query';
import { import {
regex_heading_tags, regex_heading_tags,
regex_js_prefix,
regex_not_whitespace, regex_not_whitespace,
regex_redundant_img_alt,
regex_starts_with_vowel, regex_starts_with_vowel,
regex_whitespaces regex_whitespaces
} from '../../../../patterns.js'; } from '../../../../patterns.js';
@ -533,7 +535,9 @@ export function check_element(node, context) {
} }
// no-autofocus // no-autofocus
case 'autofocus': { case 'autofocus': {
w.a11y_autofocus(attribute); if (node.name !== 'dialog' && !is_parent(context.path, ['dialog'])) {
w.a11y_autofocus(attribute);
}
break; break;
} }
// scope // scope
@ -673,7 +677,7 @@ export function check_element(node, context) {
if (href) { if (href) {
const href_value = get_static_text_value(href); const href_value = get_static_text_value(href);
if (href_value !== null) { if (href_value !== null) {
if (href_value === '' || href_value === '#' || /^\W*javascript:/i.test(href_value)) { if (href_value === '' || href_value === '#' || regex_js_prefix.test(href_value)) {
w.a11y_invalid_attribute(href, href_value, href.name); w.a11y_invalid_attribute(href, href_value, href.name);
} }
} }
@ -715,7 +719,7 @@ export function check_element(node, context) {
const alt_attribute = get_static_text_value(attribute_map.get('alt')); const alt_attribute = get_static_text_value(attribute_map.get('alt'));
const aria_hidden = get_static_value(attribute_map.get('aria-hidden')); const aria_hidden = get_static_value(attribute_map.get('aria-hidden'));
if (alt_attribute && !aria_hidden && !has_spread) { if (alt_attribute && !aria_hidden && !has_spread) {
if (/\b(image|picture|photo)\b/i.test(alt_attribute)) { if (regex_redundant_img_alt.test(alt_attribute)) {
w.a11y_img_redundant_alt(node); w.a11y_img_redundant_alt(node);
} }
} }

@ -23,3 +23,5 @@ export const regex_heading_tags = /^h[1-6]$/;
export const regex_illegal_attribute_character = /(^[0-9-.])|[\^$@%&#?!|()[\]{}^*+~;]/; export const regex_illegal_attribute_character = /(^[0-9-.])|[\^$@%&#?!|()[\]{}^*+~;]/;
export const regex_bidirectional_control_characters = export const regex_bidirectional_control_characters =
/[\u202a\u202b\u202c\u202d\u202e\u2066\u2067\u2068\u2069]+/g; /[\u202a\u202b\u202c\u202d\u202e\u2066\u2067\u2068\u2069]+/g;
export const regex_js_prefix = /^\W*javascript:/i;
export const regex_redundant_img_alt = /\b(image|picture|photo)\b/i;

Loading…
Cancel
Save