Filename detection should respect short flags (#10763)
* chore: add test files # Conflicts: # packages/babel-node/package.json * fix: respect short flags when finding filename index * fix: use attributeName for kebab-case
This commit is contained in:
parent
5a3e97073e
commit
903ad6160d
@ -21,7 +21,7 @@
|
||||
],
|
||||
"dependencies": {
|
||||
"@babel/register": "^7.7.7",
|
||||
"commander": "^2.8.1",
|
||||
"commander": "^4.0.1",
|
||||
"core-js": "^3.2.1",
|
||||
"lodash": "^4.17.13",
|
||||
"node-environment-flags": "^1.0.5",
|
||||
|
||||
@ -169,15 +169,15 @@ if (program.eval || program.print) {
|
||||
}
|
||||
|
||||
if (arg[0] === "-") {
|
||||
const camelArg = arg
|
||||
.slice(2)
|
||||
.replace(/-(\w)/, (s, c) => c.toUpperCase());
|
||||
const parsedArg = program[camelArg];
|
||||
if (
|
||||
arg === "-r" ||
|
||||
arg === "--require" ||
|
||||
(parsedArg && parsedArg !== true)
|
||||
) {
|
||||
const parsedOption = program.options.find(option => {
|
||||
return option.long === arg || option.short === arg;
|
||||
});
|
||||
if (parsedOption === undefined) {
|
||||
return;
|
||||
}
|
||||
const optionName = parsedOption.attributeName();
|
||||
const parsedArg = program[optionName];
|
||||
if (optionName === "require" || (parsedArg && parsedArg !== true)) {
|
||||
ignoreNext = true;
|
||||
}
|
||||
} else {
|
||||
|
||||
1
packages/babel-node/test/fixtures/babel-node/--presets/in-files/index.js
vendored
Normal file
1
packages/babel-node/test/fixtures/babel-node/--presets/in-files/index.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
console.log("foo");
|
||||
4
packages/babel-node/test/fixtures/babel-node/--presets/in-files/presetFile.js
vendored
Normal file
4
packages/babel-node/test/fixtures/babel-node/--presets/in-files/presetFile.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
module.exports = function () {
|
||||
console.log("Preset was loaded, so --presets was used.");
|
||||
return {};
|
||||
};
|
||||
3
packages/babel-node/test/fixtures/babel-node/--presets/options.json
vendored
Normal file
3
packages/babel-node/test/fixtures/babel-node/--presets/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"args": ["--presets", "./presetFile.js", "index"]
|
||||
}
|
||||
2
packages/babel-node/test/fixtures/babel-node/--presets/stdout.txt
vendored
Normal file
2
packages/babel-node/test/fixtures/babel-node/--presets/stdout.txt
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
Preset was loaded, so --presets was used.
|
||||
foo
|
||||
1
packages/babel-node/test/fixtures/babel-node/-b/in-files/index.js
vendored
Normal file
1
packages/babel-node/test/fixtures/babel-node/-b/in-files/index.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
console.log("foo");
|
||||
4
packages/babel-node/test/fixtures/babel-node/-b/in-files/presetFile.js
vendored
Normal file
4
packages/babel-node/test/fixtures/babel-node/-b/in-files/presetFile.js
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
module.exports = function () {
|
||||
console.log("Preset was loaded, so -b was used.");
|
||||
return {};
|
||||
};
|
||||
3
packages/babel-node/test/fixtures/babel-node/-b/options.json
vendored
Normal file
3
packages/babel-node/test/fixtures/babel-node/-b/options.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"args": ["-b", "./presetFile.js", "index"]
|
||||
}
|
||||
2
packages/babel-node/test/fixtures/babel-node/-b/stdout.txt
vendored
Normal file
2
packages/babel-node/test/fixtures/babel-node/-b/stdout.txt
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
Preset was loaded, so -b was used.
|
||||
foo
|
||||
Loading…
x
Reference in New Issue
Block a user