Handle additional export default parens cases (#298)
parent
870dbd0003
commit
c02bd6a8d5
|
@ -1830,6 +1830,12 @@ function printReturnType(path, print) {
|
|||
return concat(parts);
|
||||
}
|
||||
|
||||
function typeIsFunction(type) {
|
||||
return type === "FunctionExpression" ||
|
||||
type === "ArrowFunctionExpression" ||
|
||||
type === "NewExpression";
|
||||
}
|
||||
|
||||
function printExportDeclaration(path, options, print) {
|
||||
var decl = path.getValue();
|
||||
var parts = [ "export " ];
|
||||
|
@ -1847,7 +1853,8 @@ function printExportDeclaration(path, options, print) {
|
|||
if (
|
||||
decl.type === "ExportDefaultDeclaration" &&
|
||||
(decl.declaration.type == "Identifier" ||
|
||||
decl.declaration.type === "CallExpression")
|
||||
decl.declaration.type === "CallExpression" ||
|
||||
typeIsFunction(decl.declaration.type))
|
||||
) {
|
||||
parts.push(";");
|
||||
}
|
||||
|
@ -1986,9 +1993,7 @@ function printMemberChain(node, options, print) {
|
|||
function argIsFunction(call) {
|
||||
if (call.arguments.length > 0) {
|
||||
const type = call.arguments[(0)].type;
|
||||
return type === "FunctionExpression" ||
|
||||
type === "ArrowFunctionExpression" ||
|
||||
type === "NewExpression";
|
||||
return typeIsFunction(type);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -1347,10 +1347,33 @@ import {
|
|||
"
|
||||
`;
|
||||
|
||||
exports[`test export_default_call_expression.js 1`] = `
|
||||
"export default connect(mapStateToProps)(MyComponent);
|
||||
exports[`test export_default_arrow_expression.js 1`] = `
|
||||
"export default () => {};
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
export default connect(mapStateToProps)(MyComponent);
|
||||
export default () => {
|
||||
};
|
||||
"
|
||||
`;
|
||||
|
||||
exports[`test export_default_call_expression.js 1`] = `
|
||||
"export default foo()
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
export default foo();
|
||||
"
|
||||
`;
|
||||
|
||||
exports[`test export_default_function_expression.js 1`] = `
|
||||
"export default (function() {});
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
export default function() {
|
||||
};
|
||||
"
|
||||
`;
|
||||
|
||||
exports[`test export_default_new_expression.js 1`] = `
|
||||
"export default new Foo();
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
export default new Foo();
|
||||
"
|
||||
`;
|
||||
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
export default () => {};
|
|
@ -1 +1 @@
|
|||
export default connect(mapStateToProps)(MyComponent);
|
||||
export default foo()
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
export default (function() {});
|
|
@ -0,0 +1 @@
|
|||
export default new Foo();
|
Loading…
Reference in New Issue