@uuv/a11y
Version:
A javascript lib for running a11y validation based on multiple reference(RGAA, etc)
26 lines (25 loc) • 899 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.AndQuery = void 0;
const lodash_1 = __importDefault(require("lodash"));
const DOM_NODE_ATTRIBUTE = "domNode";
class AndQuery {
queries;
constructor(queries) {
this.queries = queries;
}
execute() {
const queryResults = this.queries.map(query => query.execute());
return queryResults.reduce((left, right) => {
return lodash_1.default.intersectionBy(left, right, DOM_NODE_ATTRIBUTE);
});
}
getSelector() {
const result = this.queries.map(query => query.execute());
return `${lodash_1.default.intersection(...result).map(query => query.domNode).join(",")}`;
}
}
exports.AndQuery = AndQuery;