655 B
655 B
Fix unstable template literals with embedded languages (#13532 by @thorn0)
If a template literal with embedded syntax is the only argument of a call or the body of an arrow function and has leading and trailing whitespace, it won't be printed on a new line.
// Input
foo(/* HTML */ ` <!-- bar1 --> bar <!-- bar2 --> `);
// Prettier stable (first output)
foo(
/* HTML */ `
<!-- bar1 -->
bar
<!-- bar2 -->
`
);
// Prettier stable (second output)
foo(/* HTML */ `
<!-- bar1 -->
bar
<!-- bar2 -->
`);
// Prettier main (first output)
foo(/* HTML */ `
<!-- bar1 -->
bar
<!-- bar2 -->
`);