glance-dom
Version:
Glance DOM library
60 lines (45 loc) • 1.47 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _log = require('../../utils/log');
var _log2 = _interopRequireDefault(_log);
var _filter = require('@arr/filter');
var _filter2 = _interopRequireDefault(_filter);
var _some = require('@arr/some');
var _some2 = _interopRequireDefault(_some);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = {
options: {
'lowest-level-matches': {
check: function check(_ref) {
var options = _ref.options;
return !options.includes('highest-level-matches');
},
filter: function closestdom(_ref2) {
var elements = _ref2.elements;
_log2.default.debug('Filtering for the lowest level matches');
return (0, _filter2.default)(elements, function (element) {
return !(0, _some2.default)(elements, function (e) {
return element !== e && element.contains(e);
});
});
}
},
'highest-level-matches': {
check: function check(_ref3) {
var options = _ref3.options;
return !options.includes('lowest-level-matches');
},
filter: function closestdom(_ref4) {
var elements = _ref4.elements;
_log2.default.debug('Filtering for the highest level matches');
return (0, _filter2.default)(elements, function (element) {
return (0, _some2.default)(elements, function (e) {
return element !== e && !e.contains(element);
});
});
}
}
}
};