function headingMatches(node) { // Get all valid roles let explicitRoles; if (node.hasAttribute('role')) { explicitRoles = node .getAttribute('role') .split(/\s+/i) .filter(axe.commons.aria.isValidRole); } // Check valid roles if there are any, otherwise fall back to the inherited role if (explicitRoles && explicitRoles.length > 0) { return explicitRoles.includes('heading'); } else { return axe.commons.aria.implicitRole(node) === 'heading'; } } export default headingMatches;