rapplus
Version:
rapper, use http api as a function
67 lines (66 loc) • 2.43 kB
JavaScript
;
exports.__esModule = true;
var index_1 = require("./index");
var path_1 = require("path");
var fs_1 = require("fs");
var utils_1 = require("./utils");
var chalk_1 = require("chalk");
var program = require("commander");
(function () {
program
.option('--apiUrl <apiUrl>', '设置Rap平台后端地址')
.option('--rapUrl <rapUrl>', '设置Rap平台前端地址')
.option('--rapperPath <rapperPath>', '设置生成代码所在目录')
.option('--c, --config <configPath>', 'config文件路径')
.option('--m, --moduleId <moduleId>', '模块ID')
.option('--u, --upload []', '上传类型')
.option('--d, --download []', '下载类型');
program.parse(process.argv);
var isUpload = program.upload ? true : false;
var configName = 'rapper-Plus';
var config = index_1.defineConfig({});
var rootPath = utils_1.searchRootPath();
// 通过 命令行配置config
if (program.config) {
var configPath = path_1.resolve(rootPath, program.config);
if (fs_1.existsSync(configPath)) {
console.log(chalk_1["default"].yellow('config 文件路径不对,请检查'));
process.exit(1);
}
config = require(configPath);
}
else {
// 通过config.js配置config
var configPath = path_1.resolve(rootPath, configName + ".config.js");
var existsConfigPath = fs_1.existsSync(configPath);
if (existsConfigPath) {
config = require(configPath);
}
}
/** 通过 package.json 配置config */
var packageConfig = require(path_1.resolve(rootPath, './package.json'));
if (packageConfig.rapperPlus) {
config = index_1.defineConfig(packageConfig.rapperPlus);
}
// 都没有就用 defaultConfig
if (program.moduleId) {
config.download.moduleId = program.moduleId;
config.upload.moduleId = program.moduleId;
}
if (program.apiUrl && program.rapUrl) {
/** 通过 scripts 配置 */
var rapperConfig = {
apiUrl: program.apiUrl,
rapUrl: program.rapUrl,
matchDir: program.rapperPath || config.rapper.matchDir
};
config.rapper = rapperConfig;
}
if (isUpload) {
index_1.rapper(index_1.defineConfig(config));
}
else {
index_1.uploadType(index_1.defineConfig(config));
}
})();