blob: b2f4e98cc17164b587f15886c64d87e6793c276b [file] [log] [blame]
/* @flow */
"use strict";
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;
};