Wrap conditionals and await in parens in spread property (#3681)

master
Lucas Duailibe 2018-01-09 01:45:51 -02:00 committed by GitHub
parent dc4e44968f
commit 01a59eeee3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 0 deletions

View File

@ -435,6 +435,7 @@ FastPath.prototype.needsParens = function(options) {
case "LogicalExpression":
case "SpreadElement":
case "SpreadProperty":
case "ExperimentalSpreadProperty":
case "TSAsExpression":
case "TSNonNullExpression":
return true;
@ -546,6 +547,7 @@ FastPath.prototype.needsParens = function(options) {
case "UnaryExpression":
case "SpreadElement":
case "SpreadProperty":
case "ExperimentalSpreadProperty":
case "BinaryExpression":
case "LogicalExpression":
case "ExportDefaultDeclaration":

View File

@ -3,8 +3,14 @@
exports[`spread.js 1`] = `
const foo = { ...(a || b) };
const foo2 = { ...a || b };
const foo3 = { ...(a ? b : c) };
async () => ({ ...(await foo) });
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
const foo = { ...(a || b) };
const foo2 = { ...(a || b) };
const foo3 = { ...(a ? b : c) };
async () => ({ ...(await foo) });
`;

View File

@ -1,2 +1,5 @@
const foo = { ...(a || b) };
const foo2 = { ...a || b };
const foo3 = { ...(a ? b : c) };
async () => ({ ...(await foo) });