Resolve .browserslistrc as a project-wide file (#13028)

This commit is contained in:
Nicolò Ribaudo
2021-03-25 21:37:42 +01:00
committed by GitHub
parent 8c445e60ba
commit b0d83daceb
7 changed files with 30 additions and 12 deletions

View File

@@ -126,7 +126,7 @@ export default function* loadPrivatePartialConfig(
const options: NormalizedOptions = {
...merged,
targets: resolveTargets(merged, absoluteRootDir, filename),
targets: resolveTargets(merged, absoluteRootDir, absoluteRootDir),
// Tack the passes onto the object itself so that, if this object is
// passed back to Babel a second time, it will be in the right structure

View File

@@ -8,7 +8,7 @@ export function resolveTargets(
// eslint-disable-next-line no-unused-vars
root: string,
// eslint-disable-next-line no-unused-vars
filename: string | void,
configFilePath: string | void,
): Targets {
let { targets } = options;
if (typeof targets === "string" || Array.isArray(targets)) {

View File

@@ -14,7 +14,7 @@ import getTargets, { type Targets } from "@babel/helper-compilation-targets";
export function resolveTargets(
options: ValidatedOptions,
root: string,
filename: string | void,
configFilePath: string = root,
): Targets {
let { targets } = options;
if (typeof targets === "string" || Array.isArray(targets)) {
@@ -27,13 +27,13 @@ export function resolveTargets(
let configFile;
if (typeof options.browserslistConfigFile === "string") {
configFile = path.resolve(root, options.browserslistConfigFile);
configFile = path.resolve(configFilePath, options.browserslistConfigFile);
}
return getTargets((targets: any), {
ignoreBrowserslistConfig: options.browserslistConfigFile === false,
configFile,
configPath: filename ?? root,
configPath: root,
browserslistEnv: options.browserslistEnv,
});
}