diff --git a/bin/jscodefmt b/bin/jscodefmt index 8b66a9d5e..861c37d8b 100755 --- a/bin/jscodefmt +++ b/bin/jscodefmt @@ -5,18 +5,20 @@ const minimist = require("minimist"); const jscodefmt = require("../index"); const argv = minimist(process.argv.slice(2), { - boolean: ["write", "useFlowParser"] + boolean: ["write", "useFlowParser", "bracket-spacing"] }); const filename = argv["_"][0]; const printWidth = argv['print-width'] || 80; const tabWidth = argv['tab-width'] || 2; const useFlowParser = argv['flow-parser']; +const bracketSpacing = argv['bracket-spacing']; const write = argv['write']; const output = jscodefmt.format(fs.readFileSync(filename, "utf8"), { printWidth, tabWidth, + bracketSpacing, useFlowParser }); diff --git a/index.js b/index.js index 6330f7c39..b8c33665a 100644 --- a/index.js +++ b/index.js @@ -27,7 +27,6 @@ var babylonOptions = { module.exports = { format: function(text, opts={}) { - let { tabWidth = 2, printWidth = 80 } = opts; let ast; if(opts.useFlowParser) { @@ -52,7 +51,7 @@ module.exports = { ast.tokens = []; - const printer = new Printer({ tabWidth, wrapColumn: printWidth }); + const printer = new Printer(opts); return printer.printGenerically(ast).code; } }; diff --git a/src/options.js b/src/options.js index 9fffa59eb..43ec74271 100644 --- a/src/options.js +++ b/src/options.js @@ -1,64 +1,15 @@ var defaults = { - // If you want to use a different branch of esprima, or any other - // module that supports a .parse function, pass that module object to - // recast.parse as options.parser (legacy synonym: options.esprima). - parser: require("esprima"), - // Number of spaces the pretty-printer should use per tab for // indentation. If you do not pass this option explicitly, it will be // (quite reliably!) inferred from the original code. - tabWidth: 4, + tabWidth: 2, - // If you really want the pretty-printer to use tabs instead of - // spaces, make this option true. - useTabs: false, - - // The reprinting code leaves leading whitespace untouched unless it - // has to reindent a line, or you pass false for this option. - reuseWhitespace: true, - - // Override this option to use a different line terminator, e.g. \r\n. - lineTerminator: require("os").EOL, - - // Some of the pretty-printer code (such as that for printing function - // parameter lists) makes a valiant attempt to prevent really long - // lines. You can adjust the limit by changing this option; however, - // there is no guarantee that line length will fit inside this limit. - wrapColumn: 74, // Aspirational for now. - - // Pass a string as options.sourceFileName to recast.parse to tell the - // reprinter to keep track of reused code so that it can construct a - // source map automatically. - sourceFileName: null, - - // Pass a string as options.sourceMapName to recast.print, and - // (provided you passed options.sourceFileName earlier) the - // PrintResult of recast.print will have a .map property for the - // generated source map. - sourceMapName: null, - - // If provided, this option will be passed along to the source map - // generator as a root directory for relative source file paths. - sourceRoot: null, - - // If you provide a source map that was generated from a previous call - // to recast.print as options.inputSourceMap, the old source map will - // be composed with the new source map. - inputSourceMap: null, - - // If you want esprima to generate .range information (recast only - // uses .loc internally), pass true for this option. - range: false, - - // If you want esprima not to throw exceptions when it encounters - // non-fatal errors, keep this option true. - tolerant: true, + // Fit code within this line limit. + printWidth: 80, // If you want to override the quotes used in string literals, specify - // either "single", "double", or "auto" here ("auto" will select the one - // which results in the shorter literal) - // Otherwise, double quotes are used. - quote: null, + // either "single" or "double". + quote: "double", // Controls the printing of trailing commas in object literals, // array expressions and function parameters. @@ -75,23 +26,9 @@ var defaults = { // } trailingComma: false, - // Controls the printing of spaces inside array brackets. + // Controls the printing of spaces inside array and objects // See: http://eslint.org/docs/rules/array-bracket-spacing - arrayBracketSpacing: false, - - // Controls the printing of spaces inside object literals, - // destructuring assignments, and import/export specifiers. - // See: http://eslint.org/docs/rules/object-curly-spacing - objectCurlySpacing: true, - - // If you want parenthesis to wrap single-argument arrow function parameter - // lists, pass true for this option. - arrowParensAlways: false, - - // There are 2 supported syntaxes (`,` and `;`) in Flow Object Types; - // The use of commas is in line with the more popular style and matches - // how objects are defined in JS, making it a bit more natural to write. - flowObjectCommas: true, + bracketSpacing: true }, hasOwn = defaults.hasOwnProperty; // Copy options and fill in default values. @@ -106,22 +43,9 @@ exports.normalize = function(options) { return { tabWidth: +get("tabWidth"), - useTabs: !!get("useTabs"), - reuseWhitespace: !!get("reuseWhitespace"), - lineTerminator: get("lineTerminator"), - wrapColumn: Math.max(get("wrapColumn"), 0), - sourceFileName: get("sourceFileName"), - sourceMapName: get("sourceMapName"), - sourceRoot: get("sourceRoot"), - inputSourceMap: get("inputSourceMap"), - parser: get("esprima") || get("parser"), - range: get("range"), - tolerant: get("tolerant"), + printWidth: Math.max(get("printWidth"), 0), quote: get("quote"), trailingComma: get("trailingComma"), - arrayBracketSpacing: get("arrayBracketSpacing"), - objectCurlySpacing: get("objectCurlySpacing"), - arrowParensAlways: get("arrowParensAlways"), - flowObjectCommas: get("flowObjectCommas"), + bracketSpacing: get("bracketSpacing") }; }; diff --git a/src/printer.js b/src/printer.js index ac3b3fd13..a8472e1c9 100644 --- a/src/printer.js +++ b/src/printer.js @@ -149,7 +149,7 @@ function Printer(originalOptions) { options.reuseWhitespace = false; var res = printGenerically(path); - var pr = new PrintResult(pp.print(options.wrapColumn, res)); + var pr = new PrintResult(pp.print(options.printWidth, res)); options.reuseWhitespace = oldReuseWhitespace; @@ -666,9 +666,12 @@ function genericPrintNoParens(path, options, print) { leftBrace, indent( options.tabWidth, - concat([ line, join(concat([ separator, line ]), props) ]) + concat([ + options.bracketSpacing ? line : softline, + join(concat([ separator, line ]), props) + ]) ), - line, + options.bracketSpacing ? line : softline, rightBrace, path.call(print, "typeAnnotation") ] diff --git a/tests/config_module_name_mapper_PROJECT_ROOT-1.0/__snapshots__/jsfmt.spec.js.snap b/tests/config_module_name_mapper_PROJECT_ROOT-1.0/__snapshots__/jsfmt.spec.js.snap index 4a7673782..24d88ab7a 100644 --- a/tests/config_module_name_mapper_PROJECT_ROOT-1.0/__snapshots__/jsfmt.spec.js.snap +++ b/tests/config_module_name_mapper_PROJECT_ROOT-1.0/__snapshots__/jsfmt.spec.js.snap @@ -8,7 +8,7 @@ var b: string = test; // Error: number ~> string ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow // Error: number ~> string -import { test } from \"testmodule\"; +import {test} from \"testmodule\"; var a: number = test; var b: string = test; " diff --git a/tests/config_module_name_mapper_filetype/__snapshots__/jsfmt.spec.js.snap b/tests/config_module_name_mapper_filetype/__snapshots__/jsfmt.spec.js.snap index 9da8c1817..489304035 100644 --- a/tests/config_module_name_mapper_filetype/__snapshots__/jsfmt.spec.js.snap +++ b/tests/config_module_name_mapper_filetype/__snapshots__/jsfmt.spec.js.snap @@ -6,7 +6,7 @@ import {doesntExist} from \"./SomeCSSFile.css\"; // Error: \`doestExist\` isn\'t ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow // Error: \`doestExist\` isn\'t an export -import { className } from \"./SomeCSSFile.css\"; -import { doesntExist } from \"./SomeCSSFile.css\"; +import {className} from \"./SomeCSSFile.css\"; +import {doesntExist} from \"./SomeCSSFile.css\"; " `; diff --git a/tests/config_module_name_rewrite_haste/__snapshots__/jsfmt.spec.js.snap b/tests/config_module_name_rewrite_haste/__snapshots__/jsfmt.spec.js.snap index aef90c394..74f4ff2ee 100644 --- a/tests/config_module_name_rewrite_haste/__snapshots__/jsfmt.spec.js.snap +++ b/tests/config_module_name_rewrite_haste/__snapshots__/jsfmt.spec.js.snap @@ -21,11 +21,11 @@ import {numVal as numVal2} from \'3DoesntExist\'; // Error // Error // Error var m1 = require(\"1DoesntExist\"); -import { numVal as numVal1 } from \"1DoesntExist\"; +import {numVal as numVal1} from \"1DoesntExist\"; var a_1: number = m1.numVal; var a_2: number = numVal1; var m2 = require(\"2DoesntExist\"); -import { numVal as numVal2 } from \"3DoesntExist\"; +import {numVal as numVal2} from \"3DoesntExist\"; " `; diff --git a/tests/config_module_name_rewrite_node/__snapshots__/jsfmt.spec.js.snap b/tests/config_module_name_rewrite_node/__snapshots__/jsfmt.spec.js.snap index f7fd51887..cdfbf29b1 100644 --- a/tests/config_module_name_rewrite_node/__snapshots__/jsfmt.spec.js.snap +++ b/tests/config_module_name_rewrite_node/__snapshots__/jsfmt.spec.js.snap @@ -38,19 +38,19 @@ var c_4: string = numVal3; // Error: number ~> string var m1 = require(\"./1DoesntExist\"); var a_1: number = m1.numVal; var a_2: string = m1.numVal; -import { numVal } from \"./1DoesntExist\"; +import {numVal} from \"./1DoesntExist\"; var a_3: number = numVal; var a_4: string = numVal; var m2 = require(\"./2DoesntExist\"); var b_1: number = m2.numVal; var b_2: string = m2.numVal; -import { numVal as numVal2 } from \"./3DoesntExist\"; +import {numVal as numVal2} from \"./3DoesntExist\"; var b_3: number = numVal2; var b_4: string = numVal2; var m3 = require(\"4DoesntExist\"); var c_1: number = m3.numVal; var c_2: string = m3.numVal; -import { numVal as numVal3 } from \"5DoesntExist\"; +import {numVal as numVal3} from \"5DoesntExist\"; var c_3: number = numVal3; var c_4: string = numVal3; " diff --git a/tests/config_module_system_node_resolve_dirname/__snapshots__/jsfmt.spec.js.snap b/tests/config_module_system_node_resolve_dirname/__snapshots__/jsfmt.spec.js.snap index 7ddc509b9..316b7875b 100644 --- a/tests/config_module_system_node_resolve_dirname/__snapshots__/jsfmt.spec.js.snap +++ b/tests/config_module_system_node_resolve_dirname/__snapshots__/jsfmt.spec.js.snap @@ -8,7 +8,7 @@ import {name} from \"testproj\"; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow // Error: Resolve from node_modules first! -import { name } from \"testproj\"; +import {name} from \"testproj\"; (name: \"node_modules/testproj\"); diff --git a/tests/config_module_system_node_resolve_dirname/subdir/__snapshots__/jsfmt.spec.js.snap b/tests/config_module_system_node_resolve_dirname/subdir/__snapshots__/jsfmt.spec.js.snap index 62c262d85..b258d1513 100644 --- a/tests/config_module_system_node_resolve_dirname/subdir/__snapshots__/jsfmt.spec.js.snap +++ b/tests/config_module_system_node_resolve_dirname/subdir/__snapshots__/jsfmt.spec.js.snap @@ -8,7 +8,7 @@ import {name} from \"testproj2\"; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow // Error: Resolve from sibling \'custom_resolve_dir\' first! -import { name } from \"testproj2\"; +import {name} from \"testproj2\"; (name: \"node_modules/testproj2\"); diff --git a/tests/config_munging_underscores/__snapshots__/jsfmt.spec.js.snap b/tests/config_munging_underscores/__snapshots__/jsfmt.spec.js.snap index 9ef4e6379..b09693c91 100644 --- a/tests/config_munging_underscores/__snapshots__/jsfmt.spec.js.snap +++ b/tests/config_munging_underscores/__snapshots__/jsfmt.spec.js.snap @@ -95,6 +95,6 @@ exports[`test commonjs_import.js 1`] = ` import {_p} from \"./commonjs_export\"; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /* @flow */ -import { _p } from \"./commonjs_export\"; +import {_p} from \"./commonjs_export\"; " `; diff --git a/tests/declaration_files_incremental_node/__snapshots__/jsfmt.spec.js.snap b/tests/declaration_files_incremental_node/__snapshots__/jsfmt.spec.js.snap index 7347646aa..5c5cd641b 100644 --- a/tests/declaration_files_incremental_node/__snapshots__/jsfmt.spec.js.snap +++ b/tests/declaration_files_incremental_node/__snapshots__/jsfmt.spec.js.snap @@ -125,7 +125,7 @@ exports[`test test_relative.js 1`] = ` (foo(): boolean); // Error: either Implementation ~> boolean or Definition ~> boolean ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Error: either Implementation ~> boolean or Definition ~> boolean -import { foo } from \"./A\"; +import {foo} from \"./A\"; (foo(): boolean); " diff --git a/tests/declare_export/__snapshots__/jsfmt.spec.js.snap b/tests/declare_export/__snapshots__/jsfmt.spec.js.snap index 58d7571f7..b99fd957a 100644 --- a/tests/declare_export/__snapshots__/jsfmt.spec.js.snap +++ b/tests/declare_export/__snapshots__/jsfmt.spec.js.snap @@ -179,7 +179,7 @@ declare export function getAFoo(): FooImpl; // // Default-exported class should also be available in local scope declare export default class FooImpl { givesANum(): number } -declare export { FooImpl as Foo } +declare export {FooImpl as Foo} declare export function getAFoo(): FooImpl; " `; @@ -335,7 +335,7 @@ declare export { * @providesModule ES6_ExportFrom_Intermediary1 * @flow */ -declare export { numberValue1, numberValue2 as numberValue2_renamed } from \"ES6_ExportFrom_Source1\" +declare export {numberValue1, numberValue2 as numberValue2_renamed} from \"ES6_ExportFrom_Source1\" " `; @@ -354,7 +354,7 @@ declare export { * @providesModule ES6_ExportFrom_Intermediary2 * @flow */ -declare export { numberValue1, numberValue2 as numberValue2_renamed2 } from \"ES6_ExportFrom_Source2\" +declare export {numberValue1, numberValue2 as numberValue2_renamed2} from \"ES6_ExportFrom_Source2\" " `; @@ -426,10 +426,10 @@ var specifierNumber2 = 2; var specifierNumber3 = 3; var groupedSpecifierNumber1 = 1; var groupedSpecifierNumber2 = 2; -declare export { specifierNumber1 } -declare export { specifierNumber2 as specifierNumber2Renamed } -declare export { specifierNumber3 } -declare export { groupedSpecifierNumber1, groupedSpecifierNumber2 } +declare export {specifierNumber1} +declare export {specifierNumber2 as specifierNumber2Renamed} +declare export {specifierNumber3} +declare export {groupedSpecifierNumber1, groupedSpecifierNumber2} declare export function givesANumber(): number; declare export class NumberGenerator { givesANumber(): number } declare export var varDeclNumber1: number; @@ -466,9 +466,9 @@ var specifierNumber4 = 1; var specifierNumber5 = 2; var groupedSpecifierNumber3 = 1; var groupedSpecifierNumber4 = 2; -declare export { specifierNumber4 } -declare export { specifierNumber5 as specifierNumber5Renamed } -declare export { groupedSpecifierNumber3, groupedSpecifierNumber4 } +declare export {specifierNumber4} +declare export {specifierNumber5 as specifierNumber5Renamed} +declare export {groupedSpecifierNumber3, groupedSpecifierNumber4} declare export function givesANumber2(): number; declare export class NumberGenerator2 { givesANumber(): number } declare export var varDeclNumber3: number; @@ -980,11 +980,11 @@ var b1: number = DefaultB.numberValue; var b2: string = DefaultB.numberValue; import DefaultC from \"C\"; import DefaultD from \"./D\"; -import { doesntExist1 } from \"CommonJS_Clobbering_Lit\"; -import { numberValue1 } from \"CommonJS_Clobbering_Lit\"; +import {doesntExist1} from \"CommonJS_Clobbering_Lit\"; +import {numberValue1} from \"CommonJS_Clobbering_Lit\"; var c1: number = numberValue1; var c2: string = numberValue1; -import { numberValue2 as numVal1 } from \"CommonJS_Clobbering_Lit\"; +import {numberValue2 as numVal1} from \"CommonJS_Clobbering_Lit\"; var d1: number = numVal1; var d2: string = numVal1; import CJS_Clobb_Lit from \"CommonJS_Clobbering_Lit\"; @@ -1001,8 +1001,8 @@ CJS_Clobb_Lit_NS.default.default; var f3: string = CJS_Clobb_Lit_NS.numberValue4; var f4: string = CJS_Clobb_Lit_NS.default.numberValue5; -import { doesntExist2 } from \"CommonJS_Clobbering_Class\"; -import { staticNumber1, baseProp, childProp } from \"CommonJS_Clobbering_Class\"; +import {doesntExist2} from \"CommonJS_Clobbering_Class\"; +import {staticNumber1, baseProp, childProp} from \"CommonJS_Clobbering_Class\"; import CJS_Clobb_Class from \"CommonJS_Clobbering_Class\"; new CJS_Clobb_Class(); @@ -1020,11 +1020,11 @@ new CJS_Clobb_Class_NS(); var i1: number = CJS_Clobb_Class_NS.staticNumber3(); var i2: number = new CJS_Clobb_Class_NS.default().instNumber2(); var i3: string = new CJS_Clobb_Class_NS.default().instNumber2(); -import { doesntExist3 } from \"CommonJS_Named\"; -import { numberValue2 } from \"CommonJS_Named\"; +import {doesntExist3} from \"CommonJS_Named\"; +import {numberValue2} from \"CommonJS_Named\"; var j1: number = numberValue2; var j2: string = numberValue2; -import { numberValue3 as numVal3 } from \"CommonJS_Named\"; +import {numberValue3 as numVal3} from \"CommonJS_Named\"; var k1: number = numVal3; var k2: string = numVal3; import * as CJS_Named from \"CommonJS_Named\"; @@ -1037,7 +1037,7 @@ import * as CJS_Named_NS from \"CommonJS_Named\"; var m1: number = CJS_Named_NS.numberValue4; var m2: string = CJS_Named_NS.default.numberValue4; var m3: string = CJS_Named_NS.numberValue4; -import { doesntExist4 } from \"ES6_Default_AnonFunction1\"; +import {doesntExist4} from \"ES6_Default_AnonFunction1\"; import ES6_Def_AnonFunc1 from \"ES6_Default_AnonFunction1\"; var n1: number = ES6_Def_AnonFunc1(); var n2: string = ES6_Def_AnonFunc1(); @@ -1048,38 +1048,38 @@ import ES6_Def_NamedClass1 from \"ES6_Default_NamedClass1\"; var q1: number = new ES6_Def_NamedClass1().givesANum(); var q2: string = new ES6_Def_NamedClass1().givesANum(); import doesntExist5 from \"ES6_Named1\"; -import { specifierNumber1 as specifierNumber1_1 } from \"ES6_Named1\"; +import {specifierNumber1 as specifierNumber1_1} from \"ES6_Named1\"; var r1: number = specifierNumber1_1; var r2: string = specifierNumber1_1; -import { specifierNumber2Renamed } from \"ES6_Named1\"; +import {specifierNumber2Renamed} from \"ES6_Named1\"; var s1: number = specifierNumber2Renamed; var s2: string = specifierNumber2Renamed; -import { specifierNumber3 as specifierNumber3Renamed } from \"ES6_Named1\"; +import {specifierNumber3 as specifierNumber3Renamed} from \"ES6_Named1\"; var t1: number = specifierNumber3Renamed; var t2: string = specifierNumber3Renamed; -import { groupedSpecifierNumber1, groupedSpecifierNumber2 } from \"ES6_Named1\"; +import {groupedSpecifierNumber1, groupedSpecifierNumber2} from \"ES6_Named1\"; var u1: number = groupedSpecifierNumber1; var u2: number = groupedSpecifierNumber2; var u3: string = groupedSpecifierNumber1; var u4: string = groupedSpecifierNumber2; -import { givesANumber } from \"ES6_Named1\"; +import {givesANumber} from \"ES6_Named1\"; var v1: number = givesANumber(); var v2: string = givesANumber(); -import { NumberGenerator } from \"ES6_Named1\"; +import {NumberGenerator} from \"ES6_Named1\"; var w1: number = new NumberGenerator().givesANumber(); var w2: string = new NumberGenerator().givesANumber(); -import { varDeclNumber1, varDeclNumber2 } from \"ES6_Named1\"; +import {varDeclNumber1, varDeclNumber2} from \"ES6_Named1\"; var x1: number = varDeclNumber1; var x2: number = varDeclNumber2; var x3: string = varDeclNumber1; var x4: string = varDeclNumber2; -import { numberValue1 as numberValue4 } from \"ES6_ExportFrom_Intermediary1\"; +import {numberValue1 as numberValue4} from \"ES6_ExportFrom_Intermediary1\"; var aa1: number = numberValue4; var aa2: string = numberValue4; -import { numberValue2_renamed } from \"ES6_ExportFrom_Intermediary1\"; +import {numberValue2_renamed} from \"ES6_ExportFrom_Intermediary1\"; var ab1: number = numberValue2_renamed; var ab2: string = numberValue2_renamed; -import { numberValue1 as numberValue5 } from \"ES6_ExportAllFrom_Intermediary1\"; +import {numberValue1 as numberValue5} from \"ES6_ExportAllFrom_Intermediary1\"; var ac1: number = numberValue5; var ac2: string = numberValue5; @@ -1129,15 +1129,15 @@ var aq2: string = numberValue2_renamed2; var numberValue7 = require(\"ES6_ExportAllFrom_Intermediary2\").numberValue2; var ar1: number = numberValue7; var ar2: string = numberValue7; -import defaultNum, { str as namedStr } from \"./ES6_DefaultAndNamed\"; +import defaultNum, {str as namedStr} from \"./ES6_DefaultAndNamed\"; var as1: number = defaultNum; var as2: string = defaultNum; var as3: string = namedStr; var as4: number = namedStr; import \"./SideEffects\"; import specifierNumber1 from \"ES6_Named1\"; -import { specifierNumber } from \"ES6_Named1\"; -import { numberValue1 as numberValue8, numberValue2 as numberValue9 } from \"./ES6_ExportAllFromMulti\"; +import {specifierNumber} from \"ES6_Named1\"; +import {numberValue1 as numberValue8, numberValue2 as numberValue9} from \"./ES6_ExportAllFromMulti\"; var at1: number = numberValue8; var at2: string = numberValue8; var at3: number = numberValue9; diff --git a/tests/declare_module_exports/__snapshots__/jsfmt.spec.js.snap b/tests/declare_module_exports/__snapshots__/jsfmt.spec.js.snap index e75f58a83..432fdcd1e 100644 --- a/tests/declare_module_exports/__snapshots__/jsfmt.spec.js.snap +++ b/tests/declare_module_exports/__snapshots__/jsfmt.spec.js.snap @@ -41,8 +41,8 @@ import declare_module_exports from \"declare_module_exports\"; (declare_module_exports: string); -import { str } from \"declare_m_e_with_other_value_declares\"; -import type { str2 } from \"declare_m_e_with_other_type_declares\"; +import {str} from \"declare_m_e_with_other_value_declares\"; +import type {str2} from \"declare_m_e_with_other_type_declares\"; (\"asdf\": str2); diff --git a/tests/declare_type/__snapshots__/jsfmt.spec.js.snap b/tests/declare_type/__snapshots__/jsfmt.spec.js.snap index 8fee2746d..c03837030 100644 --- a/tests/declare_type/__snapshots__/jsfmt.spec.js.snap +++ b/tests/declare_type/__snapshots__/jsfmt.spec.js.snap @@ -45,15 +45,15 @@ blah(0, 0); // error : {toz : number} ~> string // error : number ~> A // error : string ~> number -import type { baz } from \"ModuleAliasFoo\"; -import { foo } from \"ModuleAliasFoo\"; +import type {baz} from \"ModuleAliasFoo\"; +import {foo} from \"ModuleAliasFoo\"; var k1: baz = 42; var k2: baz = \"shab\"; var k3: toz = foo(k1); -import type { toz } from \"ModuleAliasFoo\"; +import type {toz} from \"ModuleAliasFoo\"; var k4: toz = foo(k1); import blah from \"foo\"; -import type { Foo, Bar, Id } from \"foo\"; +import type {Foo, Bar, Id} from \"foo\"; blah(0, 0); diff --git a/tests/disjoint-union-perf/__snapshots__/jsfmt.spec.js.snap b/tests/disjoint-union-perf/__snapshots__/jsfmt.spec.js.snap index e693ccab8..70611b2e4 100644 --- a/tests/disjoint-union-perf/__snapshots__/jsfmt.spec.js.snap +++ b/tests/disjoint-union-perf/__snapshots__/jsfmt.spec.js.snap @@ -212,7 +212,7 @@ export function emitExpression(node: TypedNode) : t.Expression { // FALLTHROUGH import * as t from \"./jsAst\"; const b = t.builders; -import type { TypedNode } from \"./ast\"; +import type {TypedNode} from \"./ast\"; function getBinaryOp( op: \"plus\" | \"minus\" | \"divide\" | \"multiply\" diff --git a/tests/es6modules/__snapshots__/jsfmt.spec.js.snap b/tests/es6modules/__snapshots__/jsfmt.spec.js.snap index ead27c17c..7875553da 100644 --- a/tests/es6modules/__snapshots__/jsfmt.spec.js.snap +++ b/tests/es6modules/__snapshots__/jsfmt.spec.js.snap @@ -408,7 +408,7 @@ export { * @providesModule ES6_ExportFrom_Intermediary1 * @flow */ -export { numberValue1, numberValue2 as numberValue2_renamed } from \"ES6_ExportFrom_Source1\" +export {numberValue1, numberValue2 as numberValue2_renamed} from \"ES6_ExportFrom_Source1\" " `; @@ -427,7 +427,7 @@ export { * @providesModule ES6_ExportFrom_Intermediary2 * @flow */ -export { numberValue1, numberValue2 as numberValue2_renamed2 } from \"ES6_ExportFrom_Source2\" +export {numberValue1, numberValue2 as numberValue2_renamed2} from \"ES6_ExportFrom_Source2\" " `; @@ -496,10 +496,10 @@ var specifierNumber2 = 2; var specifierNumber3 = 3; var groupedSpecifierNumber1 = 1; var groupedSpecifierNumber2 = 2; -export { specifierNumber1 } -export { specifierNumber2 as specifierNumber2Renamed } -export { specifierNumber3 } -export { groupedSpecifierNumber1, groupedSpecifierNumber2 } +export {specifierNumber1} +export {specifierNumber2 as specifierNumber2Renamed} +export {specifierNumber3} +export {groupedSpecifierNumber1, groupedSpecifierNumber2} export function givesANumber(): number { return 42; } @@ -544,9 +544,9 @@ var specifierNumber4 = 1; var specifierNumber5 = 2; var groupedSpecifierNumber3 = 1; var groupedSpecifierNumber4 = 2; -export { specifierNumber4 } -export { specifierNumber5 as specifierNumber5Renamed } -export { groupedSpecifierNumber3, groupedSpecifierNumber4 } +export {specifierNumber4} +export {specifierNumber5 as specifierNumber5Renamed} +export {groupedSpecifierNumber3, groupedSpecifierNumber4} export function givesANumber2(): number { return 42; } @@ -1090,11 +1090,11 @@ var b1: number = DefaultB.numberValue; var b2: string = DefaultB.numberValue; import DefaultC from \"C\"; import DefaultD from \"./D\"; -import { doesntExist1 } from \"CommonJS_Clobbering_Lit\"; -import { numberValue1 } from \"CommonJS_Clobbering_Lit\"; +import {doesntExist1} from \"CommonJS_Clobbering_Lit\"; +import {numberValue1} from \"CommonJS_Clobbering_Lit\"; var c1: number = numberValue1; var c2: string = numberValue1; -import { numberValue2 as numVal1 } from \"CommonJS_Clobbering_Lit\"; +import {numberValue2 as numVal1} from \"CommonJS_Clobbering_Lit\"; var d1: number = numVal1; var d2: string = numVal1; import CJS_Clobb_Lit from \"CommonJS_Clobbering_Lit\"; @@ -1111,8 +1111,8 @@ CJS_Clobb_Lit_NS.default.default; var f3: string = CJS_Clobb_Lit_NS.numberValue4; var f4: string = CJS_Clobb_Lit_NS.default.numberValue5; -import { doesntExist2 } from \"CommonJS_Clobbering_Class\"; -import { staticNumber1, baseProp, childProp } from \"CommonJS_Clobbering_Class\"; +import {doesntExist2} from \"CommonJS_Clobbering_Class\"; +import {staticNumber1, baseProp, childProp} from \"CommonJS_Clobbering_Class\"; import CJS_Clobb_Class from \"CommonJS_Clobbering_Class\"; new CJS_Clobb_Class(); @@ -1130,11 +1130,11 @@ new CJS_Clobb_Class_NS(); var i1: number = CJS_Clobb_Class_NS.staticNumber3(); var i2: number = new CJS_Clobb_Class_NS.default().instNumber2(); var i3: string = new CJS_Clobb_Class_NS.default().instNumber2(); -import { doesntExist3 } from \"CommonJS_Named\"; -import { numberValue2 } from \"CommonJS_Named\"; +import {doesntExist3} from \"CommonJS_Named\"; +import {numberValue2} from \"CommonJS_Named\"; var j1: number = numberValue2; var j2: string = numberValue2; -import { numberValue3 as numVal3 } from \"CommonJS_Named\"; +import {numberValue3 as numVal3} from \"CommonJS_Named\"; var k1: number = numVal3; var k2: string = numVal3; import * as CJS_Named from \"CommonJS_Named\"; @@ -1147,7 +1147,7 @@ import * as CJS_Named_NS from \"CommonJS_Named\"; var m1: number = CJS_Named_NS.numberValue4; var m2: string = CJS_Named_NS.default.numberValue4; var m3: string = CJS_Named_NS.numberValue4; -import { doesntExist4 } from \"ES6_Default_AnonFunction1\"; +import {doesntExist4} from \"ES6_Default_AnonFunction1\"; import ES6_Def_AnonFunc1 from \"ES6_Default_AnonFunction1\"; var n1: number = ES6_Def_AnonFunc1(); var n2: string = ES6_Def_AnonFunc1(); @@ -1161,44 +1161,44 @@ import ES6_Def_NamedClass1 from \"ES6_Default_NamedClass1\"; var q1: number = new ES6_Def_NamedClass1().givesANum(); var q2: string = new ES6_Def_NamedClass1().givesANum(); import doesntExist5 from \"ES6_Named1\"; -import { specifierNumber1 as specifierNumber1_1 } from \"ES6_Named1\"; +import {specifierNumber1 as specifierNumber1_1} from \"ES6_Named1\"; var r1: number = specifierNumber1_1; var r2: string = specifierNumber1_1; -import { specifierNumber2Renamed } from \"ES6_Named1\"; +import {specifierNumber2Renamed} from \"ES6_Named1\"; var s1: number = specifierNumber2Renamed; var s2: string = specifierNumber2Renamed; -import { specifierNumber3 as specifierNumber3Renamed } from \"ES6_Named1\"; +import {specifierNumber3 as specifierNumber3Renamed} from \"ES6_Named1\"; var t1: number = specifierNumber3Renamed; var t2: string = specifierNumber3Renamed; -import { groupedSpecifierNumber1, groupedSpecifierNumber2 } from \"ES6_Named1\"; +import {groupedSpecifierNumber1, groupedSpecifierNumber2} from \"ES6_Named1\"; var u1: number = groupedSpecifierNumber1; var u2: number = groupedSpecifierNumber2; var u3: string = groupedSpecifierNumber1; var u4: string = groupedSpecifierNumber2; -import { givesANumber } from \"ES6_Named1\"; +import {givesANumber} from \"ES6_Named1\"; var v1: number = givesANumber(); var v2: string = givesANumber(); -import { NumberGenerator } from \"ES6_Named1\"; +import {NumberGenerator} from \"ES6_Named1\"; var w1: number = new NumberGenerator().givesANumber(); var w2: string = new NumberGenerator().givesANumber(); -import { varDeclNumber1, varDeclNumber2 } from \"ES6_Named1\"; +import {varDeclNumber1, varDeclNumber2} from \"ES6_Named1\"; var x1: number = varDeclNumber1; var x2: number = varDeclNumber2; var x3: string = varDeclNumber1; var x4: string = varDeclNumber2; -import { destructuredObjNumber } from \"ES6_Named1\"; +import {destructuredObjNumber} from \"ES6_Named1\"; var y1: number = destructuredObjNumber; var y2: string = destructuredObjNumber; -import { destructuredArrNumber } from \"ES6_Named1\"; +import {destructuredArrNumber} from \"ES6_Named1\"; var z1: number = destructuredArrNumber; var z2: string = destructuredArrNumber; -import { numberValue1 as numberValue4 } from \"ES6_ExportFrom_Intermediary1\"; +import {numberValue1 as numberValue4} from \"ES6_ExportFrom_Intermediary1\"; var aa1: number = numberValue4; var aa2: string = numberValue4; -import { numberValue2_renamed } from \"ES6_ExportFrom_Intermediary1\"; +import {numberValue2_renamed} from \"ES6_ExportFrom_Intermediary1\"; var ab1: number = numberValue2_renamed; var ab2: string = numberValue2_renamed; -import { numberValue1 as numberValue5 } from \"ES6_ExportAllFrom_Intermediary1\"; +import {numberValue1 as numberValue5} from \"ES6_ExportAllFrom_Intermediary1\"; var ac1: number = numberValue5; var ac2: string = numberValue5; @@ -1257,20 +1257,20 @@ var aq2: string = numberValue2_renamed2; var numberValue7 = require(\"ES6_ExportAllFrom_Intermediary2\").numberValue2; var ar1: number = numberValue7; var ar2: string = numberValue7; -import defaultNum, { str as namedStr } from \"./ES6_DefaultAndNamed\"; +import defaultNum, {str as namedStr} from \"./ES6_DefaultAndNamed\"; var as1: number = defaultNum; var as2: string = defaultNum; var as3: string = namedStr; var as4: number = namedStr; import \"./SideEffects\"; import specifierNumber1 from \"ES6_Named1\"; -import { specifierNumber } from \"ES6_Named1\"; -import { numberValue1 as numberValue8, numberValue2 as numberValue9 } from \"./ES6_ExportAllFromMulti\"; +import {specifierNumber} from \"ES6_Named1\"; +import {numberValue1 as numberValue8, numberValue2 as numberValue9} from \"./ES6_ExportAllFromMulti\"; var at1: number = numberValue8; var at2: string = numberValue8; var at3: number = numberValue9; var at4: string = numberValue9; -import { typeAlias } from \"./ExportType\"; +import {typeAlias} from \"./ExportType\"; " `; diff --git a/tests/es_declare_module/__snapshots__/jsfmt.spec.js.snap b/tests/es_declare_module/__snapshots__/jsfmt.spec.js.snap index 738358f1f..455ff6b2e 100644 --- a/tests/es_declare_module/__snapshots__/jsfmt.spec.js.snap +++ b/tests/es_declare_module/__snapshots__/jsfmt.spec.js.snap @@ -56,7 +56,7 @@ import {exports as nope} from \"ES\"; // Error: Not an export // Error: T is a type import, not a value // Error: string ~> number // Error: Not an export -import { num1, str1 } from \"CJS_Named\"; +import {num1, str1} from \"CJS_Named\"; import CJS_Named from \"CJS_Named\"; (num1: number); @@ -71,34 +71,34 @@ import CJS_Named from \"CJS_Named\"; (CJS_Named: number); -import { num2 } from \"CJS_Clobbered\"; -import { numExport } from \"CJS_Clobbered\"; +import {num2} from \"CJS_Clobbered\"; +import {numExport} from \"CJS_Clobbered\"; (numExport: number); (numExport: string); -import type { numType } from \"CJS_Clobbered\"; +import type {numType} from \"CJS_Clobbered\"; (42: numType); (\"asdf\": numType); -import { strHidden } from \"ES\"; -import { str3 } from \"ES\"; +import {strHidden} from \"ES\"; +import {str3} from \"ES\"; (str3: string); (str3: number); -import { num3 } from \"ES\"; +import {num3} from \"ES\"; (num3: number); (num3: string); -import { C } from \"ES\"; -import type { C as CType } from \"ES\"; +import {C} from \"ES\"; +import type {C as CType} from \"ES\"; (new C(): C); @@ -108,13 +108,13 @@ import type { C as CType } from \"ES\"; (42: CType); -import { T } from \"ES\"; -import type { T as T2 } from \"ES\"; +import {T} from \"ES\"; +import type {T as T2} from \"ES\"; (42: T2); (\"asdf\": T2); -import { exports as nope } from \"ES\"; +import {exports as nope} from \"ES\"; " `; diff --git a/tests/es_declare_module/flow-typed/__snapshots__/jsfmt.spec.js.snap b/tests/es_declare_module/flow-typed/__snapshots__/jsfmt.spec.js.snap index cd56c445d..f8c3d213c 100644 --- a/tests/es_declare_module/flow-typed/__snapshots__/jsfmt.spec.js.snap +++ b/tests/es_declare_module/flow-typed/__snapshots__/jsfmt.spec.js.snap @@ -32,7 +32,7 @@ declare module \"CJS_Clobbered\" { } declare module \"ES\" { declare var strHidden: string; - declare export { strHidden as str3 } + declare export {strHidden as str3} declare export var num3: number; declare export class C {} declare export type T = number; diff --git a/tests/esproposal_export_star_as.enable/__snapshots__/jsfmt.spec.js.snap b/tests/esproposal_export_star_as.enable/__snapshots__/jsfmt.spec.js.snap index 9fbb68334..57a0ee57c 100644 --- a/tests/esproposal_export_star_as.enable/__snapshots__/jsfmt.spec.js.snap +++ b/tests/esproposal_export_star_as.enable/__snapshots__/jsfmt.spec.js.snap @@ -12,7 +12,7 @@ var d: number = source.str; // Error: num ~> string // @flow // Error: num ~> string // Error: num ~> string -import { source } from \"./test\"; +import {source} from \"./test\"; var a: number = source.num; var b: string = source.num; var c: string = source.str; diff --git a/tests/esproposal_export_star_as.ignore/__snapshots__/jsfmt.spec.js.snap b/tests/esproposal_export_star_as.ignore/__snapshots__/jsfmt.spec.js.snap index dde9e4035..2c454949b 100644 --- a/tests/esproposal_export_star_as.ignore/__snapshots__/jsfmt.spec.js.snap +++ b/tests/esproposal_export_star_as.ignore/__snapshots__/jsfmt.spec.js.snap @@ -12,7 +12,7 @@ var d: number = source.str; // Ignored error: num ~> string // @flow // Error: num ~> string // Ignored error: num ~> string -import { source } from \"./test\"; +import {source} from \"./test\"; var a: number = source.num; var b: string = source.num; var c: string = source.str; diff --git a/tests/export_type/__snapshots__/jsfmt.spec.js.snap b/tests/export_type/__snapshots__/jsfmt.spec.js.snap index d2f4b4243..cee975eaa 100644 --- a/tests/export_type/__snapshots__/jsfmt.spec.js.snap +++ b/tests/export_type/__snapshots__/jsfmt.spec.js.snap @@ -56,7 +56,7 @@ var n: IFoo2 = {prop: 42}; // Error: {prop:number} ~> {prop:string} // Error: string ~> number // Error: {prop:string} ~> {prop:number} // Error: {prop:number} ~> {prop:string} -import type { inlinedType1, standaloneType1, talias1, talias3 } from \"./types_only\"; +import type {inlinedType1, standaloneType1, talias1, talias3} from \"./types_only\"; var a: inlinedType1 = 42; var b: inlinedType1 = \"asdf\"; var c: standaloneType1 = 42; @@ -65,10 +65,10 @@ var e: talias1 = 42; var f: talias1 = \"asdf\"; var g: talias3 = 42; var h: talias3 = \"asdf\"; -import type { talias4 } from \"./cjs_with_types\"; +import type {talias4} from \"./cjs_with_types\"; var i: talias4 = 42; var j: talias4 = \"asdf\"; -import { IFoo, IFoo2 } from \"./types_only\"; +import {IFoo, IFoo2} from \"./types_only\"; var k: IFoo = { prop: 42 }; var l: IFoo = { prop: \"asdf\" }; var m: IFoo2 = { prop: \"asdf\" }; @@ -100,10 +100,10 @@ export type inlinedType1 = number; var a: inlinedType1 = 42; var b: inlinedType1 = \"asdf\"; type standaloneType1 = number; -export type { standaloneType1 } +export type {standaloneType1} type standaloneType2 = number; -export { standaloneType2 } -export type { talias1, talias2 as talias3, IFoo2 } from \"./types_only2\" +export {standaloneType2} +export type {talias1, talias2 as talias3, IFoo2} from \"./types_only2\" export interface IFoo { prop: number } " `; diff --git a/tests/get-def/__snapshots__/jsfmt.spec.js.snap b/tests/get-def/__snapshots__/jsfmt.spec.js.snap index ee8f0b5a5..7adcec9db 100644 --- a/tests/get-def/__snapshots__/jsfmt.spec.js.snap +++ b/tests/get-def/__snapshots__/jsfmt.spec.js.snap @@ -50,7 +50,7 @@ import thing from \"./helpers/exports_default.js\"; thing; -import { foo, bar as baz } from \"./helpers/exports_named.js\"; +import {foo, bar as baz} from \"./helpers/exports_named.js\"; foo; diff --git a/tests/get-def2/__snapshots__/jsfmt.spec.js.snap b/tests/get-def2/__snapshots__/jsfmt.spec.js.snap index c92f86cce..8cdeb84ae 100644 --- a/tests/get-def2/__snapshots__/jsfmt.spec.js.snap +++ b/tests/get-def2/__snapshots__/jsfmt.spec.js.snap @@ -65,7 +65,7 @@ let foo = require(\"./Parent\").ParentFoo.foo; foo; -import type { Foo } from \"./types\"; +import type {Foo} from \"./types\"; " `; diff --git a/tests/import_type/__snapshots__/jsfmt.spec.js.snap b/tests/import_type/__snapshots__/jsfmt.spec.js.snap index 1563fa9a1..3f7f37dfb 100644 --- a/tests/import_type/__snapshots__/jsfmt.spec.js.snap +++ b/tests/import_type/__snapshots__/jsfmt.spec.js.snap @@ -153,7 +153,7 @@ class ClassFoo2 { return 42; } } -export { ClassFoo2 } +export {ClassFoo2} export var foo2Inst = new ClassFoo2(); " `; @@ -298,14 +298,14 @@ function foo() { //////////////////////////////////////////////////////////////////////// // Error: Not a value binding import type ClassFoo1 from \"./ExportDefault_Class\"; -import { foo1Inst } from \"./ExportDefault_Class\"; +import {foo1Inst} from \"./ExportDefault_Class\"; var a1: ClassFoo1 = foo1Inst; var a2: number = foo1Inst; new ClassFoo1(); -import type { ClassFoo2 } from \"./ExportNamed_Class\"; -import { foo2Inst } from \"./ExportNamed_Class\"; +import type {ClassFoo2} from \"./ExportNamed_Class\"; +import {foo2Inst} from \"./ExportNamed_Class\"; var b1: ClassFoo2 = foo2Inst; var b2: number = foo2Inst; @@ -317,20 +317,20 @@ var c1: ClassFoo3T = new ClassFoo3(); new ClassFoo3T(); -import type { ClassFoo4, ClassFoo5 } from \"./ExportCJSNamed_Class\"; -import { foo4Inst, foo5Inst } from \"./ExportCJSNamed_Class\"; +import type {ClassFoo4, ClassFoo5} from \"./ExportCJSNamed_Class\"; +import {foo4Inst, foo5Inst} from \"./ExportCJSNamed_Class\"; var d1: ClassFoo4 = foo4Inst; var d2: number = foo4Inst; new ClassFoo4(); var d3: typeof ClassFoo5 = foo5Inst; -import type { AliasFoo3 } from \"./ExportNamed_Alias\"; -import { givesAFoo3Obj } from \"./ExportNamed_Alias\"; +import type {AliasFoo3} from \"./ExportNamed_Alias\"; +import {givesAFoo3Obj} from \"./ExportNamed_Alias\"; var e1: AliasFoo3 = givesAFoo3Obj(); var e2: number = givesAFoo3Obj(); var e3: typeof AliasFoo3 = givesAFoo3Obj(); -import type { numValue } from \"./ExportsANumber\"; +import type {numValue} from \"./ExportsANumber\"; import type ClassFoo6 from \"./issue-359\"; function foo() { diff --git a/tests/import_typeof/__snapshots__/jsfmt.spec.js.snap b/tests/import_typeof/__snapshots__/jsfmt.spec.js.snap index 2c9cb8c71..6ca9d03bc 100644 --- a/tests/import_typeof/__snapshots__/jsfmt.spec.js.snap +++ b/tests/import_typeof/__snapshots__/jsfmt.spec.js.snap @@ -146,7 +146,7 @@ class ClassFoo2 { return 42; } } -export { ClassFoo2 } +export {ClassFoo2} " `; @@ -335,8 +335,8 @@ var a2: ClassFoo1T = new ClassFoo1(); new ClassFoo1T(); -import typeof { ClassFoo2 as ClassFoo2T } from \"./ExportNamed_Class\"; -import { ClassFoo2 } from \"./ExportNamed_Class\"; +import typeof {ClassFoo2 as ClassFoo2T} from \"./ExportNamed_Class\"; +import {ClassFoo2} from \"./ExportNamed_Class\"; var b1: ClassFoo2T = ClassFoo2; var b2: ClassFoo2T = new ClassFoo2(); @@ -346,21 +346,21 @@ import typeof ClassFoo3T from \"./ExportCJSDefault_Class\"; import ClassFoo3 from \"./ExportCJSDefault_Class\"; var c1: ClassFoo3T = ClassFoo3; var c2: ClassFoo3T = new ClassFoo3(); -import typeof { ClassFoo4 as ClassFoo4T } from \"./ExportCJSNamed_Class\"; -import { ClassFoo4 } from \"./ExportCJSNamed_Class\"; +import typeof {ClassFoo4 as ClassFoo4T} from \"./ExportCJSNamed_Class\"; +import {ClassFoo4} from \"./ExportCJSNamed_Class\"; var d1: ClassFoo4T = ClassFoo4; var d2: ClassFoo4T = new ClassFoo4(); -import typeof { AliasFoo3 } from \"./ExportNamed_Alias\"; +import typeof {AliasFoo3} from \"./ExportNamed_Alias\"; import typeof num_default from \"./ExportDefault_Number\"; var f1: num_default = 42; var f2: num_default = \"asdf\"; -import typeof { num as num_named } from \"./ExportNamed_Number\"; +import typeof {num as num_named} from \"./ExportNamed_Number\"; var g1: num_named = 42; var g2: num_named = \"asdf\"; import typeof num_cjs_default from \"./ExportCJSDefault_Number\"; var h1: num_cjs_default = 42; var h2: num_cjs_default = \"asdf\"; -import typeof { num as num_cjs_named } from \"./ExportCJSNamed_Number\"; +import typeof {num as num_cjs_named} from \"./ExportCJSNamed_Number\"; var i1: num_cjs_named = 42; var i2: num_cjs_named = \"asdf\"; import typeof * as ModuleNSObjT from \"./ExportNamed_Multi\"; diff --git a/tests/incremental_cycle/tmp1/__snapshots__/jsfmt.spec.js.snap b/tests/incremental_cycle/tmp1/__snapshots__/jsfmt.spec.js.snap index c7f9ffdfa..4f33f2e66 100644 --- a/tests/incremental_cycle/tmp1/__snapshots__/jsfmt.spec.js.snap +++ b/tests/incremental_cycle/tmp1/__snapshots__/jsfmt.spec.js.snap @@ -25,7 +25,7 @@ module.exports = C; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow var A = require(\"./A\"); -import type { B } from \"./B\"; +import type {B} from \"./B\"; class C extends A { b: B; } diff --git a/tests/interface/__snapshots__/jsfmt.spec.js.snap b/tests/interface/__snapshots__/jsfmt.spec.js.snap index 342c28d4e..69fe18662 100644 --- a/tests/interface/__snapshots__/jsfmt.spec.js.snap +++ b/tests/interface/__snapshots__/jsfmt.spec.js.snap @@ -129,7 +129,7 @@ function bar(m: M) { m.x; m.y; m.z; } // OK // error: z not found in L // interface + multiple inheritance is similar to object type + intersection // OK -import type { J } from \"./import\"; +import type {J} from \"./import\"; interface K {} interface L extends J, K { y: string } diff --git a/tests/method_properties/__snapshots__/jsfmt.spec.js.snap b/tests/method_properties/__snapshots__/jsfmt.spec.js.snap index 1a568132a..b2f42ad6e 100644 --- a/tests/method_properties/__snapshots__/jsfmt.spec.js.snap +++ b/tests/method_properties/__snapshots__/jsfmt.spec.js.snap @@ -9,7 +9,7 @@ export {Foo}; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow declare class Foo { bar?: () => string } -export { Foo } +export {Foo} " `; @@ -50,7 +50,7 @@ new C().foo.x; C.bar.x; -import { Foo } from \"./exports_optional_prop\"; +import {Foo} from \"./exports_optional_prop\"; const foo = new Foo(); (foo.bar(): string); diff --git a/tests/modified_lib/__snapshots__/jsfmt.spec.js.snap b/tests/modified_lib/__snapshots__/jsfmt.spec.js.snap index 041a06f0d..c3571c624 100644 --- a/tests/modified_lib/__snapshots__/jsfmt.spec.js.snap +++ b/tests/modified_lib/__snapshots__/jsfmt.spec.js.snap @@ -6,7 +6,7 @@ import {bar} from \'foo\'; bar(5); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { bar } from \"foo\"; +import {bar} from \"foo\"; bar(5); " diff --git a/tests/object-method/__snapshots__/jsfmt.spec.js.snap b/tests/object-method/__snapshots__/jsfmt.spec.js.snap index 210d91efa..a9b5fb4fa 100644 --- a/tests/object-method/__snapshots__/jsfmt.spec.js.snap +++ b/tests/object-method/__snapshots__/jsfmt.spec.js.snap @@ -18,7 +18,7 @@ import type { ObjectType } from \'./test\'; function subtypeCheck(x: Interface): ObjectType { return x; } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ interface Interface { m(): void } -import type { ObjectType } from \"./test\"; +import type {ObjectType} from \"./test\"; function subtypeCheck(x: Interface): ObjectType { return x; diff --git a/tests/react/__snapshots__/jsfmt.spec.js.snap b/tests/react/__snapshots__/jsfmt.spec.js.snap index 3a399dec1..ea812b7c9 100644 --- a/tests/react/__snapshots__/jsfmt.spec.js.snap +++ b/tests/react/__snapshots__/jsfmt.spec.js.snap @@ -107,7 +107,7 @@ var b: number = new react.Component(); // Error: ReactComponent ~> number /* @flow */ // Error: ReactComponent ~> number import react from \"react\"; -import { Component } from \"react\"; +import {Component} from \"react\"; var a: Component<*, *, *> = new react.Component(); var b: number = new react.Component(); " diff --git a/tests/recheck/__snapshots__/jsfmt.spec.js.snap b/tests/recheck/__snapshots__/jsfmt.spec.js.snap index 1011c49ce..cadb75bce 100644 --- a/tests/recheck/__snapshots__/jsfmt.spec.js.snap +++ b/tests/recheck/__snapshots__/jsfmt.spec.js.snap @@ -78,7 +78,7 @@ class D extends F { } module.exports = { C, D }; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { C, E } from \"./b0\"; +import {C, E} from \"./b0\"; function foo() { return C; @@ -114,7 +114,7 @@ import { C, D } from \"./b2\"; (new D: C); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { C, D } from \"./b2\"; +import {C, D} from \"./b2\"; (new D(): C); " @@ -140,7 +140,7 @@ export function bar(props: { x: number }) { } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { foo } from \"./c1\"; +import {foo} from \"./c1\"; export function bar(props: { x: number }) { foo({ x: 0 }); } @@ -155,7 +155,7 @@ import { bar } from \"./c2\"; bar({ x: 0 }); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { bar } from \"./c2\"; +import {bar} from \"./c2\"; bar({ x: 0 }); " @@ -182,7 +182,7 @@ import {A, x} from \"./d1\"; export var y: A = x; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { A, x } from \"./d1\"; +import {A, x} from \"./d1\"; export var y: A = x; " `; @@ -217,11 +217,11 @@ import { LIFE } from \'./e1\'; (LIFE: 42); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import type { Action } from \"./e1\"; +import type {Action} from \"./e1\"; const f = (): Action => { return { type: \"FOO\" }; }; -import { LIFE } from \"./e1\"; +import {LIFE} from \"./e1\"; (LIFE: 42); " @@ -283,7 +283,7 @@ class D extends C { } module.exports = { D }; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { C } from \"./g1\"; +import {C} from \"./g1\"; class D extends C {} module.exports = { D }; @@ -299,8 +299,8 @@ import { D } from \'./g2\'; (new D: C) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { C } from \"./g1\"; -import { D } from \"./g2\"; +import {C} from \"./g1\"; +import {D} from \"./g2\"; (new D(): C); " @@ -322,6 +322,6 @@ exports[`test h2.js 1`] = ` import type { Foo } from \'./h1\'; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import type { Foo } from \"./h1\"; +import type {Foo} from \"./h1\"; " `; diff --git a/tests/recheck/tmp1b/__snapshots__/jsfmt.spec.js.snap b/tests/recheck/tmp1b/__snapshots__/jsfmt.spec.js.snap index 68f13041b..b28ad5d19 100644 --- a/tests/recheck/tmp1b/__snapshots__/jsfmt.spec.js.snap +++ b/tests/recheck/tmp1b/__snapshots__/jsfmt.spec.js.snap @@ -10,7 +10,7 @@ class D extends F { } module.exports = { C, D }; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { C, E } from \"./b0\"; +import {C, E} from \"./b0\"; function foo() { return C; diff --git a/tests/recheck/tmp1c/__snapshots__/jsfmt.spec.js.snap b/tests/recheck/tmp1c/__snapshots__/jsfmt.spec.js.snap index 3563bd41b..3b49fabfe 100644 --- a/tests/recheck/tmp1c/__snapshots__/jsfmt.spec.js.snap +++ b/tests/recheck/tmp1c/__snapshots__/jsfmt.spec.js.snap @@ -8,7 +8,7 @@ export function bar(props: { y: number }) { } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import { foo } from \"./c1\"; +import {foo} from \"./c1\"; export function bar(props: { y: number }) { foo({ y: 0 }); } diff --git a/tests/recheck/tmp1e/__snapshots__/jsfmt.spec.js.snap b/tests/recheck/tmp1e/__snapshots__/jsfmt.spec.js.snap index d0977560e..bf0ffa701 100644 --- a/tests/recheck/tmp1e/__snapshots__/jsfmt.spec.js.snap +++ b/tests/recheck/tmp1e/__snapshots__/jsfmt.spec.js.snap @@ -12,11 +12,11 @@ import { LIFE } from \'./e1\'; (LIFE: 42); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import type { Action } from \"./e1\"; +import type {Action} from \"./e1\"; const f = (): Action => { return { type: \"QUX\" }; }; -import { LIFE } from \"./e1\"; +import {LIFE} from \"./e1\"; (LIFE: 42); " diff --git a/tests/recheck/tmp3e/__snapshots__/jsfmt.spec.js.snap b/tests/recheck/tmp3e/__snapshots__/jsfmt.spec.js.snap index 3d91b7082..5cc14fef5 100644 --- a/tests/recheck/tmp3e/__snapshots__/jsfmt.spec.js.snap +++ b/tests/recheck/tmp3e/__snapshots__/jsfmt.spec.js.snap @@ -28,11 +28,11 @@ import { LIFE } from \'./e1\'; (LIFE: 0); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // @flow -import type { Action } from \"./e1\"; +import type {Action} from \"./e1\"; const f = (): Action => { return { type: \"QUX\" }; }; -import { LIFE } from \"./e1\"; +import {LIFE} from \"./e1\"; (LIFE: 0); " diff --git a/tests/refinements/__snapshots__/jsfmt.spec.js.snap b/tests/refinements/__snapshots__/jsfmt.spec.js.snap index 785bc8b9c..c28ad90a7 100644 --- a/tests/refinements/__snapshots__/jsfmt.spec.js.snap +++ b/tests/refinements/__snapshots__/jsfmt.spec.js.snap @@ -2723,7 +2723,7 @@ function getTypeASTName(typeAST: Type): string { } } -import type { ASTNode } from \"./ast_node\"; +import type {ASTNode} from \"./ast_node\"; var Node = require(\"./node1\"); function foo(x: ASTNode) { @@ -3015,7 +3015,7 @@ function handleStatus(status: Success | Error) { } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /* @flow */ -import { SUCCESS, ERROR } from \"./constants\"; +import {SUCCESS, ERROR} from \"./constants\"; type Success = { type: typeof SUCCESS; message: string }; type Error = { type: typeof ERROR; error: string }; diff --git a/tests/symlink/__snapshots__/jsfmt.spec.js.snap b/tests/symlink/__snapshots__/jsfmt.spec.js.snap index 2f490c5ea..a39bdb41f 100644 --- a/tests/symlink/__snapshots__/jsfmt.spec.js.snap +++ b/tests/symlink/__snapshots__/jsfmt.spec.js.snap @@ -16,7 +16,7 @@ exports[`test qux.js 1`] = ` "import type { Foo } from \'./bar.js\'; ({ x: \"\" }: Foo); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -import type { Foo } from \"./bar.js\"; +import type {Foo} from \"./bar.js\"; ({ x: \"\" }: Foo); " diff --git a/tests/this_type/__snapshots__/jsfmt.spec.js.snap b/tests/this_type/__snapshots__/jsfmt.spec.js.snap index 50458b189..9b92f99e2 100644 --- a/tests/this_type/__snapshots__/jsfmt.spec.js.snap +++ b/tests/this_type/__snapshots__/jsfmt.spec.js.snap @@ -234,9 +234,9 @@ class B3 extends A3 { // OK // error // error -import { A1 } from \"./export\"; -import type { A2 } from \"./export\"; -import { A3 } from \"./export\"; +import {A1} from \"./export\"; +import type {A2} from \"./export\"; +import {A3} from \"./export\"; class B1 extends A1 { foo(): B1 { return new B1(); diff --git a/tests/type-printer/__snapshots__/jsfmt.spec.js.snap b/tests/type-printer/__snapshots__/jsfmt.spec.js.snap index 0b05393b6..a4e6cce08 100644 --- a/tests/type-printer/__snapshots__/jsfmt.spec.js.snap +++ b/tests/type-printer/__snapshots__/jsfmt.spec.js.snap @@ -30,7 +30,7 @@ module.exports = printBinaryExpression; */ \"use babel\"; -import type { BinaryExpression } from \"./types\"; +import type {BinaryExpression} from \"./types\"; function printBinaryExpression(node: BinaryExpression) { console.log(node); diff --git a/tests/type_only_vars/__snapshots__/jsfmt.spec.js.snap b/tests/type_only_vars/__snapshots__/jsfmt.spec.js.snap index 31e6adb22..661f8f1e6 100644 --- a/tests/type_only_vars/__snapshots__/jsfmt.spec.js.snap +++ b/tests/type_only_vars/__snapshots__/jsfmt.spec.js.snap @@ -50,7 +50,7 @@ var duck: string = \"quack\"; // These string types should confict with the imported types // This string type should conflict with the typedef import typeof A from \"./A.js\"; -import type { Foo, Bar as Baz } from \"./A.js\"; +import type {Foo, Bar as Baz} from \"./A.js\"; type duck = { quack(): string }; var A: string = \"Hello\"; var Foo: string = \"Goodbye\"; @@ -87,7 +87,7 @@ var b: Foo = new A.Foo(); // errors in prev block leave type bindings in place, so these are errors // errors from value positions only import typeof A from \"./A.js\"; -import type { Foo, Bar as Baz } from \"./A.js\"; +import type {Foo, Bar as Baz} from \"./A.js\"; var A = require(\"./A.js\"); var Foo = A.Foo; var Baz = A.Bar; @@ -126,7 +126,7 @@ var a: Foo = new actualA.Foo(); // You can\'t use it as an identifier // But using it in a type should still work import typeof A from \"./A.js\"; -import type { Foo, Bar as Baz } from \"./A.js\"; +import type {Foo, Bar as Baz} from \"./A.js\"; var actualA = require(\"./A.js\"); var m = A; var n = Foo; diff --git a/tests/union_new/__snapshots__/jsfmt.spec.js.snap b/tests/union_new/__snapshots__/jsfmt.spec.js.snap index 81c2db096..544cd68bb 100644 --- a/tests/union_new/__snapshots__/jsfmt.spec.js.snap +++ b/tests/union_new/__snapshots__/jsfmt.spec.js.snap @@ -61,7 +61,7 @@ export default class A { } } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -import { B, C } from \"./issue-824-helper\"; +import {B, C} from \"./issue-824-helper\"; type K = B | C; type I = { which(): number }; export default class A { @@ -148,7 +148,7 @@ function node(content: ?Foobar | String | Array) { } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /* @flow */ -import type { Foobar } from \"./issue-1455-helper\"; +import type {Foobar} from \"./issue-1455-helper\"; function create(content: ?Foobar | String | Array) {} diff --git a/tests_config/run_spec.js b/tests_config/run_spec.js index 2f4f123c1..68c9c28fd 100644 --- a/tests_config/run_spec.js +++ b/tests_config/run_spec.js @@ -80,7 +80,7 @@ function parse(string) { } function prettyprint(src, filename) { - return jscodefmt.format(src, { filename, useFlowParser: true }); + return jscodefmt.format(src, { filename, useFlowParser: true, printWidth: 80 }); } function read(filename) {