this.context = context || {};
}
-function rebuild(tokens, keepBreaks) {
+function rebuild(tokens, keepBreaks, isFlatBlock) {
+ var joinCharacter = isFlatBlock ? ';' : (keepBreaks ? lineBreak : '');
+
return tokens
.map(function (token) {
if (typeof token === 'string')
}
})
.filter(function (value) { return value.length > 0; })
- .join(keepBreaks ? lineBreak : '')
+ .join(joinCharacter)
.trim();
}
if (!this.options.noAdvanced)
new AdvancedOptimizer(this.options, this.context).optimize(tokens);
- return rebuild(tokens, this.options.keepBreaks);
+ return rebuild(tokens, this.options.keepBreaks, false);
};
module.exports = SelectorsOptimizer;
context.mode = oldMode;
- tokenized.push({ block: block, body: specialBody });
+ tokenized.push({ block: block, body: specialBody, isFlatBlock: isFlat });
}
} else if (what == 'escape') {
nextEnd = chunk.indexOf('__', nextSpecial + 1);
],
'media query': [
'@media (min-width:980px){}',
- [{ block: '@media (min-width:980px)', body: [] }]
+ [{ block: '@media (min-width:980px)', body: [], isFlatBlock: false }]
],
'media query with selectors': [
'@media (min-width:980px){a{color:red}}',
- [{ block: '@media (min-width:980px)', body: [{ selector: ['a'], body: ['color:red'] }] }]
+ [{ block: '@media (min-width:980px)', body: [{ selector: ['a'], body: ['color:red'] }], isFlatBlock: false }]
],
'media query spanning more than one chunk': [
'@media only screen and (max-width:1319px) and (min--moz-device-pixel-ratio:1.5),only screen and (max-width:1319px) and (-moz-min-device-pixel-ratio:1.5){a{color:#000}}',
- [{ block: '@media only screen and (max-width:1319px) and (min--moz-device-pixel-ratio:1.5),only screen and (max-width:1319px) and (-moz-min-device-pixel-ratio:1.5)', body: [{ selector: ['a'], body: ['color:#000'] }] }]
+ [{ block: '@media only screen and (max-width:1319px) and (min--moz-device-pixel-ratio:1.5),only screen and (max-width:1319px) and (-moz-min-device-pixel-ratio:1.5)', body: [{ selector: ['a'], body: ['color:#000'] }], isFlatBlock: false }]
],
'font-face': [
'@font-face{font-family: fontName;font-size:12px}',
- [{ block: '@font-face', body: ['font-family:fontName', 'font-size:12px'] }]
+ [{ block: '@font-face', body: ['font-family:fontName', 'font-size:12px'], isFlatBlock: true }]
],
'charset': [
'@charset \'utf-8\';a{color:red}',