Remove extra group around object properties (#19310)

This commit is contained in:
fisker Cheung authored and GitHub committed 2026-06-08 20:46:59 +08:00
1 parent 4918a06e32
commit e8900da916
5 files changed
+151 -5

No files matched your search

+20
View File
@@ -0,0 +1,20 @@
#### Improve formatting of comments in objects (#19310 by @fisker)
<!-- prettier-ignore -->
```jsx
// Input
const P = {/** X */
Y: "z",
}
// Prettier stable
const P = {
/** X */ Y: "z",
};
// Prettier main
const P = {
/** X */
Y: "z",
};
```
+1 -1
View File
@@ -105,7 +105,7 @@ function printObject(path, options, print) {
/** @type {Doc[]} */
let separatorParts = [];
const parts = path.map(({ node }) => {
const result = [...separatorParts, group(print())];
const result = [...separatorParts, print()];
separatorParts = [",", line];
if (isNextLineEmpty(node, options)) {
separatorParts.push(hardline);
@@ -6598,7 +6598,8 @@ var a = { /* comment */
b };
=====================================output=====================================
var a = {
/* comment */ b,
/* comment */
b,
}
================================================================================
@@ -6613,7 +6614,8 @@ var a = { /* comment */
b };
=====================================output=====================================
var a = {
/* comment */ b,
/* comment */
b,
};
================================================================================
@@ -6629,7 +6631,8 @@ var a = { /* comment */
b };
=====================================output=====================================
var a = {
/* comment */ b,
/* comment */
b,
}
================================================================================
@@ -6644,7 +6647,8 @@ var a = { /* comment */
b };
=====================================output=====================================
var a = {
/* comment */ b,
/* comment */
b,
};
================================================================================
@@ -0,0 +1,35 @@
o = {/** X */
Y: "z",
}
o = {// X
Y: "z",
}
o = {
/** X */
Y: "z",
}
o = {
/** X */ Y: "z",
}
o = {/** X */
Y: "z",
/** X */ Z: 1,
}
type T1 = {/** X */
Y: "z",
}
type T2 = {// X
Y: "z",
}
type T3 = {
/** X */
Y: "z",
}
type T4 = {
/** X */ Y: "z",
}
type T5 = {/** X */
Y: "z",
/** X */ Z: 1,
}
@@ -50,3 +50,90 @@ o = /** K */ {
================================================================================
`;
exports[`11308.ts format 1`] = `
====================================options=====================================
parsers: ["typescript"]
printWidth: 80 (default) |
=====================================input======================================
o = {/** X */
Y: "z",
}
o = {// X
Y: "z",
}
o = {
/** X */
Y: "z",
}
o = {
/** X */ Y: "z",
}
o = {/** X */
Y: "z",
/** X */ Z: 1,
}
type T1 = {/** X */
Y: "z",
}
type T2 = {// X
Y: "z",
}
type T3 = {
/** X */
Y: "z",
}
type T4 = {
/** X */ Y: "z",
}
type T5 = {/** X */
Y: "z",
/** X */ Z: 1,
}
=====================================output=====================================
o = {
/** X */
Y: "z",
};
o = {
// X
Y: "z",
};
o = {
/** X */
Y: "z",
};
o = {
/** X */ Y: "z",
};
o = {
/** X */
Y: "z",
/** X */ Z: 1,
};
type T1 = {
/** X */
Y: "z";
};
type T2 = {
// X
Y: "z";
};
type T3 = {
/** X */
Y: "z";
};
type T4 = {
/** X */ Y: "z";
};
type T5 = {
/** X */
Y: "z";
/** X */ Z: 1;
};
================================================================================
`;