unbag
Version:
一个专门用来开发npm工具的包
78 lines (77 loc) • 2.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.gitCz = void 0;
var _git = require("./../../utils/git.cjs");
var _index = require("./../../utils/message/index.cjs");
var _nodeModule = require("node:module");
var _path = require("./../../utils/path.cjs");
var _config = require("./config.cjs");
var _inquirer = _interopRequireDefault(require("inquirer"));
var _log = require("./../../utils/log.cjs");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const require2 = (0, _nodeModule.createRequire)(import.meta.url);
const useCommitizenCommit = async params => {
const {
finalUserConfig
} = params;
const path = (0, _path.usePath)();
const log = (0, _log.useLog)({
finalUserConfig
});
const commitizenPath = require2.resolve("commitizen");
log.debug({
commitizenPath
});
const commitizenCommitJsFile = path.resolve(commitizenPath, "../commitizen");
const process = require2(commitizenCommitJsFile);
return process.commit;
};
const gitCz = async params => {
const {
finalUserConfig
} = params;
const czCommit = await useCommitizenCommit({
finalUserConfig
});
const path = (0, _path.usePath)();
const log = (0, _log.useLog)({
finalUserConfig
});
const czCommitlintPath = require2.resolve("@commitlint/cz-commitlint");
const processJsFile = path.resolve(czCommitlintPath, "../lib/Process.js");
const process = (await import(processJsFile)).default;
const lintConfig = await (0, _config.loadCommitLintConfig)({
finalUserConfig
});
const prompter = (inquirerIns, commit) => {
process(lintConfig.rules, lintConfig.prompt, inquirerIns).then(commit);
};
log.debug({
lintConfig
});
const message = (0, _index.useMessage)({
locale: finalUserConfig.locale
});
const git = (0, _git.useGit)();
const gitRootPath = await git.gitRootPathGet();
const stageFiles = await git.stageFilesGet();
log.debug({
stageFiles,
gitRootPath
});
if (stageFiles.length <= 0) {
throw new Error(message.commit.branch.stageFiles.empty());
}
czCommit(_inquirer.default, gitRootPath, prompter, {
disableAppendPaths: true,
emitData: true,
quiet: finalUserConfig.log.disabled
}, function (error) {
if (error) {
throw error;
}
});
};
exports.gitCz = gitCz;