kkt
Version:
Create React apps with no build configuration, Cli tool for creating react apps.
84 lines (78 loc) • 3.09 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.configOverrides = void 0;
exports.getConfPath = getConfPath;
exports.reactScripts = exports.reactDevUtils = exports.proxySetup = exports.projectDir = exports.paths = exports.isWebpackFactory = void 0;
var _path = _interopRequireDefault(require("path"));
var _fs = _interopRequireDefault(require("fs"));
var _semver = _interopRequireDefault(require("semver"));
var _minimist = _interopRequireDefault(require("minimist"));
var args = process.argv.slice(2);
var argvs = (0, _minimist["default"])(args);
/** App Path */
var projectDir = _path["default"].resolve(_fs["default"].realpathSync(process.cwd()));
exports.projectDir = projectDir;
var customOpts = require(_path["default"].resolve(projectDir, 'package.json'))['kkt'] || {};
function getConfPath() {
var confName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '.kktrc';
/**
* 默认从 package.json 指定配置文件目录和当前目录根目录 `.kktrc` 配置文件
* `<Project Root Path>/.kktrc`
*
* ```js
* {
* "kkt": {
* "path": "./config/.kktrc"
* }
* }
* ```
*/
var confPath = customOpts.path ? "".concat(projectDir, "/").concat(customOpts.path) : "".concat(projectDir, "/").concat(confName);
if (argvs['config-overrides']) {
confPath = _path["default"].resolve(argvs['config-overrides']);
}
confPath = confPath.replace(/\.(js|ts)$/gi, '');
return _path["default"].resolve(confPath);
}
/**
* Package [`react-scripts`](http://npmjs.com/react-scripts) directory location
* - `<root path>/node_modules/react-scripts`
*/
var reactScripts = _path["default"].join(require.resolve('react-scripts/package.json'), '..');
/**
* Package [`react-dev-utils`](http://npmjs.com/react-dev-utils) directory location
* - `<root path>/node_modules/react-dev-utils`
*/
exports.reactScripts = reactScripts;
var reactDevUtils = _path["default"].join(require.resolve('react-dev-utils/package.json'), '..');
exports.reactDevUtils = reactDevUtils;
var paths = require("".concat(reactScripts, "/config/paths"));
/**
* Overrides proxySetup path
* `<root path>/node_modules/kkt/lib/utils/proxySetup.js`
*/
exports.paths = paths;
var proxySetup = _path["default"].resolve(__dirname, './proxySetup.js');
/**
* `<root path>/node_modules/react-scripts/package.json`
*/
exports.proxySetup = proxySetup;
var scriptPkg = require("".concat(reactScripts, "/package.json"));
/**
* 判断是否大于 2.1.2
* CRA 2.1.2 switched to using a webpack config factory
* https://github.com/facebook/create-react-app/pull/5722
* https://github.com/facebook/create-react-app/releases/tag/v2.1.2
*/
var isWebpackFactory = _semver["default"].gte(scriptPkg && scriptPkg.version, '2.1.2');
/**
* Compatible API
* @deprecated
*/
exports.isWebpackFactory = isWebpackFactory;
var configOverrides = getConfPath();
exports.configOverrides = configOverrides;
//# sourceMappingURL=path.js.map