UNPKG

1.38 kBJavaScriptView Raw
1var path = require('path');
2
3var isEjected = (
4 path.resolve(path.join(__dirname, '..')) ===
5 path.resolve(process.cwd())
6);
7
8var isInCreateReactAppSource = (
9 process.argv.some(arg => arg.indexOf('--debug-template') > -1)
10);
11
12function resolveOwn(relativePath) {
13 return path.resolve(__dirname, relativePath);
14}
15
16function resolveApp(relativePath) {
17 return path.resolve(relativePath);
18}
19
20if(isInCreateReactAppSource) {
21 module.exports = {
22 appBuild: resolveOwn('../build'),
23 appHtml: resolveOwn('../template/index.html'),
24 appPackageJson: resolveOwn('../package.json'),
25 appSrc: resolveOwn('../template/src'),
26 appNodeModules: resolveOwn('../node_modules'),
27 ownNodeModules: resolveOwn('../node_modules')
28 };
29} else if(!isEjected) {
30 module.exports = {
31 appBuild: resolveApp('build'),
32 appHtml: resolveApp('index.html'),
33 appPackageJson: resolveApp('package.json'),
34 appSrc: resolveApp('src'),
35 appNodeModules: resolveApp('node_modules'),
36 // this is empty with npm3 but node resolution searches higher anyway:
37 ownNodeModules: resolveOwn('../node_modules')
38 };
39} else {
40 // after eject: we're in ./config/
41 module.exports = {
42 appBuild: resolveApp('build'),
43 appHtml: resolveApp('index.html'),
44 appPackageJson: resolveApp('package.json'),
45 appSrc: resolveApp('src'),
46 appNodeModules: resolveApp('node_modules'),
47 ownNodeModules: resolveApp('node_modules')
48 };
49}
\No newline at end of file