Skip to content

Commit 627c1cc

Browse files
intellildSyMind
andauthored
fix: minify zero-valued translate3d in a single pass (#5)
Co-authored-by: Cong-Cong Pan <dacongsama@live.com>
1 parent ec96a51 commit 627c1cc

2 files changed

Lines changed: 65 additions & 1 deletion

File tree

‎src/lib.rs‎

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15090,6 +15090,70 @@ mod tests {
1509015090
);
1509115091
}
1509215092

15093+
#[test]
15094+
fn test_zero_translate3d() {
15095+
minify_test(
15096+
indoc! {"
15097+
.foo {
15098+
transform: translate3d(0, 0, 0);
15099+
}
15100+
"},
15101+
".foo{transform:translate(0)}",
15102+
);
15103+
minify_test(
15104+
indoc! {"
15105+
.foo {
15106+
transform: translate3d(0px, -0%, 0em);
15107+
}
15108+
"},
15109+
".foo{transform:translate(0)}",
15110+
);
15111+
minify_test(
15112+
indoc! {"
15113+
.foo {
15114+
transform: translate3d(0%, 0px, -0px);
15115+
}
15116+
"},
15117+
".foo{transform:translate(0%)}",
15118+
);
15119+
minify_test(
15120+
indoc! {"
15121+
.foo {
15122+
transform: translate3d(calc(1px - 1px), 0, 0) rotate(30deg);
15123+
}
15124+
"},
15125+
".foo{transform:translate(0)rotate(30deg)}",
15126+
);
15127+
minify_test(
15128+
indoc! {"
15129+
.foo {
15130+
-webkit-transform: translate3d(0, 0, 0);
15131+
}
15132+
"},
15133+
".foo{-webkit-transform:translate(0)}",
15134+
);
15135+
minify_test(
15136+
indoc! {"
15137+
.foo {
15138+
transform: translate3d(0, 0, var(--z));
15139+
}
15140+
"},
15141+
".foo{transform:translate3d(0, 0, var(--z))}",
15142+
);
15143+
test(
15144+
indoc! {"
15145+
.foo {
15146+
transform: translate3d(0, 0, 0);
15147+
}
15148+
"},
15149+
indoc! {"
15150+
.foo {
15151+
transform: translate3d(0, 0, 0);
15152+
}
15153+
"},
15154+
);
15155+
}
15156+
1509315157
#[test]
1509415158
pub fn test_gradients() {
1509515159
property_range_test(&["clip-path"], &[("circle(-1px)", None), ("ellipse(1px -2%)", None)]);

‎src/properties/transform.rs‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1057,7 +1057,7 @@ impl ToCss for Transform {
10571057
Ok(())
10581058
}
10591059
Translate3d(x, y, z) => {
1060-
if dest.options().minify && !x.is_zero() && y.is_zero() && z.is_zero() {
1060+
if dest.options().minify && y.is_zero() && z.is_zero() {
10611061
dest.write_str("translate(")?;
10621062
x.to_css(dest)?;
10631063
} else if dest.options().minify && x.is_zero() && !y.is_zero() && z.is_zero() {

0 commit comments

Comments
 (0)