UNPKG

stylelint

Version:

A mighty, modern CSS linter.

32 lines (25 loc) 629 B
/* @flow */ 'use strict'; const hasInterpolation = require('../utils/hasInterpolation'); /** * Check whether a selector is standard */ module.exports = function(selector /*: string*/) /*: boolean*/ { // SCSS or Less interpolation if (hasInterpolation(selector)) { return false; } // SCSS placeholder selectors if (selector.indexOf('%') === 0) { return false; } // Less :extend() if (/:extend(\(.*?\))?/.test(selector)) { return false; } // Less mixin with resolved nested selectors (e.g. .foo().bar or .foo(@a, @b)[bar]) if (/\.[a-z0-9-_]+\(.*\).+/i.test(selector)) { return false; } return true; };