UNPKG

@beisen/bscpm

Version:
65 lines (44 loc) 1.7 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _fs = require('fs'); var _fs2 = _interopRequireDefault(_fs); var _yeomanGenerator = require('yeoman-generator'); var _yeomanGenerator2 = _interopRequireDefault(_yeomanGenerator); var _hjson = require('hjson'); var _hjson2 = _interopRequireDefault(_hjson); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = class extends _yeomanGenerator2.default { prompting() { let { contextRoot } = this.options; this.bscpmrcExists = _fs2.default.existsSync(`${contextRoot}/.bscpmrc`); this.promptes = {}; return this.prompt([{ 'type': 'confirm', 'name': 'upgradeConfirm', 'message': this.bscpmrcExists ? '将在 .bscpmrc 文件中 添加/更改 category 字段' : '将创建 .bscpmrc 文件,并添加 category 字段' }]).then(promptes => { this.promptes.upgradeConfirm = promptes.upgradeConfirm; }); } writing() { let { contextRoot } = this.options; if (this.promptes.upgradeConfirm) { let bscpmrc = {}; let category = 'ThunderPage'; // 如果存在 rc 文件,则更新。否则创建 if (this.bscpmrcExists) { bscpmrc = _hjson2.default.parse(_fs2.default.readFileSync(`${contextRoot}/.bscpmrc`, 'utf-8')); bscpmrc.category = category; } else { bscpmrc = { category }; } _fs2.default.writeFileSync(`${contextRoot}/.bscpmrc`, JSON.stringify(bscpmrc, null, 2)); console.log('ThunderPage更新完毕'); } else { console.log('已取消更新操作'); } } }; module.exports = exports['default'];