Sha256: 589d3ac35472809539f5352921d3cbafbdee7e0d27b3efdc8da0a5f9a63e98a8
Contents?: true
Size: 894 Bytes
Versions: 114
Compression:
Stored size: 894 Bytes
Contents
/** * Applicability: * Rule applies to any element that has * a) a semantic role that is `widget` that supports name from content * b) has visible text content * c) has accessible name (eg: `aria-label`) */ const { aria, text } = axe.commons; const role = aria.getRole(node); if (!role) { return false; } const isWidgetType = aria.lookupTable.rolesOfType.widget.includes(role); if (!isWidgetType) { return false; } const rolesWithNameFromContents = aria.getRolesWithNameFromContents(); if (!rolesWithNameFromContents.includes(role)) { return false; } /** * if no `aria-label` or `aria-labelledby` attribute - ignore `node` */ if ( !text.sanitize(aria.arialabelText(node)) && !text.sanitize(aria.arialabelledbyText(node)) ) { return false; } /** * if no `contentText` - ignore `node` */ if (!text.sanitize(text.visibleVirtual(virtualNode))) { return false; } return true;
Version data entries
114 entries across 114 versions & 1 rubygems