## Overall Metrics
**Average compatibility**: 96.75
Definition
$$average = \frac\{\sum_{file}^\{files}compatibility_\{file}}\{files}$$
**Compatible lines**: 97.32
Definition
$$average = \frac{\sum_{file}^{files}matching\_lines_{file}}{max(lines_{rome}, lines_{prettier})}$$
[Metric definition discussion](https://github.com/rome/tools/issues/2555#issuecomment-1124787893)
## Test cases
### js/array-spread/multiple.js
**Prettier Similarity**: 100.00%
### js/arrays/empty.js
**Prettier Similarity**: 100.00%
### js/arrays/holes-in-args.js
**Prettier Similarity**: 100.00%
### js/arrays/issue-10159.js
```diff
{
for (const srcPath of [src, `${src}.js`, `${src}/index`, `${src}/index.js`]) {
}
}
{
for (const srcPath of [123, 123_123_123, 123_123_123_1, 13_123_3123_31_43]) {
}
}
{
- for (const srcPath of [123, 123_123_123, 123_123_123_1, 13_123_3123_31_432]) {
+ for (const srcPath of [
+ 123, 123_123_123, 123_123_123_1, 13_123_3123_31_432,
+ ]) {
}
}
{
for (const srcPath of [
123, 123_123_123, 123_123_123_1, 13_123_3123_31_4321,
]) {
}
}
```
**Prettier Similarity**: 85.00%
### js/arrays/last.js
**Prettier Similarity**: 100.00%
### js/arrays/nested.js
**Prettier Similarity**: 100.00%
### js/arrays/numbers-in-args.js
**Prettier Similarity**: 100.00%
### js/arrays/numbers-in-assignment.js
**Prettier Similarity**: 100.00%
### js/arrays/numbers-negative-comment-after-minus.js
**Prettier Similarity**: 100.00%
### js/arrays/numbers-negative.js
```diff
const numbers1 = [
-2017, -506252, -744011292, -7224, -70.4, -83353.6, -708.4, -174023963.52,
-40385,
// comment1
- -380014, -253951682, -728, -15.84, -2058467564.56, -43, -33, -85134845,
- -67092, -1, -78820379, -2371.6, -16, 7,
+ -380014,
+ -253951682, -728, -15.84, -2058467564.56, -43, -33, -85134845, -67092, -1,
+ -78820379, -2371.6, -16, 7,
// comment2
- -62454, -4282239912, -10816495.36, 0.88, -100622682, 8.8, -67087.68000000001,
+ -62454,
+ -4282239912, -10816495.36, 0.88, -100622682, 8.8, -67087.68000000001,
-3758276, -25.5211, -54, -1184265243, -46073628, -280423.44, -41833463,
-27961.12, -305.36, -199875.28,
];
const numbers2 = [
-234,
-342, // comment3
-223,
-333333.33,
12345,
];
```
**Prettier Similarity**: 76.19%
### js/arrays/numbers-trailing-comma.js
**Prettier Similarity**: 100.00%
### js/arrays/numbers-with-holes.js
```diff
const numberWithHoles1 = [
7234932941,
7234932722,
7234932312,
,
// comment before a hole 1
7234932841,
,
7234932843,
,
// comment after a hole 1
7234932436,
];
const numberWithHoles2 = [
0x234932941,
0x234932722,
0x234932312,
-
,
// comment before a hole 2
0x234932841,
,
0x234932843,
,
+
// comment after a hole 2
0x234932436,
];
```
**Prettier Similarity**: 96.43%
### js/arrays/numbers-with-trailing-comments.js
**Prettier Similarity**: 100.00%
### js/arrays/numbers-with-tricky-comments.js
```diff
const lazyCatererNumbers = [
1, 2, 4, 7, 11, 16, 22, 29, 37, 46, 56, 67, 79, 92, 106, 121, 137, 154, 172,
191, 211, 232, 254, 277, 301, 326, 352, 379, 407, 436, 466 /*block*/,
// line
- 497, 529, 562, 596, 631, 667, 704, 742, 781, 821, 862, 904, 947, 991, 1036,
- 1082, 1129, 1177, 1226,
+ 497,
+ 529, 562, 596, 631, 667, 704, 742, 781, 821, 862, 904, 947, 991, 1036, 1082,
+ 1129, 1177, 1226,
// line 2
- 1276, 1327, 1379,
+ 1276,
+ 1327, 1379,
];
```
**Prettier Similarity**: 54.55%
### js/arrays/numbers1.js
**Prettier Similarity**: 100.00%
### js/arrays/numbers2.js
**Prettier Similarity**: 100.00%
### js/arrays/numbers3.js
**Prettier Similarity**: 100.00%
### js/arrays/preserve_empty_lines.js
**Prettier Similarity**: 100.00%
### js/arrow-call/arrow_call.js
**Prettier Similarity**: 100.00%
### js/arrow-call/class-property.js
**Prettier Similarity**: 100.00%
### js/arrows/arrow-chain-with-trailing-comments.js
**Prettier Similarity**: 100.00%
### js/arrows/arrow_function_expression.js
**Prettier Similarity**: 100.00%
### js/arrows/assignment-chain-with-arrow-chain.js
**Prettier Similarity**: 100.00%
### js/arrows/block_like.js
**Prettier Similarity**: 100.00%
### js/arrows/call.js
**Prettier Similarity**: 100.00%
### js/arrows/chain-as-arg.js
**Prettier Similarity**: 100.00%
### js/arrows/chain-in-logical-expression.js
**Prettier Similarity**: 100.00%
### js/arrows/comment.js
**Prettier Similarity**: 100.00%
### js/arrows/curried.js
```diff
const fn1 = (a) => 3;
const fn2 = (a) => (b) => 3;
const fn3 = (a) => (b) => (c) => 3;
const fn4 = (a) => (b) => (c) => (d) => 3;
const fn5 = (a) => (b) => (c) => (d) => (e) => 3;
const fn6 = (a) => (b) => (c) => (d) => (e) => (g) => 3;
const fn7 = (a) => (b) => (c) => (d) => (e) => (g) => (f) => 3;
const fn8 = (a) => ({ foo: bar, bar: baz, baz: foo });
const fn9 = (a) => (b) => ({ foo: bar, bar: baz, baz: foo });
const fn10 = (a) => (b) => (c) => ({ foo: bar, bar: baz, baz: foo });
const fn11 = (a) => (b) => (c) => (d) => ({ foo: bar, bar: baz, baz: foo });
const fn12 = (a) => (b) => (c) => (d) => (e) => ({
foo: bar,
bar: baz,
baz: foo,
});
const fn13 = (a) => (b) => (c) => (d) => (e) => (g) => ({
foo: bar,
bar: baz,
baz: foo,
});
const fn14 = (a) => (b) => (c) => (d) => (e) => (g) => (f) => ({
foo: bar,
bar: baz,
baz: foo,
});
const curryTest =
(argument1) =>
(argument2) =>
(argument3) =>
(argument4) =>
(argument5) =>
(argument6) =>
(argument7) =>
(argument8) =>
(argument9) =>
(argument10) =>
(argument11) =>
(argument12) => ({
foo: argument1,
bar: argument2,
});
let curryTest2 =
(argument1) =>
(argument2) =>
(argument3) =>
(argument4) =>
(argument5) =>
(argument6) =>
(argument7) =>
(argument8) =>
(argument9) =>
(argument10) =>
(argument11) =>
(argument12) => {
const foo = "foo";
return foo + "bar";
};
curryTest2 =
(argument1) =>
(argument2) =>
(argument3) =>
(argument4) =>
(argument5) =>
(argument6) =>
(argument7) =>
(argument8) =>
(argument9) =>
(argument10) =>
(argument11) =>
(argument12) => {
const foo = "foo";
return foo + "bar";
};
throw (argument1) =>
(argument2) =>
(argument3) =>
(argument4) =>
(argument5) =>
(argument6) =>
(argument7) =>
(argument8) =>
(argument9) =>
(argument10) =>
(argument11) =>
(argument12) => {
const foo = "foo";
return foo + "bar";
};
foo(
(argument1) =>
(argument2) =>
(argument3) =>
(argument4) =>
(argument5) =>
(argument6) =>
(argument7) =>
(argument8) =>
(argument9) =>
(argument10) =>
(argument11) =>
(argument12) =>
3,
);
-foo(
- (argument1) =>
- (argument2) =>
- (argument3) =>
- (argument4) =>
- (argument5) =>
- (argument6) =>
- (argument7) =>
- (argument8) =>
- (argument9) =>
- (argument10) =>
- (argument11) =>
- (argument12) => ({
- foo: bar,
- bar: baz,
- baz: foo,
- }),
-);
+foo((argument1) =>
+ (argument2) =>
+ (argument3) =>
+ (argument4) =>
+ (argument5) =>
+ (argument6) =>
+ (argument7) =>
+ (argument8) =>
+ (argument9) =>
+ (argument10) =>
+ (argument11) =>
+ (argument12) => ({
+ foo: bar,
+ bar: baz,
+ baz: foo,
+ }));
-foo(
- (argument1) =>
- (argument2) =>
- (argument3) =>
- (argument4) =>
- (argument5) =>
- (argument6) =>
- (argument7) =>
- (argument8) =>
- (argument9) =>
- (argument10) =>
- (argument11) =>
- (argument12) => {
- const foo = "foo";
- return foo + "bar";
- },
-);
+foo((argument1) =>
+ (argument2) =>
+ (argument3) =>
+ (argument4) =>
+ (argument5) =>
+ (argument6) =>
+ (argument7) =>
+ (argument8) =>
+ (argument9) =>
+ (argument10) =>
+ (argument11) =>
+ (argument12) => {
+ const foo = "foo";
+ return foo + "bar";
+ });
(
(argument1) =>
(argument2) =>
(argument3) =>
(argument4) =>
(argument5) =>
(argument6) =>
(argument7) =>
(argument8) =>
(argument9) =>
(argument10) =>
(argument11) =>
(argument12) =>
3
)(3);
bar(
- foo(
- (argument1) =>
- (argument2) =>
- (argument3) =>
- (argument4) =>
- (argument5) =>
- (argument6) =>
- (argument7) =>
- (argument8) =>
- (argument9) =>
- (argument10) =>
- (argument11) =>
- (argument12) => ({
- foo: bar,
- bar: baz,
- }),
- ),
+ foo((argument1) =>
+ (argument2) =>
+ (argument3) =>
+ (argument4) =>
+ (argument5) =>
+ (argument6) =>
+ (argument7) =>
+ (argument8) =>
+ (argument9) =>
+ (argument10) =>
+ (argument11) =>
+ (argument12) => ({
+ foo: bar,
+ bar: baz,
+ })),
);
const baaaz =
(aaaaa1, bbbbb1) =>
(aaaaa2, bbbbb2) =>
(aaaaa3, bbbbb3) =>
(aaaaa4, bbbbb4) => ({
foo: bar,
});
new Fooooooooooooooooooooooooooooooooooooooooooooooooooo(
(action) => (next) => (next) => (next) => (next) => (next) => (next) =>
dispatch(action),
);
foo?.Fooooooooooooooooooooooooooooooooooooooooooooooooooo(
(action) => (next) => (next) => (next) => (next) => (next) => (next) =>
dispatch(action),
);
foo((action) => (action) => action);
-import(
- (argument1) =>
- (argument2) =>
- (argument3) =>
- (argument4) =>
- (argument5) =>
- (argument6) =>
- (argument7) =>
- (argument8) =>
- (argument9) =>
- (argument10) =>
- (argument11) =>
- (argument12) => {
- const foo = "foo";
- return foo + "bar";
- }
-);
+import((argument1) =>
+ (argument2) =>
+ (argument3) =>
+ (argument4) =>
+ (argument5) =>
+ (argument6) =>
+ (argument7) =>
+ (argument8) =>
+ (argument9) =>
+ (argument10) =>
+ (argument11) =>
+ (argument12) => {
+ const foo = "foo";
+ return foo + "bar";
+ });
```
**Prettier Similarity**: 68.78%
### js/arrows/currying-2.js
```diff
const a = (x) => (y) => (z) =>
x / 0.123456789 + (y * calculateSomething(z)) / Math.PI;
request.get("https://preview-9992--prettier.netlify.app", (head) => (body) => {
console.log(head, body);
});
-request.get(
- "https://preview-9992--prettier.netlify.app",
- (head) => (body) => (mody) => {
+request.get("https://preview-9992--prettier.netlify.app", (head) =>
+ (body) =>
+ (mody) => {
console.log(head, body);
- },
-);
+ });
-request.get(
- "https://preview-9992--prettier.netlify.app",
- (head) =>
- (body) =>
- (modyLoremIpsumDolorAbstractProviderFactoryServiceModule) => {
- console.log(head, body);
- },
-);
+request.get("https://preview-9992--prettier.netlify.app", (head) =>
+ (body) =>
+ (modyLoremIpsumDolorAbstractProviderFactoryServiceModule) => {
+ console.log(head, body);
+ });
```
**Prettier Similarity**: 40.91%
### js/arrows/currying-3.js
**Prettier Similarity**: 100.00%
### js/arrows/currying-4.js
```diff
Y(() => (a ? b : c));
Y(() => () => (a ? b : c));
Y(() => () => () => (a ? b : c));
Y(() =>
longlonglonglonglonglonglonglonglonglongCondition
? "Prettier is an opinionated code formatter."
: "Prettier takes your code and reprints it from scratch by taking the line length into account.",
);
Y(
() => () =>
longlonglonglonglonglonglonglonglonglongCondition
? "Prettier is an opinionated code formatter."
: "Prettier takes your code and reprints it from scratch by taking the line length into account.",
);
Y(
() => () => () =>
longlonglonglonglonglonglonglonglonglongCondition
? "Prettier is an opinionated code formatter."
: "Prettier takes your code and reprints it from scratch by taking the line length into account.",
);
const x1 = () => [
"The",
"green",
"dragon",
"liked",
"to",
"knit",
"sweaters",
"for",
"the",
"fluffy",
"clouds",
"in",
"the",
"sky.",
];
-const x2 = () => () => [
- "The",
- "green",
- "dragon",
- "liked",
- "to",
- "knit",
- "sweaters",
- "for",
- "the",
- "fluffy",
- "clouds",
- "in",
- "the",
- "sky.",
-];
+const x2 = () => () =>
+ [
+ "The",
+ "green",
+ "dragon",
+ "liked",
+ "to",
+ "knit",
+ "sweaters",
+ "for",
+ "the",
+ "fluffy",
+ "clouds",
+ "in",
+ "the",
+ "sky.",
+ ];
-const x3 = () => () => () => [
- "The",
- "green",
- "dragon",
- "liked",
- "to",
- "knit",
- "sweaters",
- "for",
- "the",
- "fluffy",
- "clouds",
- "in",
- "the",
- "sky.",
-];
+const x3 = () => () => () =>
+ [
+ "The",
+ "green",
+ "dragon",
+ "liked",
+ "to",
+ "knit",
+ "sweaters",
+ "for",
+ "the",
+ "fluffy",
+ "clouds",
+ "in",
+ "the",
+ "sky.",
+ ];
f((a) => (1, 2, 3) /* a */);
f((a) => (b) => (1, 2, 3) /* b */ /* a */);
-f((a) => (b) => (c) => (1, 2, 3) /* c */ /* b */ /* a */);
+f((a) => (b) => (c) => (1, 2, 3) /* b */ /* c */ /* a */);
f((a) => (1 ? 2 : 3) /* a */);
f((a) => (b) => (1 ? 2 : 3) /* b */ /* a */);
-f((a) => (b) => (c) => (1 ? 2 : 3) /* c */ /* b */ /* a */);
+f((a) => (b) => (c) => (1 ? 2 : 3) /* b */ /* c */ /* a */);
a(
"",
"",
({}) =>
() =>
() =>
() =>
() =>
() =>
() =>
test,
);
a(
"",
"",
({}) =>
() =>
() =>
() =>
() =>
() =>
() =>
test ? 1 : 2,
);
```
**Prettier Similarity**: 67.57%
### js/arrows/currying.js
**Prettier Similarity**: 100.00%
### js/arrows/issue-1389-curry.js
```diff
const foobar =
(argumentOne, argumentTwo, argumentThree) =>
(...restOfTheArguments) => {
return "baz";
};
const foobaz =
(argumentOne, argumentTwo, argumentThree) => (restOfTheArguments123, j) => {
return "baz";
};
-const makeSomeFunction =
- (services = { logger: null }) =>
- (a, b, c) =>
- services.logger(a, b, c);
+const makeSomeFunction = (services = { logger: null }) => (a, b, c) =>
+ services.logger(a, b, c);
const makeSomeFunction2 =
(
services = {
logger: null,
},
) =>
(a, b, c) =>
services.logger(a, b, c);
```
**Prettier Similarity**: 83.33%
### js/arrows/issue-4166-curry.js
**Prettier Similarity**: 100.00%
### js/arrows/long-call-no-args.js
**Prettier Similarity**: 100.00%
### js/arrows/long-contents.js
**Prettier Similarity**: 100.00%
### js/arrows/newline-before-arrow/newline-before-arrow.js
```diff
-async (x) => x;
+async;
+x;
+=> x
```
**Prettier Similarity**: 0.00%
### js/arrows/parens.js
**Prettier Similarity**: 100.00%
### js/arrows/semi/semi.js
**Prettier Similarity**: 100.00%
### js/assignment-comments/call.js
**Prettier Similarity**: 100.00%
### js/assignment-comments/call2.js
**Prettier Similarity**: 100.00%
### js/assignment-comments/function.js
**Prettier Similarity**: 100.00%
### js/assignment-comments/identifier.js
**Prettier Similarity**: 100.00%
### js/assignment-comments/number.js
**Prettier Similarity**: 100.00%
### js/assignment-comments/string.js
**Prettier Similarity**: 100.00%
### js/assignment-expression/assignment_expression.js
**Prettier Similarity**: 100.00%
### js/assignment/binaryish.js
**Prettier Similarity**: 100.00%
### js/assignment/call-with-template.js
**Prettier Similarity**: 100.00%
### js/assignment/chain-two-segments.js
**Prettier Similarity**: 100.00%
### js/assignment/chain.js
**Prettier Similarity**: 100.00%
### js/assignment/destructuring-array.js
**Prettier Similarity**: 100.00%
### js/assignment/destructuring-heuristic.js
**Prettier Similarity**: 100.00%
### js/assignment/destructuring.js
**Prettier Similarity**: 100.00%
### js/assignment/discussion-15196.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-10218.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-1419.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-15534.js
```diff
-params["redirectTo"] =
- `${window.location.pathname}${window.location.search}${window.location.hash}`;
+params[
+ "redirectTo"
+] = `${window.location.pathname}${window.location.search}${window.location.hash}`;
-params["redirectTo"]["codePointAt"]["name"] =
- `${window.location.pathname}${window.location.search}${window.location.hash}`;
+params["redirectTo"]["codePointAt"][
+ "name"
+] = `${window.location.pathname}${window.location.search}${window.location.hash}`;
-params.redirectTo.bar.bar.ba.barab["foo"].abr =
- `${window.location.pathname}${window.location.search}${window.location.hash}`;
+params.redirectTo.bar.bar.ba.barab[
+ "foo"
+].abr = `${window.location.pathname}${window.location.search}${window.location.hash}`;
```
**Prettier Similarity**: 18.18%
### js/assignment/issue-1966.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-2184.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-2482-1.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-2482-2.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-2540.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-3819.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-4094.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-5610.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-6922.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-7091.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-7572.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-7961.js
**Prettier Similarity**: 100.00%
### js/assignment/issue-8218.js
**Prettier Similarity**: 100.00%
### js/assignment/lone-arg.js
**Prettier Similarity**: 100.00%
### js/assignment/sequence.js
**Prettier Similarity**: 100.00%
### js/assignment/unary.js
**Prettier Similarity**: 100.00%
### js/async/async-iteration.js
**Prettier Similarity**: 100.00%
### js/async/async-shorthand-method.js
**Prettier Similarity**: 100.00%
### js/async/await-parse.js
**Prettier Similarity**: 100.00%
### js/async/conditional-expression.js
**Prettier Similarity**: 100.00%
### js/async/exponentiation.js
**Prettier Similarity**: 100.00%
### js/async/inline-await.js
**Prettier Similarity**: 100.00%
### js/async/nested.js
**Prettier Similarity**: 100.00%
### js/async/nested2.js
**Prettier Similarity**: 100.00%
### js/async/parens.js
**Prettier Similarity**: 100.00%
### js/async/simple-nested-await.js
**Prettier Similarity**: 100.00%
### js/big-int/literal.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/arrow.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/bitwise-flags.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/call.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/comment.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/equality.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/exp.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/if.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/in_instanceof.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/inline-object-array.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/like-regexp.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/math.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/return.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/short-right.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/test.js
**Prettier Similarity**: 100.00%
### js/binary-expressions/unary.js
**Prettier Similarity**: 100.00%
### js/binary_math/parens.js
**Prettier Similarity**: 100.00%
### js/bracket-spacing/array.js
**Prettier Similarity**: 100.00%
### js/bracket-spacing/object.js
**Prettier Similarity**: 100.00%
### js/break-calls/break.js
**Prettier Similarity**: 100.00%
### js/break-calls/parent.js
**Prettier Similarity**: 100.00%
### js/break-calls/react.js
**Prettier Similarity**: 100.00%
### js/break-calls/reduce.js
**Prettier Similarity**: 100.00%
### js/call/first-argument-expansion/expression-2nd-arg.js
**Prettier Similarity**: 100.00%
### js/call/first-argument-expansion/issue-12892.js
**Prettier Similarity**: 100.00%
### js/call/first-argument-expansion/issue-13237.js
**Prettier Similarity**: 100.00%
### js/call/first-argument-expansion/issue-14454.js
**Prettier Similarity**: 100.00%
### js/call/first-argument-expansion/issue-2456.js
**Prettier Similarity**: 100.00%
### js/call/first-argument-expansion/issue-4401.js
**Prettier Similarity**: 100.00%
### js/call/first-argument-expansion/issue-5172.js
**Prettier Similarity**: 100.00%
### js/call/first-argument-expansion/test.js
**Prettier Similarity**: 100.00%
### js/call/no-argument/special-cases.js
**Prettier Similarity**: 100.00%
### js/chain-expression/test.js
```diff
-(a?.b).c;
-(a?.()).b;
+a?.b.c;
+a?.().b;
-(a?.b)();
-(a?.())();
+a?.b();
+a?.()();
new (a?.b)();
new (a?.())();
```
**Prettier Similarity**: 50.00%
### js/class-comment/class-property.js
**Prettier Similarity**: 100.00%
### js/class-comment/misc.js
**Prettier Similarity**: 100.00%
### js/class-comment/superclass.js
**Prettier Similarity**: 100.00%
### js/class-extends/complex.js
**Prettier Similarity**: 100.00%
### js/class-extends/extends.js
**Prettier Similarity**: 100.00%
### js/class-static-block/class-static-block.js
**Prettier Similarity**: 100.00%
### js/class-static-block/with-line-breaks.js
**Prettier Similarity**: 100.00%
### js/classes-private-fields/optional-chaining.js
**Prettier Similarity**: 100.00%
### js/classes-private-fields/private_fields.js
**Prettier Similarity**: 100.00%
### js/classes-private-fields/with_comments.js
**Prettier Similarity**: 100.00%
### js/classes/asi.js
**Prettier Similarity**: 100.00%
### js/classes/assignment.js
**Prettier Similarity**: 100.00%
### js/classes/binary.js
**Prettier Similarity**: 100.00%
### js/classes/call.js
**Prettier Similarity**: 100.00%
### js/classes/class-fields-features.js
**Prettier Similarity**: 100.00%
### js/classes/empty.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/async.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/computed.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/get.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/private.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/set.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/static-async.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/static-get.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/static-set.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/static-static.js
**Prettier Similarity**: 100.00%
### js/classes/keyword-property/static.js
**Prettier Similarity**: 100.00%
### js/classes/member.js
**Prettier Similarity**: 100.00%
### js/classes/method.js
**Prettier Similarity**: 100.00%
### js/classes/new.js
**Prettier Similarity**: 100.00%
### js/classes/property.js
**Prettier Similarity**: 100.00%
### js/classes/super.js
**Prettier Similarity**: 100.00%
### js/classes/ternary.js
**Prettier Similarity**: 100.00%
### js/classes/top-level-super/example.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/binary-expr.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/closure-compiler-type-cast.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/comment-in-the-middle.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/comment-placement.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/extra-spaces-and-asterisks.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/iife-issue-5850-isolated.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/iife.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/issue-4124.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/issue-8045.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/issue-9358.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/member.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/nested.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/non-casts.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/object-with-comment.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/satisfies.js
```diff
-module.exports = /** @satisfies {Record} */ ({
+module.exports = /** @satisfies {Record} */ {
hello: 1337,
-});
+};
```
**Prettier Similarity**: 33.33%
### js/comments-closure-typecast/superclass.js
**Prettier Similarity**: 100.00%
### js/comments-closure-typecast/ways-to-specify-type.js
**Prettier Similarity**: 100.00%
### js/comments/arrow.js
**Prettier Similarity**: 100.00%
### js/comments/assignment-pattern.js
**Prettier Similarity**: 100.00%
### js/comments/before-comma.js
**Prettier Similarity**: 100.00%
### js/comments/binary-expressions-block-comments.js
**Prettier Similarity**: 100.00%
### js/comments/binary-expressions-parens.js
**Prettier Similarity**: 100.00%
### js/comments/binary-expressions-single-comments.js
**Prettier Similarity**: 100.00%
### js/comments/binary-expressions.js
**Prettier Similarity**: 100.00%
### js/comments/blank.js
**Prettier Similarity**: 100.00%
### js/comments/break-continue-statements.js
**Prettier Similarity**: 100.00%
### js/comments/call_comment.js
**Prettier Similarity**: 100.00%
### js/comments/class.js
**Prettier Similarity**: 100.00%
### js/comments/dangling.js
**Prettier Similarity**: 100.00%
### js/comments/dangling_array.js
**Prettier Similarity**: 100.00%
### js/comments/dangling_for.js
**Prettier Similarity**: 100.00%
### js/comments/dynamic_imports.js
**Prettier Similarity**: 100.00%
### js/comments/emoji.js
**Prettier Similarity**: 100.00%
### js/comments/empty-statements.js
```diff
-a; /* a */ // b
-/* c */
-foo; // first
-// second
-// third
-function x() {} // first
-// second
+a; /* a */ /* c */ // b
+
+foo; // first // second // third
+
+function x() {} // first // second
+
a =
- b + // 1
- // 2
- c + // 3
- // 4
- d + // 5
- /* 6 */
+ b + // 1 // 2
+ c + // 3 // 4
+ d /* 6 */ + // 5
e; // 7
```
**Prettier Similarity**: 13.33%
### js/comments/export-and-import.js
**Prettier Similarity**: 100.00%
### js/comments/export.js
```diff
export //comment
- {};
+{};
export /* comment */ {};
const foo = "";
export {
foo, // comment
};
const bar = "";
export {
// comment
bar,
};
const fooo = "";
const barr = "";
export {
fooo, // comment
barr, // comment
};
const foooo = "";
const barrr = "";
export {
foooo,
// comment
barrr as baz,
} from "foo";
const fooooo = "";
const barrrr = "";
export {
fooooo,
// comment
barrrr as bazz,
};
```
**Prettier Similarity**: 97.37%
### js/comments/first-line.js
**Prettier Similarity**: 100.00%
### js/comments/flow-types/inline.js
**Prettier Similarity**: 100.00%
### js/comments/function-declaration.js
**Prettier Similarity**: 100.00%
### js/comments/function/between-parentheses-and-function-body.js
```diff
function function_declaration() {
// this is a function
return 42;
}
-(function named() {
- // this is a function
- return 42;
-})();
+// FIXME
+// TODO: reformat issue
+// (function named()
+// // this is a function
+// {
+// return 42
+// })();
-(function () {
- // this is a function
- return 42;
-})();
+// FIXME
+// TODO: reformat issue
+// (function ()
+// // this is a function
+// {
+// return 42
+// })();
/* anonymous declaration */
export default function () {
// this is a function
return 42;
}
+// FIXME
+// TODO: reformat issue
a = {
foo() {
// this is a function
},
- bar: function () {
- // this is a function
- },
+ // bar: function()
+ // // this is a function
+ // {},
};
```
**Prettier Similarity**: 50.00%
### js/comments/if.js
**Prettier Similarity**: 100.00%
### js/comments/issue-3532.js
**Prettier Similarity**: 100.00%
### js/comments/issues.js
**Prettier Similarity**: 100.00%
### js/comments/jsdoc-nestled-dangling.js
```diff
{
{
{
{
{
{
{
o = {
/**
* A
- *//**
+ */
+ /**
* B
*/
};
}
}
}
}
}
}
}
```
**Prettier Similarity**: 90.91%
### js/comments/jsdoc-nestled.js
```diff
const issues = {
see: "#7724 and #12653",
- /** Trailing comment 1 (not nestled as both comments should be multiline for that) */ /**
+ /** Trailing comment 1 (not nestled as both comments should be multiline for that) */
+ /**
* Trailing comment 2
*/
};
/**
* @template T
* @param {Type} type
* @param {T} value
* @return {Value}
- *//**
+ */ /**
* @param {Type} type
* @return {Value}
*/
function value(type, value) {
if (arguments.length === 2) {
return new ConcreteValue(type, value);
} else {
return new Value(type);
}
}
/** Trailing nestled comment 1
- *//** Trailing nestled comment 2
- *//** Trailing nestled comment 3
*/
+/** Trailing nestled comment 2
+ */
+/** Trailing nestled comment 3
+ */
```
**Prettier Similarity**: 77.42%
### js/comments/jsdoc.js
**Prettier Similarity**: 100.00%
### js/comments/last-arg.js
**Prettier Similarity**: 100.00%
### js/comments/multi-comments-2.js
**Prettier Similarity**: 100.00%
### js/comments/multi-comments-on-same-line-2.js
**Prettier Similarity**: 100.00%
### js/comments/multi-comments-on-same-line.js
```diff
/*========= All on same line =========*/
a;
/*1*/ /*2*/ /*3*/
b;
a; /*1*/ /*2*/ /*3*/
b;
a;
/*1*/ /*2*/ /*3*/ b;
a;
/*
1*/ /*2*/ /*3
*/
b;
a; /*
1*/ /*2*/ /*3
*/
b;
-a;
-/*
+a; /*
1*/ /*2*/ /*3
- */ b;
+ */
+b;
/*========= First two on same line =========*/
a;
/*1*/ /*2*/
/*3*/
b;
a; /*1*/ /*2*/
/*3*/
b;
a;
/*1*/ /*2*/
/*3*/ b;
a;
/*
1*/ /*2*/
/*3
*/
b;
a; /*
1*/ /*2*/
/*3
*/
b;
a; /*
1*/ /*2*/
/*3
*/ b;
/*========= Last two on same line =========*/
a;
/*1*/
/*2*/ /*3*/
b;
a; /*1*/
/*2*/ /*3*/
b;
a;
/*1*/
/*2*/ /*3*/ b;
a;
/*
1*/
/*2*/ /*3
*/
b;
a; /*
1*/
/*2*/ /*3
*/
b;
a; /*
1*/
/*2*/ /*3
*/ b;
```
**Prettier Similarity**: 96.67%
### js/comments/multi-comments.js
**Prettier Similarity**: 100.00%
### js/comments/preserve-new-line-last.js
**Prettier Similarity**: 100.00%
### js/comments/single-star-jsdoc.js
**Prettier Similarity**: 100.00%
### js/comments/switch.js
**Prettier Similarity**: 100.00%
### js/comments/tagged-template-literal.js
```diff
foo``; // comment
foo // comment
``;
foo // comment
`
`;
-foo/* comment */ `
+foo /* comment */`
`;
-foo/* comment */ `
+foo /* comment */`
`;
```
**Prettier Similarity**: 85.71%
### js/comments/template-literal.js
**Prettier Similarity**: 100.00%
### js/comments/trailing-jsdocs.js
```diff
const CONNECTION_STATUS = (exports.CONNECTION_STATUS = {
CLOSED: Object.freeze({ kind: "CLOSED" }),
CONNECTED: Object.freeze({ kind: "CONNECTED" }),
CONNECTING: Object.freeze({ kind: "CONNECTING" }),
NOT_CONNECTED: Object.freeze({ kind: "NOT_CONNECTED" }),
});
-/* A comment */ /**
+/* A comment */
+/**
* A type that can be written to a buffer.
- */ /**
+ */
+/**
* Describes the connection status of a ReactiveSocket/DuplexConnection.
* - NOT_CONNECTED: no connection established or pending.
* - CONNECTING: when `connect()` has been called but a connection is not yet
* established.
* - CONNECTED: when a connection is established.
* - CLOSED: when the connection has been explicitly closed via `close()`.
* - ERROR: when the connection has been closed for any other reason.
- */ /**
+ */
+/**
* A contract providing different interaction models per the [ReactiveSocket protocol]
* (https://github.com/ReactiveSocket/reactivesocket/blob/master/Protocol.md).
- */ /**
+ */
+/**
* A single unit of data exchanged between the peers of a `ReactiveSocket`.
*/
```
**Prettier Similarity**: 70.37%
### js/comments/trailing_space.js
**Prettier Similarity**: 100.00%
### js/comments/try.js
**Prettier Similarity**: 100.00%
### js/comments/variable_declarator.js
**Prettier Similarity**: 100.00%
### js/comments/while.js
**Prettier Similarity**: 100.00%
### js/computed-props/classes.js
**Prettier Similarity**: 100.00%
### js/conditional/comments.js
```diff
var inspect =
4 === util.inspect.length
? // node <= 0.8.x
function (v, colors) {
return util.inspect(v, void 0, void 0, colors);
}
: // node > 0.8.x
function (v, colors) {
return util.inspect(v, { colors: colors });
};
var inspect =
4 === util.inspect.length
? // node <= 0.8.x
function (v, colors) {
return util.inspect(v, void 0, void 0, colors);
}
: // node > 0.8.x
function (v, colors) {
return util.inspect(v, { colors: colors });
};
const extractTextPluginOptions = shouldUseRelativeAssetPaths
? // Making sure that the publicPath goes back to to build folder.
{ publicPath: Array(cssFilename.split("/").length).join("../") }
: {};
const extractTextPluginOptions2 = shouldUseRelativeAssetPaths
? // Making sure that the publicPath goes back to to build folder.
{ publicPath: Array(cssFilename.split("/").length).join("../") }
: {};
const extractTextPluginOptions3 = shouldUseRelativeAssetPaths // Making sure that the publicPath goes back to to build folder.
? { publicPath: Array(cssFilename.split("/").length).join("../") }
: {};
const { configureStore } =
process.env.NODE_ENV === "production"
? require("./configureProdStore") // a
: require("./configureDevStore"); // b
test /* comment
comment
comment
*/
? foo
: bar;
test
? /* comment
comment
comment
comment
*/
foo
: bar;
test
? /* comment
comment
comment
comment
*/
foo
: test
? /* comment
comment
comment */
foo
: bar;
test ? /* comment */ foo : bar;
test
? foo
: /* comment
comment
comment
comment
*/
bar;
test
? foo
: /* comment
comment
comment
comment
A newline will be added after this comment, unfortunately – but it can be removed manually, see next statement.
*/
test
? foo
: /* comment
comment
comment
*/
bar;
// It is at least possible to delete the extra newline that was
// unfortunately added before the second condition above:
test
- ? foo /* comment
+ ? foo
+ : /* comment
comment
comment
comment
*/
- : test
+ test
? foo
: /* comment
comment
comment
*/
bar;
test ? foo : /* comment */ bar;
test
? test /* c
c */
? foo
: bar
: bar;
```
**Prettier Similarity**: 97.56%
### js/conditional/new-expression.js
**Prettier Similarity**: 100.00%
### js/conditional/new-ternary-examples.js
**Prettier Similarity**: 100.00%
### js/conditional/new-ternary-spec.js
**Prettier Similarity**: 100.00%
### js/conditional/no-confusing-arrow.js
**Prettier Similarity**: 100.00%
### js/conditional/postfix-ternary-regressions.js
```diff
// concatened string in consequent should be visually distinguishable from alternate
// … or maybe this is okay, because the colon is enough?
const avatar = has_ordered
? "https://marmelab.com/posters/avatar/longer-word-that-breaks-consequent-" +
numberOfCustomers +
".jpeg"
: undefined;
// Similarly, in the alternate:
const redirectUrl = pathName
? pathName
: nextPathName + nextSearch ||
defaultAuthParams.afterLoginUrl.makeThisLongerSoItBreaks;
// And another, more pathological case of the above:
const isEmpty = (obj) =>
obj instanceof Date
? false
: obj === "" ||
obj === null ||
obj === undefined ||
obj === somethingThatIsLonger ||
shallowEqual(obj, {});
// Again, this case is a bit hard to distinguish the alternate.
const eventsFromOrders =
orderIds && orders
? orderIds.map((id) => ({
type: "order",
date: orders[id].date,
data: orders[id],
}))
: [];
// Kinda weird to have dedents to the level of "return" in a function.
function foo() {
return !linkTo
? false
: typeof linkTo === "function"
? linkTo(record, reference)
: linkToRecord(rootPath, sourceId, linkTo_as_string);
}
function foo2() {
return React.isValidElement(emptyText)
? React.cloneElement(emptyText)
: emptyText === ""
? " " // em space, forces the display of an empty line of normal height
: translate(emptyText, { _: emptyText });
}
// Function call ideally wouldnt break break
const matchingReferencesError = isMatchingReferencesError(matchingReferences)
? translate(matchingReferences.error, {
_: matchingReferences.error,
})
: null;
// This one is kinda confusing any way you slice it…
const obj = {
error:
matchingReferencesError &&
(!input.value ||
(input.value && selectedReferencesDataStatus === REFERENCES_STATUS_EMPTY))
? translate("ra.input.references.all_missing", {
_: "ra.input.references.all_missing",
})
: null,
};
// I think we should indent after the inner || on this, and do better wtih the parens around the &&
const obj2 = {
warning:
matchingReferencesError ||
(input.value && selectedReferencesDataStatus !== REFERENCES_STATUS_READY)
? matchingReferencesError ||
translate("ra.input.references.many_missing", {
_: "ra.input.references.many_missing",
})
: null,
};
// The boolean conditions in the test should look cohesive.
const selectedReferencesDataStatus =
!isEmpty(value) && typeof value === "string" && !pattern.test(value)
? getMessage(message, { pattern }, value, values)
: undefined;
// Would be nice if these two nested ternaries didn't look like a single one.
resolveRedirectTo(
redirectTo,
basePath,
payload
? payload.id || (payload.data ? payload.data.id : null)
: requestPayload
? requestPayload.id
: null,
payload && payload.data
? payload.data
: requestPayload && requestPayload.data
? requestPayload.data
: null,
);
const delayedDataProvider = new Proxy(restProvider, {
get: (target, name, self) =>
- name === "then" // as we await for the dataProvider, JS calls then on it. We must trap that call or else the dataProvider will be called with the then method
- ? self
+ name === "then"
+ ? // as we await for the dataProvider, JS calls then on it. We must trap that call or else the dataProvider will be called with the then method
+ self
: (resource, params) =>
new Promise((resolve) =>
setTimeout(
() => resolve(restProvider[name](resource, params)),
500,
),
),
});
function foo4() {
return !match || match.length < 5
? line
: match[1] + match[2] + match[3] + match[4];
}
function foo5() {
return !match || match.length < 5
? foo(line)
: match[1] + match[2] + match[3] + match[4];
}
function foo6() {
return !match || match.length < 5
? linethatisverylongandbreaksthelinehooray
: match[1] + match[2] + match[3] + match[4];
}
function foo7() {
return !match || match.length < 5
? linethatisverylongandbreaksthelinehoorayjustabitlonger
: match[1] + match[2] + match[3] + match[4];
}
const badComments = schema.model
? schema
: // If model is an array where the items schema is a referred model then we need to use that
schema.type === "array"
? schema.items
: schema;
const anotherBadComment = refModel
? // If we're in a shared params file then reference the model name directly
inSharedParamsFile
? refModel
: // If we're not in a shared params file then reference the in-file type
classRef()
: // We don't have a model name, use the in-file name
classRef();
```
**Prettier Similarity**: 98.08%
### js/cursor/comments-1.js
**Prettier Similarity**: 100.00%
### js/cursor/comments-2.js
**Prettier Similarity**: 100.00%
### js/cursor/comments-3.js
**Prettier Similarity**: 100.00%
### js/cursor/comments-4.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-0.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-1.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-10.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-2.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-3.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-4.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-5.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-6.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-7.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-8.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-9.js
**Prettier Similarity**: 100.00%
### js/cursor/cursor-emoji.js
**Prettier Similarity**: 100.00%
### js/cursor/file-start-with-comment-1.js
**Prettier Similarity**: 100.00%
### js/cursor/file-start-with-comment-2.js
**Prettier Similarity**: 100.00%
### js/cursor/file-start-with-comment-3.js
**Prettier Similarity**: 100.00%
### js/cursor/range-0.js
**Prettier Similarity**: 100.00%
### js/cursor/range-1.js
**Prettier Similarity**: 100.00%
### js/cursor/range-2.js
**Prettier Similarity**: 100.00%
### js/cursor/range-3.js
**Prettier Similarity**: 100.00%
### js/cursor/range-4.js
**Prettier Similarity**: 100.00%
### js/cursor/range-5.js
**Prettier Similarity**: 100.00%
### js/cursor/range-6.js
**Prettier Similarity**: 100.00%
### js/cursor/range-7.js
**Prettier Similarity**: 100.00%
### js/cursor/range-8.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/basic.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/comments.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/computed.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/not-accessor-method.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/not-accessor-property.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/private.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/static-computed.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/static-private.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/static.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/with-semicolon-1.js
**Prettier Similarity**: 100.00%
### js/decorator-auto-accessors/with-semicolon-2.js
**Prettier Similarity**: 100.00%
### js/decorators-export/after_export.js
**Prettier Similarity**: 100.00%
### js/decorators-export/before_export.js
**Prettier Similarity**: 100.00%
### js/decorators/class-expression/arguments.js
**Prettier Similarity**: 100.00%
### js/decorators/class-expression/class-expression.js
**Prettier Similarity**: 100.00%
### js/decorators/class-expression/member-expression.js
**Prettier Similarity**: 100.00%
### js/decorators/class-expression/super-class.js
**Prettier Similarity**: 100.00%
### js/decorators/classes.js
**Prettier Similarity**: 100.00%
### js/decorators/comments.js
**Prettier Similarity**: 100.00%
### js/decorators/member-expression.js
**Prettier Similarity**: 100.00%
### js/decorators/methods.js
**Prettier Similarity**: 100.00%
### js/decorators/mixed.js
**Prettier Similarity**: 100.00%
### js/decorators/mobx.js
**Prettier Similarity**: 100.00%
### js/decorators/multiline.js
**Prettier Similarity**: 100.00%
### js/decorators/multiple.js
**Prettier Similarity**: 100.00%
### js/decorators/parens.js
**Prettier Similarity**: 100.00%
### js/decorators/redux.js
**Prettier Similarity**: 100.00%
### js/destructuring-ignore/ignore.js
**Prettier Similarity**: 100.00%
### js/destructuring/destructuring.js
```diff
const [one, two = null, three = null] = arr;
a = ([s = 1]) => 1;
const { children, ...props } = this.props;
const {
user: { firstName, lastName },
} = this.props;
const {
name: { first, last },
organisation: {
address: { street: orgStreetAddress, postcode: orgPostcode },
},
} = user;
function f({ data: { name } }) {}
const UserComponent = function ({
name: { first, last },
organisation: {
address: { street: orgStreetAddress, postcode: orgPostcode },
},
}) {
return;
};
const {
a,
b,
c,
d: { e },
} = someObject;
try {
// code
} catch ({ data: { message } }) {
// code
}
try {
// code
-} catch ({
- data: {
- message: { errors },
- },
-}) {
+} catch ({ data: { message: { errors } } }) {
// code
}
const obj = {
func(id, { blog: { title } }) {
return id + title;
},
};
class A {
func(id, { blog: { title } }) {
return id + title;
}
}
```
**Prettier Similarity**: 91.67%
### js/destructuring/issue-5988.js
**Prettier Similarity**: 100.00%
### js/directives/escaped.js
**Prettier Similarity**: 100.00%
### js/directives/issue-7346.js
**Prettier Similarity**: 100.00%
### js/directives/last-line-0.js
**Prettier Similarity**: 100.00%
### js/directives/last-line-1.js
**Prettier Similarity**: 100.00%
### js/directives/last-line-2.js
**Prettier Similarity**: 100.00%
### js/directives/newline.js
**Prettier Similarity**: 100.00%
### js/directives/no-newline.js
**Prettier Similarity**: 100.00%
### js/directives/test.js
**Prettier Similarity**: 100.00%
### js/dynamic-import/assertions.js
**Prettier Similarity**: 100.00%
### js/dynamic-import/test.js
**Prettier Similarity**: 100.00%
### js/empty-paren-comment/class-property.js
**Prettier Similarity**: 100.00%
### js/empty-paren-comment/class.js
**Prettier Similarity**: 100.00%
### js/empty-paren-comment/empty_paren_comment.js
**Prettier Similarity**: 100.00%
### js/empty-statement/body.js
**Prettier Similarity**: 100.00%
### js/empty-statement/no-newline.js
**Prettier Similarity**: 100.00%
### js/end-of-line/example.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_arrow_expression.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_call_expression.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_class_declaration.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_class_expression.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_function_declaration.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_function_declaration_async.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_function_declaration_named.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_function_expression.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_function_expression_named.js
**Prettier Similarity**: 100.00%
### js/es6modules/export_default_new_expression.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/for-await-using-of-comments.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/invalid-duplicate-using-bindings.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/invalid-script-top-level-using-binding.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/using-declarations.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-await-expr-using-in.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-await-expr-using-instanceof.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-await-expr-using.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-await-using-asi-assignment.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-await-using-binding-basic.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-await-using-binding-escaped.js
```diff
async function f() {
- await using ab = c;
+ await using \u0061b = c;
}
```
**Prettier Similarity**: 66.67%
### js/explicit-resource-management/valid-await-using-binding-non-bmp.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-await-using-binding-using.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-await-using-comments.js
```diff
async function f() {
{
- /*0*/ await using /*1*/ /*2*/ b /*3*/ = /*4*/ f(); /*5*/
+ /*0*/ await using /*1*/ /*2*/ b /*3*/ = /*4*/ f() /*5*/;
}
{
/*0*/ for (
/*1*/ /*2*/ await using /*3*/ /*4*/ b /*5*/ =
/*6*/ x /*7*/ /*8*/ /*9*/ /*10*/;
;
-
);
}
{
/*0*/ for (/*1*/ /*2*/ await using /*3*/ /*4*/ b /*5*/ of /*6*/ x /*7*/ /*8*/);
}
{
/*0*/ for await (/*1*/ /*2*/ /*3*/ await using /*4*/ /*5*/ b /*6*/ of /*7*/ x /*8*/ /*9*/);
}
}
```
**Prettier Similarity**: 89.47%
### js/explicit-resource-management/valid-for-await-using-binding-escaped-of-of.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-for-using-binding-escaped-of-of.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-for-using-binding-of-of.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-for-using-declaration.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-as-identifier-computed-member.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-as-identifier-expression-statement.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-as-identifier-for-await-of.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-as-identifier-for-in.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-as-identifier-for-init.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-as-identifier-for-of.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-as-identifier-in.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-binding-basic.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-binding-escaped.js
```diff
{
- using ab = c;
+ using \u0061b = c;
}
```
**Prettier Similarity**: 66.67%
### js/explicit-resource-management/valid-using-binding-non-bmp.js
**Prettier Similarity**: 100.00%
### js/explicit-resource-management/valid-using-binding-using.js
**Prettier Similarity**: 100.00%
### js/export-default/binary_and_template.js
**Prettier Similarity**: 100.00%
### js/export-default/body.js
**Prettier Similarity**: 100.00%
### js/export-default/class_instance.js
**Prettier Similarity**: 100.00%
### js/export-default/function_in_template.js
**Prettier Similarity**: 100.00%
### js/export-default/function_tostring.js
**Prettier Similarity**: 100.00%
### js/export-default/iife.js
**Prettier Similarity**: 100.00%
### js/export-star/export-star-as-default.js
**Prettier Similarity**: 100.00%
### js/export-star/export-star-as-reserved-word.js
**Prettier Similarity**: 100.00%
### js/export-star/export-star-as-string.js
**Prettier Similarity**: 100.00%
### js/export-star/export-star-as-string2.js
**Prettier Similarity**: 100.00%
### js/export-star/export-star-as.js
**Prettier Similarity**: 100.00%
### js/export-star/export-star.js
**Prettier Similarity**: 100.00%
### js/export/blank-line-between-specifiers.js
```diff
export {
// a
foo1,
-
// b
bar1,
baz1,
} from "mod";
const foo2 = 1;
const bar2 = 1;
const baz2 = 1;
export {
// a
foo2,
-
// b
bar2,
baz2,
};
```
**Prettier Similarity**: 90.48%
### js/export/bracket.js
**Prettier Similarity**: 100.00%
### js/export/empty.js
**Prettier Similarity**: 100.00%
### js/export/same-local-and-exported.js
**Prettier Similarity**: 100.00%
### js/export/test.js
**Prettier Similarity**: 100.00%
### js/export/undefined.js
**Prettier Similarity**: 100.00%
### js/expression_statement/no_regression.js
**Prettier Similarity**: 100.00%
### js/expression_statement/use_strict.js
**Prettier Similarity**: 100.00%
### js/for-await/for-await.js
**Prettier Similarity**: 100.00%
### js/for-of/async-identifier.js
**Prettier Similarity**: 100.00%
### js/for/comment.js
**Prettier Similarity**: 100.00%
### js/for/continue-and-break-comment-1.js
**Prettier Similarity**: 100.00%
### js/for/continue-and-break-comment-2.js
**Prettier Similarity**: 100.00%
### js/for/continue-and-break-comment-without-blocks.js
```diff
for (;;) continue;
// comment
for (;;) break;
// comment
for (const f of []) continue;
// comment
for (const f of []) break;
// comment
for (const f in {}) continue;
// comment
for (const f in {}) break;
// comment
for (;;) continue; // comment
for (;;) break; // comment
for (const f of []) continue; // comment
for (const f of []) break; // comment
for (const f in {}) continue; // comment
for (const f in {}) break; // comment
for (;;) continue; /* comment */
for (;;) break; /* comment */
for (const f of []) continue; /* comment */
for (const f of []) break; /* comment */
for (const f in {}) continue; /* comment */
for (const f in {}) break; /* comment */
for (;;) continue;
/* comment */
for (;;) break;
/* comment */
for (const f of []) continue;
/* comment */
for (const f of []) break;
/* comment */
for (const f in {}) continue;
/* comment */
for (const f in {}) break;
/* comment */
label1: for (;;) continue label1 /* comment */;
-label1: for (;;) continue label1;
-/* comment */
+// FIXME: TODO: reformat issue
+// label1: for (;;) continue label1
+// /* comment */
+// ;
-label1: for (;;) continue label1; // comment
+// label1: for (;;) continue label1 // comment
+// ;
-label1: for (;;) continue label1;
-// comment
+// label1: for (;;) continue label1
+// // comment
+// ;
```
**Prettier Similarity**: 87.67%
### js/for/for.js
**Prettier Similarity**: 100.00%
### js/for/in.js
**Prettier Similarity**: 100.00%
### js/for/var.js
**Prettier Similarity**: 100.00%
### js/function-comments/params-trail-comments.js
**Prettier Similarity**: 100.00%
### js/function-first-param/function_expression.js
**Prettier Similarity**: 100.00%
### js/function-single-destructuring/array.js
**Prettier Similarity**: 100.00%
### js/function-single-destructuring/object.js
**Prettier Similarity**: 100.00%
### js/function/function_expression.js
**Prettier Similarity**: 100.00%
### js/function/issue-10277.js
**Prettier Similarity**: 100.00%
### js/functional-composition/functional_compose.js
**Prettier Similarity**: 100.00%
### js/functional-composition/gobject_connect.js
**Prettier Similarity**: 100.00%
### js/functional-composition/lodash_flow.js
**Prettier Similarity**: 100.00%
### js/functional-composition/lodash_flow_right.js
**Prettier Similarity**: 100.00%
### js/functional-composition/mongo_connect.js
**Prettier Similarity**: 100.00%
### js/functional-composition/pipe-function-calls-with-comments.js
**Prettier Similarity**: 100.00%
### js/functional-composition/pipe-function-calls.js
**Prettier Similarity**: 100.00%
### js/functional-composition/ramda_compose.js
**Prettier Similarity**: 100.00%
### js/functional-composition/ramda_pipe.js
**Prettier Similarity**: 100.00%
### js/functional-composition/redux_compose.js
**Prettier Similarity**: 100.00%
### js/functional-composition/redux_connect.js
**Prettier Similarity**: 100.00%
### js/functional-composition/reselect_createselector.js
**Prettier Similarity**: 100.00%
### js/functional-composition/rxjs_pipe.js
**Prettier Similarity**: 100.00%
### js/generator/anonymous.js
**Prettier Similarity**: 100.00%
### js/generator/async.js
**Prettier Similarity**: 100.00%
### js/generator/function-name-starts-with-get.js
**Prettier Similarity**: 100.00%
### js/identifier/for-of/await.js
**Prettier Similarity**: 100.00%
### js/identifier/for-of/let.js
**Prettier Similarity**: 100.00%
### js/identifier/parentheses/const.js
**Prettier Similarity**: 100.00%
### js/identifier/parentheses/let.js
**Prettier Similarity**: 100.00%
### js/if/comment_before_else.js
**Prettier Similarity**: 100.00%
### js/if/else.js
**Prettier Similarity**: 100.00%
### js/if/expr_and_same_line_comments.js
```diff
if (a === 0) doSomething(); // comment A1
else if (a === 1) doSomethingElse(); // comment B1
else if (a === 2) doSomethingElse(); // comment C1
if (a === 0) doSomething(); /* comment A2 */
else if (a === 1) doSomethingElse(); /* comment B2 */
else if (a === 2) doSomethingElse(); /* comment C2 */
if (a === 0) expr; // comment A3
else if (a === 1) expr; // comment B3
else if (a === 2) expr; // comment C3
if (a === 0) expr; /* comment A4 */
else if (a === 1) expr; /* comment B4 */
else if (a === 2) expr; /* comment C4 */
if (a === 0)
looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong; // comment A5
else if (a === 1)
looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong; // comment B5
else if (a === 2)
looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong; // comment C5
function a() {
if (a) return /* comment 6a */;
else return 2;
if (a) return 1 /* comment 6b */;
else return 2;
if (a) throw e /* comment 6d */;
else return 2;
// TODO[@fisker]: fix this
// if (a) var a = 1; /* comment 6e */
// else return 2;
if (a)
- if (b /* comment 6f */);
+ if (b);/* comment 6f */
else return 2;
}
```
**Prettier Similarity**: 97.56%
### js/if/if_comments.js
**Prettier Similarity**: 100.00%
### js/if/trailing_comment.js
**Prettier Similarity**: 100.00%
### js/ignore/class-expression-decorator.js
```diff
-// prettier-ignore
(
+ // prettier-ignore
@decorator
class {}
);
```
**Prettier Similarity**: 80.00%
### js/ignore/decorator.js
**Prettier Similarity**: 100.00%
### js/ignore/ignore-2.js
**Prettier Similarity**: 100.00%
### js/ignore/ignore.js
**Prettier Similarity**: 100.00%
### js/ignore/issue-10661.js
**Prettier Similarity**: 100.00%
### js/ignore/issue-11077.js
```diff
function HelloWorld(x) {
- // prettier-ignore
- // eslint-disable-next-line
- (x.a |
- x.b).call(null);
+ (
+ // prettier-ignore
+ // eslint-disable-next-line
+ x.a |
+ x.b
+ ).call(null)
}
function HelloWorld(x) {
// prettier-ignore
+
(
// eslint-disable-next-line
x.a |
x.b
).call(null)
}
```
**Prettier Similarity**: 61.11%
### js/ignore/issue-13737.js
```diff
oneArgument(
// prettier-ignore
(0, 1),
);
a =
- // prettier-ignore
- (0, 1);
+ (
+ // prettier-ignore
+ (0, 1)
+);
```
**Prettier Similarity**: 60.00%
### js/ignore/issue-14404.js
```diff
async function foo() {
- // prettier-ignore
- // b
- (await thing()).blah;
+ (
+ // prettier-ignore
+ // b
+ await thing()
+).blah
}
```
**Prettier Similarity**: 28.57%
### js/ignore/issue-9335.js
**Prettier Similarity**: 100.00%
### js/ignore/issue-9877.js
```diff
export default function test() {
return {
matrix: // prettier-ignore
- new Float32Array([
- 0, 0,
- 1, 0,
- 1, 1,
- 0, 1
- ]),
+ new Float32Array([0, 0, 1, 0, 1, 1, 0, 1]),
};
}
```
**Prettier Similarity**: 45.45%
### js/ignore/semi/asi.js
**Prettier Similarity**: 100.00%
### js/ignore/semi/directive.js
**Prettier Similarity**: 100.00%
### js/import-assertions/bracket-spacing/dynamic-import.js
**Prettier Similarity**: 100.00%
### js/import-assertions/bracket-spacing/empty.js
**Prettier Similarity**: 100.00%
### js/import-assertions/bracket-spacing/re-export.js
**Prettier Similarity**: 100.00%
### js/import-assertions/bracket-spacing/static-import.js
**Prettier Similarity**: 100.00%
### js/import-assertions/dynamic-import.js
**Prettier Similarity**: 100.00%
### js/import-assertions/empty.js
**Prettier Similarity**: 100.00%
### js/import-assertions/multi-types.js
**Prettier Similarity**: 100.00%
### js/import-assertions/non-type.js
**Prettier Similarity**: 100.00%
### js/import-assertions/not-import-assertions.js
**Prettier Similarity**: 100.00%
### js/import-assertions/re-export.js
**Prettier Similarity**: 100.00%
### js/import-assertions/static-import.js
**Prettier Similarity**: 100.00%
### js/import-assertions/without-from.js
**Prettier Similarity**: 100.00%
### js/import-attributes/bracket-spacing/dynamic-import.js
**Prettier Similarity**: 100.00%
### js/import-attributes/bracket-spacing/empty.js
**Prettier Similarity**: 100.00%
### js/import-attributes/bracket-spacing/re-export.js
**Prettier Similarity**: 100.00%
### js/import-attributes/bracket-spacing/static-import.js
**Prettier Similarity**: 100.00%
### js/import-attributes/dynamic-import.js
**Prettier Similarity**: 100.00%
### js/import-attributes/empty.js
**Prettier Similarity**: 100.00%
### js/import-attributes/multi-types.js
**Prettier Similarity**: 100.00%
### js/import-attributes/non-type.js
**Prettier Similarity**: 100.00%
### js/import-attributes/re-export.js
**Prettier Similarity**: 100.00%
### js/import-attributes/static-import.js
**Prettier Similarity**: 100.00%
### js/import-attributes/without-from.js
**Prettier Similarity**: 100.00%
### js/import-meta/import_meta.js
**Prettier Similarity**: 100.00%
### js/import/brackets.js
**Prettier Similarity**: 100.00%
### js/import/comments.js
**Prettier Similarity**: 100.00%
### js/import/empty-import.js
**Prettier Similarity**: 100.00%
### js/import/inline.js
**Prettier Similarity**: 100.00%
### js/import/long-line.js
**Prettier Similarity**: 100.00%
### js/import/multiple_standalones.js
**Prettier Similarity**: 100.00%
### js/import/same-local-and-imported.js
**Prettier Similarity**: 100.00%
### js/in/arrow-function-invalid.js
**Prettier Similarity**: 100.00%
### js/in/arrow-function.js
**Prettier Similarity**: 100.00%
### js/invalid-code/duplicate_bindings.js
**Prettier Similarity**: 100.00%
### js/label/block-statement-and-regexp.js
**Prettier Similarity**: 100.00%
### js/label/comment.js
**Prettier Similarity**: 100.00%
### js/label/empty_label.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/arrow.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/assignment-pattern.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/break-parent.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/dangling-comment-in-arrow-function.js
```diff
-foo(() =>
- // foo
- {},
+foo(
+ (
+ // foo
+ ) => {},
);
```
**Prettier Similarity**: 20.00%
### js/last-argument-expansion/edge_case.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/empty-lines.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/empty-object.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/function-body-in-mode-break.js
```diff
fs.readdirSync(suiteLoc).forEach(function (testName) {
- (skip ? it.skip : it)(
- testName,
- buildTest(binName, testName, opts),
- 2_000_000,
- );
+ (skip
+ ? it.skip
+ : it)(testName, buildTest(binName, testName, opts), 2_000_000);
});
{
(skip ? it.skip : it)(
testName,
buildTest(binName, testName, opts),
2_000_000,
);
}
```
**Prettier Similarity**: 66.67%
### js/last-argument-expansion/function-expression-issue-2239.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/function-expression.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/issue-10708.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/issue-7518.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/number-only-array.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/object.js
**Prettier Similarity**: 100.00%
### js/last-argument-expansion/overflow.js
**Prettier Similarity**: 100.00%
### js/line-suffix-boundary/boundary.js
**Prettier Similarity**: 100.00%
### js/line/windows.js
**Prettier Similarity**: 100.00%
### js/literal-numeric-separator/test.js
**Prettier Similarity**: 100.00%
### js/literal/number.js
**Prettier Similarity**: 100.00%
### js/logical-assignment/logical-assignment.js
**Prettier Similarity**: 100.00%
### js/logical_expressions/issue-7024.js
**Prettier Similarity**: 100.00%
### js/logical_expressions/logical_expression_operators.js
**Prettier Similarity**: 100.00%
### js/member/conditional.js
**Prettier Similarity**: 100.00%
### js/member/expand.js
**Prettier Similarity**: 100.00%
### js/member/logical.js
**Prettier Similarity**: 100.00%
### js/method-chain/13018.js
**Prettier Similarity**: 100.00%
### js/method-chain/bracket_0-1.js
**Prettier Similarity**: 100.00%
### js/method-chain/bracket_0.js
**Prettier Similarity**: 100.00%
### js/method-chain/break-last-call.js
**Prettier Similarity**: 100.00%
### js/method-chain/break-last-member.js
**Prettier Similarity**: 100.00%
### js/method-chain/break-multiple.js
**Prettier Similarity**: 100.00%
### js/method-chain/comment.js
**Prettier Similarity**: 100.00%
### js/method-chain/complex-args.js
**Prettier Similarity**: 100.00%
### js/method-chain/computed-merge.js
**Prettier Similarity**: 100.00%
### js/method-chain/computed.js
**Prettier Similarity**: 100.00%
### js/method-chain/conditional.js
**Prettier Similarity**: 100.00%
### js/method-chain/cypress.js
**Prettier Similarity**: 100.00%
### js/method-chain/d3.js
**Prettier Similarity**: 100.00%
### js/method-chain/first_long.js
**Prettier Similarity**: 100.00%
### js/method-chain/fluent-configuration.js
**Prettier Similarity**: 100.00%
### js/method-chain/inline_merge.js
**Prettier Similarity**: 100.00%
### js/method-chain/issue-11298.js
**Prettier Similarity**: 100.00%
### js/method-chain/issue-3594.js
**Prettier Similarity**: 100.00%
### js/method-chain/issue-3621.js
**Prettier Similarity**: 100.00%
### js/method-chain/issue-4125.js
**Prettier Similarity**: 100.00%
### js/method-chain/logical.js
**Prettier Similarity**: 100.00%
### js/method-chain/multiple-members.js
**Prettier Similarity**: 100.00%
### js/method-chain/object-literal.js
**Prettier Similarity**: 100.00%
### js/method-chain/pr-7889.js
**Prettier Similarity**: 100.00%
### js/method-chain/print-width-120/constructor.js
**Prettier Similarity**: 100.00%
### js/method-chain/print-width-120/issue-7884.js
**Prettier Similarity**: 100.00%
### js/method-chain/short-names.js
**Prettier Similarity**: 100.00%
### js/method-chain/simple-args.js
**Prettier Similarity**: 100.00%
### js/method-chain/square_0.js
**Prettier Similarity**: 100.00%
### js/method-chain/test.js
**Prettier Similarity**: 100.00%
### js/method-chain/this.js
**Prettier Similarity**: 100.00%
### js/module-string-names/module-string-names-export.js
**Prettier Similarity**: 100.00%
### js/module-string-names/module-string-names-import.js
**Prettier Similarity**: 100.00%
### js/new-expression/call.js
**Prettier Similarity**: 100.00%
### js/new-expression/new_expression.js
**Prettier Similarity**: 100.00%
### js/new-expression/with-member-expression.js
**Prettier Similarity**: 100.00%
### js/new-target/outside-functions.js
**Prettier Similarity**: 100.00%
### js/new-target/range.js
**Prettier Similarity**: 100.00%
### js/newline/backslash_2028.js
**Prettier Similarity**: 100.00%
### js/newline/backslash_2029.js
**Prettier Similarity**: 100.00%
### js/no-semi/class.js
**Prettier Similarity**: 100.00%
### js/no-semi/comments.js
**Prettier Similarity**: 100.00%
### js/no-semi/issue2006.js
**Prettier Similarity**: 100.00%
### js/no-semi/no-semi.js
**Prettier Similarity**: 100.00%
### js/no-semi/private-field.js
**Prettier Similarity**: 100.00%
### js/non-strict/argument-name-clash.js
**Prettier Similarity**: 100.00%
### js/non-strict/keywords.js
**Prettier Similarity**: 100.00%
### js/non-strict/octal-number.js
**Prettier Similarity**: 100.00%
### js/nullish-coalescing/nullish_coalesing_operator.js
**Prettier Similarity**: 100.00%
### js/numeric-separators/number.js
**Prettier Similarity**: 100.00%
### js/object-colon-bug/bug.js
**Prettier Similarity**: 100.00%
### js/object-prop-break-in/comment.js
**Prettier Similarity**: 100.00%
### js/object-prop-break-in/long-value.js
**Prettier Similarity**: 100.00%
### js/object-prop-break-in/short-keys.js
**Prettier Similarity**: 100.00%
### js/object-prop-break-in/test.js
**Prettier Similarity**: 100.00%
### js/object-property-comment/after-key.js
**Prettier Similarity**: 100.00%
### js/object-property-ignore/ignore.js
**Prettier Similarity**: 100.00%
### js/object-property-ignore/issue-5678.js
**Prettier Similarity**: 100.00%
### js/objects/assignment-expression/object-property.js
```diff
a = {
- [(this.resource = resource)]: 1,
+ [this.resource = resource]: 1,
};
```
**Prettier Similarity**: 66.67%
### js/objects/assignment-expression/object-value.js
**Prettier Similarity**: 100.00%
### js/objects/bigint-key.js
**Prettier Similarity**: 100.00%
### js/objects/escape-sequence-key.js
**Prettier Similarity**: 100.00%
### js/objects/expand.js
**Prettier Similarity**: 100.00%
### js/objects/getter-setter.js
**Prettier Similarity**: 100.00%
### js/objects/method.js
**Prettier Similarity**: 100.00%
### js/objects/range.js
**Prettier Similarity**: 100.00%
### js/objects/right-break.js
**Prettier Similarity**: 100.00%
### js/optional-catch-binding/optional_catch_binding.js
**Prettier Similarity**: 100.00%
### js/optional-chaining-assignment/valid-complex-case.js
**Prettier Similarity**: 100.00%
### js/optional-chaining-assignment/valid-lhs-eq.js
**Prettier Similarity**: 100.00%
### js/optional-chaining-assignment/valid-lhs-plus-eq.js
**Prettier Similarity**: 100.00%
### js/optional-chaining-assignment/valid-parenthesized.js
```diff
-a?.b = c;
+(a?.b) = c;
```
**Prettier Similarity**: 0.00%
### js/optional-chaining/chaining.js
```diff
var street = user.address?.street;
var fooValue = myForm.querySelector("input[name=foo]")?.value;
obj?.prop;
obj?.[expr];
func?.(...args);
a?.();
a?.[++x];
a?.b.c(++x).d;
a?.b[3].c?.(x).d;
a?.b.c;
-(a?.b).c;
+a?.b.c;
a?.b?.c;
delete a?.b;
a?.b[3].c?.(x).d.e?.f[3].g?.(y).h;
-(a?.b).c();
-(a?.b[c]).c();
+a?.b.c();
+a?.b[c].c();
a?.b?.c.d?.e;
(a ? b : c)?.d;
(list || list2)?.length;
(list || list2)?.[list || list2];
async function HelloWorld() {
var x = (await foo.bar.blah)?.hi;
a?.[await b];
(await x)?.();
}
a[b?.c].d();
a?.[b?.c].d();
a[b?.c]?.d();
a?.[b?.c]?.d();
one?.fn();
-(one?.two).fn();
-(one?.two)();
-(one?.two())();
+one?.two.fn();
+one?.two();
+one?.two()();
one.two?.fn();
-(one.two?.three).fn();
+one.two?.three.fn();
one.two?.three?.fn();
one?.();
-(one?.())();
+one?.()();
one?.()?.();
-(one?.()).two;
+one?.().two;
a?.[b ? c : d];
(-1)?.toFixed();
(void fn)?.();
(a && b)?.();
(a ? b : c)?.();
(function () {})?.();
(() => f)?.();
(() => f)?.x;
-(a?.(x)).x;
+a?.(x).x;
(
aaaaaaaaaaaaaaaaaaaaaaaa &&
aaaaaaaaaaaaaaaaaaaaaaaa &&
aaaaaaaaaaaaaaaaaaaaaaaa
)?.();
let f = () => ({})?.();
let g = () => ({})?.b;
a = () => ({})?.() && a;
a = () => ({})?.()() && a;
a = () => ({})?.().b && a;
a = () => ({})?.b && a;
a = () => ({})?.b() && a;
(a) => ({})?.()?.b && 0;
(a) => ({})?.b?.b && 0;
(x) => ({})?.()();
(x) => ({})?.().b;
(x) => ({})?.b();
(x) => ({})?.b.b;
({})?.a().b();
({ a: 1 })?.entries();
new (foo?.bar)();
new (foo?.bar())();
new (foo?.())();
```
**Prettier Similarity**: 88.51%
### js/optional-chaining/comments.js
**Prettier Similarity**: 100.00%
### js/optional-chaining/eval.js
**Prettier Similarity**: 100.00%
### js/performance/nested-real.js
**Prettier Similarity**: 100.00%
### js/performance/nested.js
**Prettier Similarity**: 100.00%
### js/preserve-line/argument-list.js
**Prettier Similarity**: 100.00%
### js/preserve-line/comments.js
**Prettier Similarity**: 100.00%
### js/preserve-line/member-chain.js
**Prettier Similarity**: 100.00%
### js/preserve-line/parameter-list.js
**Prettier Similarity**: 100.00%
### js/private-in/private-in.js
**Prettier Similarity**: 100.00%
### js/quote-props/classes.js
**Prettier Similarity**: 100.00%
### js/quote-props/numeric-separator.js
**Prettier Similarity**: 100.00%
### js/quote-props/objects.js
**Prettier Similarity**: 100.00%
### js/quote-props/with_member_expressions.js
**Prettier Similarity**: 100.00%
### js/quote-props/with_numbers.js
**Prettier Similarity**: 100.00%
### js/quotes/functions.js
**Prettier Similarity**: 100.00%
### js/quotes/objects.js
```diff
const obj = {
a: true,
b: true,
- "𐊧": true,
+ 𐊧: true,
};
```
**Prettier Similarity**: 80.00%
### js/quotes/strings.js
**Prettier Similarity**: 100.00%
### js/range/array.js
**Prettier Similarity**: 100.00%
### js/range/boundary-2.js
```diff
function a(
){
- a();
- b();
- c();
- d();
+a (
+);
+b();
+c(); d(
+);
+
}
```
**Prettier Similarity**: 33.33%
### js/range/boundary-3.js
```diff
a (
);
-b (
-); c (
-); d(
+b();
+c(); d(
);
```
**Prettier Similarity**: 50.00%
### js/range/boundary.js
```diff
-foo = 1.0000;bar = 1.0;
-baz = 1.0;
+foo = 1.0000;bar = 1.0;baz=1.0000;
// The range will be 13~26
// `foo` ends at 13, should not format
// `bar` ends at 26, should format
```
**Prettier Similarity**: 60.00%
### js/range/class-declaration.js
```diff
class a {
b() {}
}
-let x;
+let x
```
**Prettier Similarity**: 85.71%
### js/range/different-levels.js
**Prettier Similarity**: 100.00%
### js/range/directive.js
**Prettier Similarity**: 100.00%
### js/range/function-body.js
**Prettier Similarity**: 100.00%
### js/range/function-declaration.js
**Prettier Similarity**: 100.00%
### js/range/ignore-indentation.js
**Prettier Similarity**: 100.00%
### js/range/issue-3789-1.js
**Prettier Similarity**: 100.00%
### js/range/issue-3789-2.js
**Prettier Similarity**: 100.00%
### js/range/issue-4206-1.js
**Prettier Similarity**: 100.00%
### js/range/issue-4206-2.js
**Prettier Similarity**: 100.00%
### js/range/issue-4206-3.js
**Prettier Similarity**: 100.00%
### js/range/issue-4206-4.js
**Prettier Similarity**: 100.00%
### js/range/large-dict.js
**Prettier Similarity**: 100.00%
### js/range/module-export1.js
**Prettier Similarity**: 100.00%
### js/range/module-export2.js
**Prettier Similarity**: 100.00%
### js/range/module-export3.js
**Prettier Similarity**: 100.00%
### js/range/module-import.js
**Prettier Similarity**: 100.00%
### js/range/multiple-statements.js
**Prettier Similarity**: 100.00%
### js/range/multiple-statements2.js
```diff
call(
1, 2,3
);
call(1, 2, 3);
call(1, 2, 3);
-call(1, 2, 3);
+call(
+ 1, 2,3
+);
```
**Prettier Similarity**: 72.73%
### js/range/nested-print-width.js
**Prettier Similarity**: 100.00%
### js/range/nested.js
**Prettier Similarity**: 100.00%
### js/range/nested2.js
**Prettier Similarity**: 100.00%
### js/range/nested3.js
```diff
try {
- 1;
- if (condition) {
- body;
- }
+1;
+if (condition) {
+ body;
+}
}
catch (err) {}
```
**Prettier Similarity**: 42.86%
### js/range/object-expression.js
**Prettier Similarity**: 100.00%
### js/range/object-expression2.js
**Prettier Similarity**: 100.00%
### js/range/range-end.js
**Prettier Similarity**: 100.00%
### js/range/range-start.js
**Prettier Similarity**: 100.00%
### js/range/range.js
**Prettier Similarity**: 100.00%
### js/range/start-equals-end.js
**Prettier Similarity**: 100.00%
### js/range/try-catch.js
**Prettier Similarity**: 100.00%
### js/range/whitespace.js
```diff
-
```
**Prettier Similarity**: 0.00%
### js/regex/d-flag.js
**Prettier Similarity**: 100.00%
### js/regex/multiple-flags.js
**Prettier Similarity**: 100.00%
### js/regex/regexp-modifiers.js
**Prettier Similarity**: 100.00%
### js/regex/test.js
**Prettier Similarity**: 100.00%
### js/regex/v-flag.js
**Prettier Similarity**: 100.00%
### js/require-amd/named-amd-module.js
**Prettier Similarity**: 100.00%
### js/require-amd/non-amd-define.js
**Prettier Similarity**: 100.00%
### js/require-amd/require.js
**Prettier Similarity**: 100.00%
### js/require/require.js
**Prettier Similarity**: 100.00%
### js/reserved-word/interfaces.js
**Prettier Similarity**: 100.00%
### js/rest/trailing-commas.js
**Prettier Similarity**: 100.00%
### js/return-outside-function/return-outside-function.js
```diff
-return (
- someVeryLongStringA &&
- someVeryLongStringB &&
- someVeryLongStringC &&
- someVeryLongStringD
-);
+return someVeryLongStringA && someVeryLongStringB && someVeryLongStringC && someVeryLongStringD
```
**Prettier Similarity**: 0.00%
### js/return/binaryish.js
**Prettier Similarity**: 100.00%
### js/return/comment.js
**Prettier Similarity**: 100.00%
### js/sequence-break/break.js
**Prettier Similarity**: 100.00%
### js/sequence-expression/export-default.js
**Prettier Similarity**: 100.00%
### js/sequence-expression/ignore.js
```diff
-+(
- // prettier-ignore
- ((
++// prettier-ignore
+(
+ (
first
)
,
(
last
- ))
-);
+ )
+ );
```
**Prettier Similarity**: 50.00%
### js/sequence-expression/parenthesized.js
```diff
-console.log(
- /* 1 */
- /* 2 */
- /* 3 */
- (first,
- /* 4 */
- /* 5 */
- /* 6 */
- /* 7 */
- last),
- /* 8 */
- /* 9 */
- /* 10 */
-);
+// FIXME
+// TODO: parse issue
+// console.log(
+// /* 1 */
+// (
+// /* 2 */
+// (
+// /* 3 */
+// first
+// /* 4 */
+// )
+// /* 5 */
+// ,
+// /* 6 */
+// (
+// /* 7 */
+// last
+// /* 8 */
+// )
+// /* 9 */
+// )
+// /* 10 */
+// );
```
**Prettier Similarity**: 0.00%
### js/shebang/shebang-newline.js
**Prettier Similarity**: 100.00%
### js/shebang/shebang.js
**Prettier Similarity**: 100.00%
### js/sloppy-mode/delete-variable.js
**Prettier Similarity**: 100.00%
### js/sloppy-mode/eval-arguments-binding.js
**Prettier Similarity**: 100.00%
### js/sloppy-mode/eval-arguments.js
**Prettier Similarity**: 100.00%
### js/sloppy-mode/function-declaration-in-if.js
**Prettier Similarity**: 100.00%
### js/sloppy-mode/function-declaration-in-while.js
```diff
-while (false) function foo() {}
+while (false) function foo(){}
```
**Prettier Similarity**: 0.00%
### js/sloppy-mode/labeled-function-declaration.js
**Prettier Similarity**: 100.00%
### js/spread/spread.js
**Prettier Similarity**: 100.00%
### js/strings/escaped.js
```diff
+// FIXME
+// TODO: reformat issue
export const MSG_GENERIC_OPERATION_FAILURE_BODY_1 =
goog.getMsg("That's all we know");
-export const MSG_GENERIC_OPERATION_FAILURE_BODY_2 =
- goog.getMsg("That's all we know");
+// FIXME
+// TODO: reformat issue
+// export const MSG_GENERIC_OPERATION_FAILURE_BODY_2 =
+// goog.getMsg("That\'s all we know");
```
**Prettier Similarity**: 33.33%
### js/strings/multiline-literal.js
**Prettier Similarity**: 100.00%
### js/strings/non-octal-eight-and-nine.js
**Prettier Similarity**: 100.00%
### js/strings/strings.js
**Prettier Similarity**: 100.00%
### js/strings/template-literals.js
**Prettier Similarity**: 100.00%
### js/switch/comments.js
**Prettier Similarity**: 100.00%
### js/switch/comments2.js
```diff
switch (1) {
default: // comment1
}
switch (2) {
default: // comment2
//comment2a
}
switch (3) {
default: // comment3
break; // comment3a
}
switch (4) {
default: // comment4
// comment4a
break; // comment4b
}
-switch (5) {
- default: // comment5
- // comment5a
- foo();
- bar(); //comment5b
- break; // comment5c
-}
+// FIXME
+// TODO: reformat issue
+// switch(5){default: // comment5
+// // comment5a
+// foo();bar();//comment5b
+// break;// comment5c
+// }
```
**Prettier Similarity**: 74.07%
### js/switch/empty_lines.js
**Prettier Similarity**: 100.00%
### js/switch/empty_statement.js
**Prettier Similarity**: 100.00%
### js/switch/empty_switch.js
**Prettier Similarity**: 100.00%
### js/switch/switch.js
**Prettier Similarity**: 100.00%
### js/tab-width/class.js
**Prettier Similarity**: 100.00%
### js/tab-width/nested-functions.spec.js
**Prettier Similarity**: 100.00%
### js/template-align/indent.js
**Prettier Similarity**: 100.00%
### js/template-literals/binary-exporessions.js
**Prettier Similarity**: 100.00%
### js/template-literals/conditional-expressions.js
**Prettier Similarity**: 100.00%
### js/template-literals/expressions.js
**Prettier Similarity**: 100.00%
### js/template-literals/indention.js
**Prettier Similarity**: 100.00%
### js/template-literals/logical-expressions.js
**Prettier Similarity**: 100.00%
### js/template-literals/sequence-expressions.js
**Prettier Similarity**: 100.00%
### js/template/arrow.js
**Prettier Similarity**: 100.00%
### js/template/call.js
**Prettier Similarity**: 100.00%
### js/template/comment.js
**Prettier Similarity**: 100.00%
### js/template/faulty-locations.js
**Prettier Similarity**: 100.00%
### js/template/graphql.js
**Prettier Similarity**: 100.00%
### js/template/indent.js
**Prettier Similarity**: 100.00%
### js/template/inline.js
**Prettier Similarity**: 100.00%
### js/template/parenthesis.js
**Prettier Similarity**: 100.00%
### js/ternaries/binary.js
**Prettier Similarity**: 100.00%
### js/ternaries/func-call.js
```diff
fn(
bifornCringerMoshedPerplexSawder,
askTrovenaBeenaDependsRowans,
glimseGlyphsHazardNoopsTieTie === averredBathersBoxroomBuggyNurl &&
- anodyneCondosMalateOverateRetinol
+ anodyneCondosMalateOverateRetinol
? annularCooeedSplicesWalksWayWay
: kochabCooieGameOnOboleUnweave,
);
// TODO(rattrayalex): try to indent consequent/alternate here.
```
**Prettier Similarity**: 88.89%
### js/ternaries/indent-after-paren.js
**Prettier Similarity**: 100.00%
### js/ternaries/indent.js
**Prettier Similarity**: 100.00%
### js/ternaries/nested-in-condition.js
**Prettier Similarity**: 100.00%
### js/ternaries/nested.js
**Prettier Similarity**: 100.00%
### js/ternaries/parenthesis.js
**Prettier Similarity**: 100.00%
### js/ternaries/test.js
**Prettier Similarity**: 100.00%
### js/test-declarations/angular_async.js
**Prettier Similarity**: 100.00%
### js/test-declarations/angular_fakeAsync.js
**Prettier Similarity**: 100.00%
### js/test-declarations/angular_waitForAsync.js
**Prettier Similarity**: 100.00%
### js/test-declarations/angularjs_inject.js
```diff
beforeEach(inject(($fooService, $barService) => {
// code
}));
afterAll(inject(($fooService, $barService) => {
console.log("Hello");
}));
it("should create the app", inject(($fooService, $barService) => {
//code
}));
it("does something really long and complicated so I have to write a very long name for the test", inject(() => {
// code
}));
-it("does something really long and complicated so I have to write a very long name for the test", inject((
- $fooServiceLongName,
- $barServiceLongName,
-) => {
+it("does something really long and complicated so I have to write a very long name for the test", inject(($fooServiceLongName, $barServiceLongName) => {
// code
}));
/*
* isTestCall(parent) should only be called when parent exists
* and parent.type is CallExpression. This test makes sure that
* no errors are thrown when calling isTestCall(parent)
*/
function x() {
inject(() => {});
}
```
**Prettier Similarity**: 87.10%
### js/test-declarations/jest-each-template-string.js
**Prettier Similarity**: 100.00%
### js/test-declarations/jest-each.js
**Prettier Similarity**: 100.00%
### js/test-declarations/test_declarations.js
**Prettier Similarity**: 100.00%
### js/throw_expressions/throw_expression.js
```diff
-function save(filename = throw new TypeError("Argument required")) {}
+function save(filename = throw new TypeError("Argument required")
+)
+{
+}
lint(ast, {
- with: () => throw new Error("avoid using 'with' statements."),
+ with: () => throw new Error("avoid using 'with' statements.")
});
function getEncoder(encoding) {
- const encoder =
- encoding === "utf8"
- ? new UTF8Encoder()
- : encoding === "utf16le"
- ? new UTF16Encoder(false)
- : encoding === "utf16be"
- ? new UTF16Encoder(true)
- : throw new Error("Unsupported encoding");
+ const encoder = encoding === "utf8" ? new UTF8Encoder()
+ : encoding === "utf16le" ? new UTF16Encoder(false)
+ : encoding === "utf16be" ? new UTF16Encoder(true)
+ :
+ throw new Error("Unsupported encoding");
}
class Product {
get id() {
return this._id;
}
set id(value) {
- this._id = value || throw new Error("Invalid value");
+ this._id = value ||
+ throw new Error("Invalid value");
}
}
```
**Prettier Similarity**: 53.85%
### js/throw_statement/binaryish.js
**Prettier Similarity**: 100.00%
### js/throw_statement/comment.js
**Prettier Similarity**: 100.00%
### js/top-level-await/example.js
**Prettier Similarity**: 100.00%
### js/top-level-await/in-expression.js
**Prettier Similarity**: 100.00%
### js/trailing-comma/dynamic-import.js
**Prettier Similarity**: 100.00%
### js/trailing-comma/es5.js
**Prettier Similarity**: 100.00%
### js/trailing-comma/function-calls.js
**Prettier Similarity**: 100.00%
### js/trailing-comma/object.js
**Prettier Similarity**: 100.00%
### js/trailing-comma/trailing_whitespace.js
**Prettier Similarity**: 100.00%
### js/try/catch.js
**Prettier Similarity**: 100.00%
### js/try/empty.js
**Prettier Similarity**: 100.00%
### js/try/try.js
**Prettier Similarity**: 100.00%
### js/unary-expression/comments.js
**Prettier Similarity**: 100.00%
### js/unary-expression/urnary_expression.js
**Prettier Similarity**: 100.00%
### js/unary/object.js
**Prettier Similarity**: 100.00%
### js/unary/series.js
**Prettier Similarity**: 100.00%
### js/unicode/combining-characters.js
**Prettier Similarity**: 100.00%
### js/unicode/keys.js
**Prettier Similarity**: 100.00%
### js/update-expression/update_expression.js
**Prettier Similarity**: 100.00%
### js/variable_declarator/multiple.js
**Prettier Similarity**: 100.00%
### js/variable_declarator/string.js
**Prettier Similarity**: 100.00%
### js/while/indent.js
**Prettier Similarity**: 100.00%
### js/with/indent.js
**Prettier Similarity**: 100.00%
### js/yield/arrow.js
**Prettier Similarity**: 100.00%
### js/yield/conditional.js
**Prettier Similarity**: 100.00%