stylelint
Version:
A mighty, modern CSS linter.
45 lines (32 loc) • 753 B
JavaScript
/* @flow */
;
module.exports = function(statement /*: Object*/, options /*:: ?: Object*/) /*: string*/ {
options = options || {};
let result = '';
let rule; /*?: postcss$rule*/
let atRule; /*?: postcss$atRule*/
if (statement.type === 'rule') {
rule = statement;
}
if (statement.type === 'atrule') {
atRule = statement;
}
if (!rule && !atRule) {
return result;
}
const before = statement.raws.before || '';
if (!options.noRawBefore) {
result += before;
}
if (rule) {
result += rule.selector;
}
if (atRule) {
result += '@' + atRule.name + (atRule.raws.afterName || '') + atRule.params;
}
const between = statement.raws.between;
if (between !== undefined) {
result += between;
}
return result;
};