Skip to content

Commit 935b31b

Browse files
GiladShohamqballer
authored andcommitted
fix plugins / presets resolution (#64)
1 parent 772d4fa commit 935b31b

File tree

1 file changed

+10
-10
lines changed
  • components/internal/get-babel-options

1 file changed

+10
-10
lines changed

components/internal/get-babel-options/index.js

+10-10
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,17 @@ const getBabelRc = (pathToLook) => {
77
return JSON.parse(file);
88
}
99

10-
const moduleIsAvailable = (modulePath) => {
10+
const moduleIsAvailable = (modulePath, compilerNodeModules) => {
1111
try {
12-
return require.resolve(modulePath);;
12+
return require.resolve(modulePath, {paths: [compilerNodeModules]});
1313
} catch (e) {
1414
return null;
1515
}
1616
}
1717

18-
const addBabelPrefixAndResolve = (prefixType, obj) => {
19-
const resolvedModule = moduleIsAvailable(obj);
18+
const addBabelPrefixAndResolve = (prefixType, obj, compilerRootFolder) => {
19+
const compilerNodeModules = path.join(compilerRootFolder, 'node_modules');
20+
const resolvedModule = moduleIsAvailable(obj, compilerNodeModules);
2021
if (resolvedModule) {
2122
return resolvedModule;
2223
}
@@ -27,8 +28,7 @@ const addBabelPrefixAndResolve = (prefixType, obj) => {
2728
} else if (!obj.startsWith(`babel-${prefixType}`)) {
2829
obj = `babel-${prefixType}-${obj}`;
2930
}
30-
31-
return require.resolve(obj);
31+
return require.resolve(obj, {paths: [compilerNodeModules]});
3232
}
3333

3434
/**
@@ -45,20 +45,20 @@ const getBabelOptions = (pathToLook) => {
4545

4646
options.plugins = options.plugins.map(plugin => {
4747
if (Array.isArray(plugin)) {
48-
plugin[0] = addBabelPrefixAndResolve('plugin', plugin[0]);
48+
plugin[0] = addBabelPrefixAndResolve('plugin', plugin[0], pathToLook);
4949
return plugin;
5050
}
5151

52-
return addBabelPrefixAndResolve('plugin', plugin);
52+
return addBabelPrefixAndResolve('plugin', plugin, pathToLook);
5353
});
5454

5555
options.presets = options.presets.map(preset => {
5656
if (Array.isArray(preset)) {
57-
preset[0] = addBabelPrefixAndResolve('preset', preset[0]);
57+
preset[0] = addBabelPrefixAndResolve('preset', preset[0], pathToLook);
5858
return preset;
5959
}
6060

61-
return addBabelPrefixAndResolve('preset', preset);
61+
return addBabelPrefixAndResolve('preset', preset, pathToLook);
6262
});
6363

6464
return options;

0 commit comments

Comments
 (0)