You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
591 B
22 lines
591 B
|
|
var cssHelpers = require('./css-helpers');
|
|
var selectorUniqueMatches = require('./selector-unique-matches');
|
|
|
|
/**
|
|
* dot followed by an identifier
|
|
* @type {RegExp}
|
|
*/
|
|
var rClassInSelector = new RegExp('\\.(' + cssHelpers.rIdentifier.source + ')',
|
|
'gm');
|
|
|
|
/**
|
|
* Extracts classes from CSS rules (as AST)
|
|
* @param {Object} rules
|
|
* @return {string[]} list of ids in those rules
|
|
*/
|
|
function extractClassesFromRules(rules) {
|
|
var classes = selectorUniqueMatches(rules, rClassInSelector);
|
|
return classes.map(cssHelpers.unescapeIdentifier);
|
|
}
|
|
|
|
module.exports = extractClassesFromRules;
|
|
|