From b3fbfd94dfaaab9f6e600935926b46810f52a0dc Mon Sep 17 00:00:00 2001 From: raivaibhav Date: Sat, 9 Oct 2021 17:42:01 +0530 Subject: [PATCH] Minify mediaquery node --- src/compiler/compile/css/Stylesheet.ts | 55 +++++++++++++------------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/src/compiler/compile/css/Stylesheet.ts b/src/compiler/compile/css/Stylesheet.ts index c4b7105021..f02b432bf3 100644 --- a/src/compiler/compile/css/Stylesheet.ts +++ b/src/compiler/compile/css/Stylesheet.ts @@ -321,37 +321,38 @@ class Atrule { if (i > 0) { code.overwrite(c, child.start, ' '); } + if (parent && parent.type === 'MediaFeature') { + const char_at_start = code.original[parent.start]; + const char_at_end = code.original[parent.end - 1]; + if (node) { + code.overwrite(parent.start, node.start , `${char_at_start}${parent.name}:${format ? ' ' : ''}`, { contentOnly: true}); + let value = ''; + switch (node.type) { + case 'Number' : + value = node.value; + break; + case 'Identifier': + value = node.name; + break; + case 'Dimension': + value = `${node.value}${node.unit}`; + break; + case 'Ratio': + value = `${node.start}/${node.left}`; + break; + default: + value = ''; + } + code.overwrite(node.start, parent.end, `${value}${char_at_end}`, { contentOnly: true }); + } else { + code.overwrite(parent.start, parent.end , `${char_at_start}${parent.name}${char_at_end}`, { contentOnly: true }); + } + } c = child.end; } }); } - if (parent && parent.type === 'MediaFeature') { - const char_at_start = code.original[parent.start]; - const char_at_end = code.original[parent.end - 1]; - if (node) { - code.overwrite(parent.start, node.start , `${char_at_start}${parent.name}:${format ? ' ' : ''}`, { contentOnly: true}); - let value = ''; - switch (node.type) { - case 'Number' : - value = node.value; - break; - case 'Identifier': - value = node.name; - break; - case 'Dimension': - value = `${node.value}${node.unit}`; - break; - case 'Ratio': - value = `${node.start}/${node.left}`; - break; - default: - value = ''; - } - code.overwrite(node.start, parent.end, `${value}${char_at_end}`, { contentOnly: true }); - } else { - code.overwrite(parent.start, parent.end , `${char_at_start}${parent.name}${char_at_end}`, { contentOnly: true }); - } - } + } }); }