selector-exists.js 555 B

12345678910111213141516171819202122232425
  1. var utils = require('../utils');
  2. /**
  3. * Returns true if the given selector exists.
  4. *
  5. * @param {String} sel
  6. * @return {Boolean}
  7. * @api public
  8. */
  9. function selectorExists(sel) {
  10. utils.assertString(sel, 'selector');
  11. if (!this.__selectorsMap__) {
  12. var Normalizer = require('../visitor/normalizer')
  13. , visitor = new Normalizer(this.root.clone());
  14. visitor.visit(visitor.root);
  15. this.__selectorsMap__ = visitor.map;
  16. }
  17. return sel.string in this.__selectorsMap__;
  18. }
  19. selectorExists.params = ['sel'];
  20. module.exports = selectorExists;