swc_css_minifier/compressor/
frequency.rs1use swc_atoms::atom;
2use swc_css_ast::*;
3
4use super::Compressor;
5
6impl Compressor {
7 pub(super) fn compress_frequency(&mut self, frequency: &mut Frequency) {
8 match &*frequency.unit.value {
9 "hz" if frequency.value.value > 0.0 && frequency.value.value % 1000.0 == 0.0 => {
10 let new_value = frequency.value.value / 1000.0;
11
12 frequency.value = Number {
13 span: frequency.value.span,
14 value: new_value,
15 raw: None,
16 };
17 frequency.unit = Ident {
18 span: frequency.unit.span,
19 value: atom!("khz"),
20 raw: None,
21 };
22 }
23 "khz"
24 if frequency.value.value == 0.0
25 || (frequency.value.value > 0.0 && frequency.value.value < 0.1) =>
26 {
27 let new_value = frequency.value.value * 1000.0;
28
29 frequency.value = Number {
30 value: new_value,
31 raw: None,
32 span: frequency.span,
33 };
34 frequency.unit = Ident {
35 span: frequency.unit.span,
36 value: atom!("hz"),
37 raw: None,
38 };
39 }
40 _ => {}
41 }
42 }
43}