feat(cli): find root dir
This commit is contained in:
@@ -1,14 +1,28 @@
|
||||
import { get } from 'lodash';
|
||||
import { join, isAbsolute } from 'path';
|
||||
import { existsSync } from 'fs-extra';
|
||||
import { join, dirname, isAbsolute } from 'path';
|
||||
|
||||
function findRootDir(dir: string): string {
|
||||
if (dir === '/') {
|
||||
return '/';
|
||||
}
|
||||
|
||||
if (existsSync(join(dir, 'vant.config.js'))) {
|
||||
return dir;
|
||||
}
|
||||
|
||||
return findRootDir(dirname(dir));
|
||||
}
|
||||
|
||||
export const CWD = process.cwd();
|
||||
export const ES_DIR = join(CWD, 'es');
|
||||
export const LIB_DIR = join(CWD, 'lib');
|
||||
export const DOCS_DIR = join(CWD, 'docs');
|
||||
export const SITE_DIST_DIR = join(CWD, 'site');
|
||||
export const VANT_CONFIG_FILE = join(CWD, 'vant.config.js');
|
||||
export const PACKAGE_JSON_FILE = join(CWD, 'package.json');
|
||||
export const WEBPACK_CONFIG_FILE = join(CWD, 'webpack.config.js');
|
||||
export const ROOT = findRootDir(CWD);
|
||||
export const ES_DIR = join(ROOT, 'es');
|
||||
export const LIB_DIR = join(ROOT, 'lib');
|
||||
export const DOCS_DIR = join(ROOT, 'docs');
|
||||
export const SITE_DIST_DIR = join(ROOT, 'site');
|
||||
export const VANT_CONFIG_FILE = join(ROOT, 'vant.config.js');
|
||||
export const PACKAGE_JSON_FILE = join(ROOT, 'package.json');
|
||||
export const WEBPACK_CONFIG_FILE = join(ROOT, 'webpack.config.js');
|
||||
|
||||
export const DIST_DIR = join(__dirname, '../../dist');
|
||||
export const CONFIG_DIR = join(__dirname, '../config');
|
||||
@@ -19,10 +33,10 @@ export const SITE_MODILE_SHARED_FILE = join(DIST_DIR, 'site-mobile-shared.js');
|
||||
export const SITE_DESKTOP_SHARED_FILE = join(DIST_DIR, 'site-desktop-shared.js');
|
||||
export const STYPE_DEPS_JSON_FILE = join(DIST_DIR, 'style-deps.json');
|
||||
|
||||
export const JEST_CONFIG_FILE = join(CONFIG_DIR, 'jest.config.js');
|
||||
export const BABEL_CONFIG_FILE = join(CONFIG_DIR, 'babel.config.js');
|
||||
export const POSTCSS_CONFIG_FILE = join(CONFIG_DIR, 'postcss.config.js');
|
||||
export const JEST_INIT_FILE = join(CONFIG_DIR, 'jest.init.js');
|
||||
export const JEST_CONFIG_FILE = join(CONFIG_DIR, 'jest.config.js');
|
||||
export const JEST_TRANSFORM_FILE = join(CONFIG_DIR, 'jest.transform.js');
|
||||
export const JEST_FILE_MOCK_FILE = join(CONFIG_DIR, 'jest.file-mock.js');
|
||||
export const JEST_STYLE_MOCK_FILE = join(CONFIG_DIR, 'jest.style-mock.js');
|
||||
@@ -47,10 +61,10 @@ function getSrcDir() {
|
||||
return srcDir;
|
||||
}
|
||||
|
||||
return join(CWD, srcDir);
|
||||
return join(ROOT, srcDir);
|
||||
}
|
||||
|
||||
return join(CWD, 'src');
|
||||
return join(ROOT, 'src');
|
||||
}
|
||||
|
||||
export const SRC_DIR = getSrcDir();
|
||||
|
||||
Reference in New Issue
Block a user