all files / src/Match/ Matcher.js

100% Statements 11/11
100% Branches 8/8
100% Functions 1/1
100% Lines 11/11
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22              2288× 2764× 297× 2467× 2467× 334× 2133×   2288×      
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const Match_1 = require("./Match");
class Matcher {
    /**
     * @param [keySelectorOnly=true] When false, this selector can match against
     *   any compound selector in the parsed selector.
     */
    matchSelector(selectable, parsedSelector, keySelectorOnly) {
        let matched = parsedSelector.eachCompoundSelector((selector) => {
            if (selector !== parsedSelector.key && keySelectorOnly)
                return;
            let match = this.matchSelectorComponent(selectable, selector);
            if (Match_1.matches(match))
                return match;
            return;
        });
        return matched || Match_1.Match.no;
    }
}
exports.Matcher = Matcher;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9NYXRjaC9NYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0EsbUNBQXlDO0FBTXpDO0lBRUU7OztPQUdHO0lBQ0gsYUFBYSxDQUFDLFVBQWdCLEVBQUUsY0FBOEIsRUFBRSxlQUF3QjtRQUN0RixJQUFJLE9BQU8sR0FBRyxjQUFjLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUM3RCxJQUFJLFFBQVEsS0FBSyxjQUFjLENBQUMsR0FBRyxJQUFJLGVBQWU7Z0JBQUUsT0FBTztZQUMvRCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzlELElBQUksZUFBTyxDQUFDLEtBQUssQ0FBQztnQkFBRSxPQUFPLEtBQUssQ0FBQztZQUNqQyxPQUFPO1FBQ1QsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE9BQU8sSUFBSSxhQUFLLENBQUMsRUFBRSxDQUFDO0lBQzdCLENBQUM7Q0FNRjtBQXBCRCwwQkFvQkMifQ==