diff --git a/packages/babel-cli/src/babel/file.js b/packages/babel-cli/src/babel/file.js index 31433b33da..f0678e27ed 100644 --- a/packages/babel-cli/src/babel/file.js +++ b/packages/babel-cli/src/babel/file.js @@ -137,7 +137,11 @@ export default async function({ cliOptions, babelOptions }) { const dirname = filename; util - .readdirForCompilable(filename, cliOptions.includeDotfiles) + .readdirForCompilable( + filename, + cliOptions.includeDotfiles, + cliOptions.extensions, + ) .forEach(function(filename) { _filenames.push(path.join(dirname, filename)); }); diff --git a/packages/babel-cli/src/babel/util.js b/packages/babel-cli/src/babel/util.js index ad972fd0cd..99c9ae9b00 100644 --- a/packages/babel-cli/src/babel/util.js +++ b/packages/babel-cli/src/babel/util.js @@ -29,8 +29,11 @@ export function readdir( export function readdirForCompilable( dirname: string, includeDotfiles: boolean, + altExts?: Array, ) { - return readdir(dirname, includeDotfiles, isCompilableExtension); + return readdir(dirname, includeDotfiles, function(filename) { + return isCompilableExtension(filename, altExts); + }); } /** diff --git a/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/in-files/src/bar/bar.es b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/in-files/src/bar/bar.es new file mode 100644 index 0000000000..9e99278492 --- /dev/null +++ b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/in-files/src/bar/bar.es @@ -0,0 +1 @@ + (() => 42) \ No newline at end of file diff --git a/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/in-files/src/foo.es b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/in-files/src/foo.es new file mode 100644 index 0000000000..4bc9539528 --- /dev/null +++ b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/in-files/src/foo.es @@ -0,0 +1 @@ +arr.map(x => x * MULTIPLIER); diff --git a/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/options.json b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/options.json new file mode 100644 index 0000000000..cb501c3b85 --- /dev/null +++ b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/options.json @@ -0,0 +1,3 @@ +{ + "args": ["src", "--out-file", "test.js", "--extensions", ".es"] +} diff --git a/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/out-files/test.js b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/out-files/test.js new file mode 100644 index 0000000000..d3e579815a --- /dev/null +++ b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/out-files/test.js @@ -0,0 +1,10 @@ +"use strict"; + +(function () { + return 42; +}); +"use strict"; + +arr.map(function (x) { + return x * MULTIPLIER; +}); diff --git a/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/stdout.txt b/packages/babel-cli/test/fixtures/babel/dir --out-file --extensions/stdout.txt new file mode 100644 index 0000000000..e69de29bb2