zqserver-cli
Version:
Zqs cli tool
68 lines • 4.99 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.newProject = void 0;
const colors = require("colors/safe");
const fs = require("fs");
const fse = require("fs-extra");
const inquirer = require("inquirer");
const cmd_1 = require("./cmd");
function newProject(flags, answers_) {
return __awaiter(this, void 0, void 0, function* () {
const cwd = process.cwd();
if (flags.new === true) {
let answers = answers_;
if (!answers)
answers = yield inquirer.prompt([
{
type: 'input',
name: 'new',
default: 'helloWorld',
message: '项目名称',
},
{
type: 'confirm',
name: 'overwrite',
default: false,
message: (answers) => colors.red(`覆盖 ${cwd}/${answers.new}`),
when: (answers) => fs.existsSync(`${cwd}/${answers.new}`),
},
]);
flags.new = answers.new;
flags.overwrite = answers.overwrite;
}
if (flags.overwrite === false)
return false;
try {
if (flags.overwrite === true) {
yield fse.remove(`${cwd}/${flags.new}`);
}
const gitee_repo = 'git clone https://gitee.com/ToolsZhang/zqs-base.git';
yield cmd_1.run(`${gitee_repo} ${flags.new}`, {
cwd: cwd,
stdio: 'inherit',
});
yield fse.remove(`${cwd}/${flags.new}/.git`);
yield cmd_1.run('npm install', {
cwd: `${cwd}/${flags.new}`,
stdio: 'inherit',
});
console.log('已新建', colors.cyan(flags.new));
return true;
}
catch (e) {
console.error(e);
return false;
}
});
}
exports.newProject = newProject;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL25ldy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxzQ0FBc0M7QUFDdEMseUJBQXlCO0FBQ3pCLGdDQUFnQztBQUNoQyxxQ0FBcUM7QUFDckMsK0JBQTRCO0FBRTVCLFNBQXNCLFVBQVUsQ0FBQyxLQUFVLEVBQUUsUUFBYzs7UUFFekQsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxJQUFJLEVBQUU7WUFDdEIsSUFBSSxPQUFPLEdBQUcsUUFBUSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxPQUFPO2dCQUNWLE9BQU8sR0FBRyxNQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUM7b0JBQzlCO3dCQUNFLElBQUksRUFBRSxPQUFPO3dCQUNiLElBQUksRUFBRSxLQUFLO3dCQUNYLE9BQU8sRUFBRSxZQUFZO3dCQUNyQixPQUFPLEVBQUUsTUFBTTtxQkFDaEI7b0JBQ0Q7d0JBQ0UsSUFBSSxFQUFFLFNBQVM7d0JBQ2YsSUFBSSxFQUFFLFdBQVc7d0JBQ2pCLE9BQU8sRUFBRSxLQUFLO3dCQUNkLE9BQU8sRUFBRSxDQUFDLE9BQVksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7d0JBQ2pFLElBQUksRUFBRSxDQUFDLE9BQVksRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUcsSUFBSSxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7cUJBQy9EO2lCQUNGLENBQUMsQ0FBQztZQUNMLEtBQUssQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUN4QixLQUFLLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7U0FDckM7UUFFRCxJQUFJLEtBQUssQ0FBQyxTQUFTLEtBQUssS0FBSztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBRTVDLElBQUk7WUFFRixJQUFJLEtBQUssQ0FBQyxTQUFTLEtBQUssSUFBSSxFQUFFO2dCQUM1QixNQUFNLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7YUFDekM7WUFLRCxNQUFNLFVBQVUsR0FBRyxxREFBcUQsQ0FBQztZQUN6RSxNQUFNLFNBQUcsQ0FBQyxHQUFHLFVBQVUsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ3RDLEdBQUcsRUFBRSxHQUFHO2dCQUNSLEtBQUssRUFBRSxTQUFTO2FBQ2pCLENBQUMsQ0FBQztZQUdILE1BQU0sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztZQUc3QyxNQUFNLFNBQUcsQ0FBQyxhQUFhLEVBQUU7Z0JBQ3ZCLEdBQUcsRUFBRSxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO2dCQUMxQixLQUFLLEVBQUUsU0FBUzthQUNqQixDQUFDLENBQUM7WUFHSCxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzNDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7Q0FBQTtBQTFERCxnQ0EwREMifQ==