@c-sheep/i18n-extract-cli
Version:
这是一款能够自动将代码里的中文转成i18n国际化标记的命令行工具。当然,你也可以用它实现将中文语言包自动翻译成其他语言。适用于vue2、vue3和react
65 lines (64 loc) • 3.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.replaceJsonToProject = exports.genreLanguageExcel = exports.mergeRealJsonToProject = exports.getLoseJsonData = exports.exportModuleExcel = exports.startTranslateJson = exports.genreZhByGit = exports.genreZhToI18n = void 0;
const comblie_1 = require("../shared/comblie");
const startChangeSource_1 = require("../bussiness/startChangeSource");
const genreGitTransform_1 = require("../bussiness/genreGitTransform");
const startTranslate_1 = require("../bussiness/startTranslate");
const startExportExcel_1 = require("../bussiness/startExportExcel");
const startMergeJson_1 = require("../bussiness/startMergeJson");
const startGetLoseExcel_1 = require("../bussiness/startGetLoseExcel");
const addNewLanguage_1 = require("../bussiness/addNewLanguage");
const util_1 = require("../shared/util");
const replaceJson_1 = require("../bussiness/replaceJson");
const genreZhToI18n = (options) => {
const config = (0, comblie_1.getI18nConfig)(options);
(0, startChangeSource_1.genreI18n)(config);
};
exports.genreZhToI18n = genreZhToI18n;
const genreZhByGit = (options) => {
const config = (0, comblie_1.getI18nConfig)(options);
(0, genreGitTransform_1.transformGit)(config);
};
exports.genreZhByGit = genreZhByGit;
const startTranslateJson = (options) => {
const config = (0, comblie_1.getI18nConfig)(options);
(0, startTranslate_1.translateJson)(config);
};
exports.startTranslateJson = startTranslateJson;
const exportModuleExcel = (options) => {
const config = (0, comblie_1.getI18nConfig)(options);
(0, startExportExcel_1.startExportModuleExcel)(config);
};
exports.exportModuleExcel = exportModuleExcel;
const getLoseJsonData = (options) => {
const config = (0, comblie_1.getI18nConfig)(options);
(0, startGetLoseExcel_1.startExport)(config);
};
exports.getLoseJsonData = getLoseJsonData;
const mergeRealJsonToProject = (options) => {
const config = (0, comblie_1.getI18nConfig)(options);
(0, startMergeJson_1.startSetMergeJson)(config);
};
exports.mergeRealJsonToProject = mergeRealJsonToProject;
const genreLanguageExcel = (options, langs) => {
const config = (0, comblie_1.getI18nConfig)(options);
const langaugeData = (0, addNewLanguage_1.getDataByModuleAndLanguage)(config, langs);
const { data: baseLanguage } = langaugeData.shift();
const { headers, data } = (0, util_1.genreExcelDataByArray)(langaugeData, baseLanguage);
(0, util_1.genreExcelByData)({
headers,
data,
sheetName: `${config.formatModuleName}模块`,
excelName: `${config.formatModuleName || "all"}-${headers
.slice(1)
.join("_")}_语言json集合.xlsx`,
excelPath: config.excelPath
});
};
exports.genreLanguageExcel = genreLanguageExcel;
const replaceJsonToProject = (options) => {
const config = (0, comblie_1.getI18nConfig)(options);
(0, replaceJson_1.startReplaceJsonValue)(config);
};
exports.replaceJsonToProject = replaceJsonToProject;