create-aiot
Version:
An easy way to start aiot project
42 lines (41 loc) • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _path = _interopRequireDefault(require("path"));
var _fsExtra = _interopRequireDefault(require("fs-extra"));
var _Common = _interopRequireDefault(require("../Common"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
class XtsTemplateUtil {
/**
* xts项目-处理aspect内容
* @param projectAbsolutePath
* @param aspect
*/
static createAspect(projectAbsolutePath, aspect) {
// 按照逗号分割字符串,且去掉空格
const aspects = aspect.replace(' ', '').split(',');
const aspectAbsolutePath = _path.default.join(__dirname, '../../template', 'xts', 'aspect1');
// 循环生成自定义aspect
aspects.map(aspectItem => {
const targetAspectPath = _path.default.join(projectAbsolutePath, aspectItem);
_fsExtra.default.copySync(aspectAbsolutePath, targetAspectPath);
// 替换关键字
_Common.default.performReplace({
data: {
aspectName: aspectItem
},
includes: path => {
const stats = _fsExtra.default.statSync(path);
if (stats.isDirectory()) {
return ['src'].includes(_path.default.basename(path));
} else {
return ['.json', '.ux'].includes(_path.default.extname(path));
}
}
}, targetAspectPath);
});
}
}
var _default = exports.default = XtsTemplateUtil;