@gaonengwww/tiny-toolkit-docs
Version:
这里对你的套件进行简单描述, 比如适用哪些场景,使用了什么技术, 有什么特点
124 lines • 7.28 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.modifyFileContent = exports.setModuleCache = exports.getDistPath = exports.getTemplatePath = exports.generateNames = void 0;
/**
* Copyright (c) 2022 - present OpentinyCli Authors.
* Copyright (c) 2022 - present Huawei Cloud Computing Technologies Co., Ltd.
*
* Use of this source code is governed by an MIT-style license.
*
* THE OPEN SOURCE SOFTWARE IN THIS PRODUCT IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL,
* BUT WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR
* A PARTICULAR PURPOSE. SEE THE APPLICABLE LICENSES FOR MORE DETAILS.
*
*/
const path = __importStar(require("path"));
const cli_devkit_1 = require("@opentiny/cli-devkit");
const log = cli_devkit_1.logs('@/tiny-toolkit-docs');
const cwd = process.cwd();
function firstUpperCase(str) {
return str.replace(/^\S/, s => s.toUpperCase());
}
/**
* 转换格式
* @param str 英文字符串
* @param isBig 是否转大写
*/
function camelTrans(value, isBig) {
let i = isBig ? 0 : 1;
const str = value.split('-');
for (; i < str.length; i += 1) {
str[i] = firstUpperCase(str[i]);
}
return str.join('');
}
/**
* 用户输入的是用横杠连接的名字
* 根据用户输入的name生成各类规格变量名: 横杠连接,小驼峰,大驼峰,全大写
*/
function generateNames(name) {
return {
// 横杠连接
fileName: name,
// 小驼峰
varName: camelTrans(name),
// 大驼峰
className: camelTrans(name, true),
// 全大写
constName: name
.split('-')
.join('')
.toUpperCase()
};
}
exports.generateNames = generateNames;
/**
* 获取模板文件夹路径
* @param source template目录下的路径
*/
function getTemplatePath(source) {
const templatePath = path.join(__dirname, '../../../template/');
return source ? path.join(templatePath, source) : templatePath;
}
exports.getTemplatePath = getTemplatePath;
/**
* 获取目标文件夹路径,参数不传为为当前命令执行的目录
* @param dist 目标根目录下的子文件夹路径
*/
function getDistPath(dist) {
return dist ? path.join(cwd, dist) : cwd;
}
exports.getDistPath = getDistPath;
/**
* 设置模块的缓存
* @param name 模块名称
*/
function setModuleCache(name) {
// 写一下缓存,避免未发布时一直去线上拉数据
const cacheKey = `${cli_devkit_1.modules.utils.UPDATE_CHECK_PRE}${name}`;
cli_devkit_1.cache.set(cacheKey, true, {
expires: cli_devkit_1.modules.utils.NO_TIP_PERIOD * 10
});
}
exports.setModuleCache = setModuleCache;
// 修改文件内容
function modifyFileContent(filePath, sourceRegx, targetRegx) {
if (!cli_devkit_1.fs.existsSync(filePath)) {
return;
}
// 读取文件
const data = cli_devkit_1.fs.readFileSync(filePath, 'utf8');
let str = data.toString();
// 代码替换修改
str = str.replace(sourceRegx, targetRegx);
// 写入文件
cli_devkit_1.fs.writeFileSync(filePath, str);
}
exports.modifyFileContent = modifyFileContent;
exports.default = {
getDistPath,
getTemplatePath,
generateNames,
setModuleCache,
modifyFileContent
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NvbW1vbi91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7R0FVRztBQUNILDJDQUE2QjtBQUM3QixxREFBZ0U7QUFFaEUsTUFBTSxHQUFHLEdBQUcsaUJBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBQ3hDLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUUxQixTQUFTLGNBQWMsQ0FBQyxHQUFXO0lBQ2pDLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUNsRCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQVMsVUFBVSxDQUFDLEtBQWEsRUFBRSxLQUFlO0lBQ2hELElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdEIsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDN0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNqQztJQUNELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUN0QixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsYUFBYSxDQUFDLElBQVk7SUFDeEMsT0FBTztRQUNMLE9BQU87UUFDUCxRQUFRLEVBQUUsSUFBSTtRQUVkLE1BQU07UUFDTixPQUFPLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQztRQUV6QixNQUFNO1FBQ04sU0FBUyxFQUFFLFVBQVUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO1FBRWpDLE1BQU07UUFDTixTQUFTLEVBQUUsSUFBSTthQUNaLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDVixJQUFJLENBQUMsRUFBRSxDQUFDO2FBQ1IsV0FBVyxFQUFFO0tBQ2pCLENBQUM7QUFDSixDQUFDO0FBakJELHNDQWlCQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLGVBQWUsQ0FBQyxNQUFlO0lBQzdDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLG9CQUFvQixDQUFDLENBQUM7SUFDaEUsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7QUFDakUsQ0FBQztBQUhELDBDQUdDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsV0FBVyxDQUFDLElBQWE7SUFDdkMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7QUFDM0MsQ0FBQztBQUZELGtDQUVDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLElBQVk7SUFDekMsdUJBQXVCO0lBQ3ZCLE1BQU0sUUFBUSxHQUFHLEdBQUcsb0JBQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxFQUFFLENBQUM7SUFDNUQsa0JBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRTtRQUN4QixPQUFPLEVBQUUsb0JBQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxHQUFHLEVBQUU7S0FDMUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQU5ELHdDQU1DO0FBRUQsU0FBUztBQUNULFNBQWdCLGlCQUFpQixDQUMvQixRQUFnQixFQUNoQixVQUEyQixFQUMzQixVQUFrQjtJQUVsQixJQUFJLENBQUMsZUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUM1QixPQUFPO0tBQ1I7SUFDRCxPQUFPO0lBQ1AsTUFBTSxJQUFJLEdBQUcsZUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDL0MsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFCLFNBQVM7SUFDVCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDMUMsT0FBTztJQUNQLGVBQUUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQ2xDLENBQUM7QUFmRCw4Q0FlQztBQUVELGtCQUFlO0lBQ2IsV0FBVztJQUNYLGVBQWU7SUFDZixhQUFhO0lBQ2IsY0FBYztJQUNkLGlCQUFpQjtDQUNsQixDQUFDIn0=