Remove unnecessary parentheses around class expression (#14409)
This commit is contained in:
1 parent
dbd5e3fe26
commit
80419fa69e
4 files changed
+57
-61
No files matched your search
@@ -0,0 +1,23 @@
|
||||
#### Remove unnecessary parentheses around class expression (#14409 by @fisker)
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```jsx
|
||||
// Input
|
||||
call(
|
||||
@dec class {}
|
||||
);
|
||||
|
||||
// Prettier stable
|
||||
call(
|
||||
(
|
||||
@dec
|
||||
class {}
|
||||
)
|
||||
);
|
||||
|
||||
// Prettier main
|
||||
call(
|
||||
@dec
|
||||
class {},
|
||||
);
|
||||
```
|
||||
@@ -155,7 +155,8 @@ function needsParens(path, options) {
|
||||
node.type === "UnaryExpression" ||
|
||||
node.type === "UpdateExpression" ||
|
||||
node.type === "YieldExpression" ||
|
||||
node.type === "TSNonNullExpression")
|
||||
node.type === "TSNonNullExpression" ||
|
||||
(node.type === "ClassExpression" && isNonEmptyArray(node.decorators)))
|
||||
) {
|
||||
return true;
|
||||
}
|
||||
@@ -766,10 +767,6 @@ function needsParens(path, options) {
|
||||
}
|
||||
|
||||
case "ClassExpression":
|
||||
if (isNonEmptyArray(node.decorators)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
switch (parent.type) {
|
||||
case "NewExpression":
|
||||
return key === "callee";
|
||||
|
||||
@@ -51,20 +51,16 @@ export class Bar {}
|
||||
export default class Baz {}
|
||||
|
||||
const foo =
|
||||
(
|
||||
@deco
|
||||
class {
|
||||
//
|
||||
}
|
||||
);
|
||||
@deco
|
||||
class {
|
||||
//
|
||||
};
|
||||
|
||||
const bar =
|
||||
(
|
||||
@deco
|
||||
class {
|
||||
//
|
||||
}
|
||||
);
|
||||
@deco
|
||||
class {
|
||||
//
|
||||
};
|
||||
|
||||
================================================================================
|
||||
`;
|
||||
@@ -293,18 +289,14 @@ printWidth: 80
|
||||
@(decorators["first"])
|
||||
method() {}
|
||||
},
|
||||
(
|
||||
@(decorators[first])
|
||||
class {
|
||||
method() {}
|
||||
}
|
||||
),
|
||||
(
|
||||
@(decorators[0])
|
||||
class {
|
||||
method() {}
|
||||
}
|
||||
),
|
||||
@(decorators[first])
|
||||
class {
|
||||
method() {}
|
||||
},
|
||||
@(decorators[0])
|
||||
class {
|
||||
method() {}
|
||||
},
|
||||
];
|
||||
|
||||
================================================================================
|
||||
|
||||
@@ -76,16 +76,12 @@ console.log(@deco class {})
|
||||
|
||||
=====================================output=====================================
|
||||
console.log(
|
||||
(
|
||||
@deco
|
||||
class Foo {}
|
||||
),
|
||||
@deco
|
||||
class Foo {},
|
||||
)
|
||||
console.log(
|
||||
(
|
||||
@deco
|
||||
class {}
|
||||
),
|
||||
@deco
|
||||
class {},
|
||||
)
|
||||
|
||||
================================================================================
|
||||
@@ -102,16 +98,12 @@ console.log(@deco class {})
|
||||
|
||||
=====================================output=====================================
|
||||
console.log(
|
||||
(
|
||||
@deco
|
||||
class Foo {}
|
||||
),
|
||||
@deco
|
||||
class Foo {},
|
||||
);
|
||||
console.log(
|
||||
(
|
||||
@deco
|
||||
class {}
|
||||
),
|
||||
@deco
|
||||
class {},
|
||||
);
|
||||
|
||||
================================================================================
|
||||
@@ -213,15 +205,11 @@ const b2 = []
|
||||
|
||||
=====================================output=====================================
|
||||
const a1 =
|
||||
(
|
||||
@deco
|
||||
class Foo {}
|
||||
)
|
||||
@deco
|
||||
class Foo {}
|
||||
const a2 =
|
||||
(
|
||||
@deco
|
||||
class {}
|
||||
)
|
||||
@deco
|
||||
class {}
|
||||
|
||||
;(
|
||||
@deco
|
||||
@@ -274,15 +262,11 @@ const b2 = []
|
||||
|
||||
=====================================output=====================================
|
||||
const a1 =
|
||||
(
|
||||
@deco
|
||||
class Foo {}
|
||||
);
|
||||
@deco
|
||||
class Foo {};
|
||||
const a2 =
|
||||
(
|
||||
@deco
|
||||
class {}
|
||||
);
|
||||
@deco
|
||||
class {};
|
||||
|
||||
(
|
||||
@deco
|
||||
|
||||
Reference in new issue
Block a user