UNPKG

pk-template

Version:
55 lines 4.96 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { 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) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const projectConf_1 = require("../../pk-conf/projectConf"); const fs_1 = require("fs"); const conf_1 = require("../../pk-conf/conf"); const libs_1 = require("../libs"); const insideGit_1 = require("../../pk-path/insideGit"); const module_1 = require("../../pk-conf/module"); exports.default = (pk) => ({ command: 'init <project-name> [directory]', desc: 'initialize project', builder: (yargs) => yargs, handler: (argv) => __awaiter(this, void 0, void 0, function* () { const directory = argv.directory || 'pk'; yield libs_1.tryCatch(() => __awaiter(this, void 0, void 0, function* () { const conf = conf_1.PkConf.load(); if (!conf) { throw new Error('~/pk.yaml not exists. use pk config'); } if (!conf.data.email) { throw new Error('user is not set. use pk config --user to set'); } if (!argv.projectName.match(/^[a-zA-Z0-9]+$/)) { throw new Error(`app name ${argv.projectName} is invalid`); } if (!insideGit_1.insideGit()) { throw new Error(`need git reporitory to create project`); } console.log(`* creating ${directory}/ directory ...`); if (!fs_1.existsSync(argv.projectConf)) { fs_1.mkdirSync(directory); } console.log(`* initializing ${directory}/${projectConf_1.PkProjectConf.FILENAME} file ...`); const file = projectConf_1.PkProjectConf.create(argv.projectName, conf.data.email); if (projectConf_1.PkProjectConf.exists(directory)) { throw new Error(`project ${argv.projectName} already exists`); } projectConf_1.PkProjectConf.save(file, directory); const modulesDir = `${directory}/${module_1.MODULE_DIR}`; console.log(`* creating ${modulesDir}/ directories...`); if (!fs_1.existsSync(modulesDir)) { fs_1.mkdirSync(modulesDir); } }), argv.d); }), }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9way9jb21tYW5kcy9pbml0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSwyREFBMEQ7QUFDMUQsMkJBQTJDO0FBQzNDLDZDQUE0QztBQUM1QyxrQ0FBbUM7QUFDbkMsdURBQW9EO0FBQ3BELGlEQUFrRDtBQUdsRCxrQkFBZSxDQUFDLEVBQWtCLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdEMsT0FBTyxFQUFFLGlDQUFpQztJQUMxQyxJQUFJLEVBQUUsb0JBQW9CO0lBQzFCLE9BQU8sRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQUMsS0FBSztJQUM5QixPQUFPLEVBQUUsQ0FBTyxJQUFTLEVBQUUsRUFBRTtRQUMzQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQztRQUV6QyxNQUFNLGVBQVEsQ0FBQyxHQUFTLEVBQUU7WUFDeEIsTUFBTSxJQUFJLEdBQUcsYUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ1QsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO2FBQ3hEO1lBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7YUFDakU7WUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtnQkFDN0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxZQUFZLElBQUksQ0FBQyxXQUFXLGFBQWEsQ0FBQyxDQUFDO2FBQzVEO1lBRUQsSUFBSSxDQUFDLHFCQUFTLEVBQUUsRUFBRTtnQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO2FBQzFEO1lBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLFNBQVMsaUJBQWlCLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsZUFBVSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDakMsY0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3RCO1lBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsU0FBUyxJQUFJLDJCQUFhLENBQUMsUUFBUSxXQUFXLENBQUMsQ0FBQTtZQUM3RSxNQUFNLElBQUksR0FBRywyQkFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckUsSUFBSSwyQkFBYSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxXQUFXLElBQUksQ0FBQyxXQUFXLGlCQUFpQixDQUFDLENBQUE7YUFDOUQ7WUFDRCwyQkFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFFcEMsTUFBTSxVQUFVLEdBQUcsR0FBRyxTQUFTLElBQUksbUJBQVUsRUFBRSxDQUFDO1lBQ2hELE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxVQUFVLGtCQUFrQixDQUFDLENBQUM7WUFDeEQsSUFBSSxDQUFDLGVBQVUsQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDM0IsY0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ3ZCO1FBQ0gsQ0FBQyxDQUFBLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2IsQ0FBQyxDQUFBO0NBQ0YsQ0FBQyxDQUFDIn0=