@elora-cloud/elora-cli
Version:
elora build cli 前端打包脚手架
49 lines (43 loc) • 2.36 kB
JavaScript
;
var node_fs = require('node:fs');
var path = require('node:path');
var node_url = require('node:url');
var conventionalChangelog = require('conventional-changelog');
var ora = require('ora');
var index = require('../../common/index.cjs');
var constant = require('../../common/constant.cjs');
var logger = require('../../common/logger.cjs');
var transform = require('./transform.cjs');
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
var conventionalChangelog__default = /*#__PURE__*/_interopDefaultCompat(conventionalChangelog);
var ora__default = /*#__PURE__*/_interopDefaultCompat(ora);
const DIST_FILE = path.join(constant.ROOT, './CHANGELOG.md');
const __dirname$1 = path.dirname(node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('cli/commands/change-log/index.cjs', document.baseURI).href))));
const MAIN_TEMPLATE = path.join(__dirname$1, '../../../../template/changelog-main.hbs');
const HEADER_TEMPLATE = path.join(__dirname$1, '../../../../template/changelog-header.hbs');
const COMMIT_TEMPLATE = path.join(__dirname$1, '../../../../template/changelog-commit.hbs');
const mainTemplate = node_fs.readFileSync(MAIN_TEMPLATE, 'utf-8');
const headerPartial = node_fs.readFileSync(HEADER_TEMPLATE, 'utf-8');
const commitPartial = node_fs.readFileSync(COMMIT_TEMPLATE, 'utf-8');
async function changeLog() {
const spinner = ora__default.default('日志生成中...').start();
await index.isMonorepoProject();
return new Promise((resolve) => {
conventionalChangelog__default.default({
preset: 'angular',
releaseCount: 2,
}, undefined, undefined, undefined, {
mainTemplate,
headerPartial,
commitPartial,
transform: transform.transform,
})
.pipe(node_fs.createWriteStream(DIST_FILE))
.on('close', () => {
spinner.succeed(`Changelog generated at ${logger.slimPath(DIST_FILE)}`);
resolve();
});
});
}
exports.changeLog = changeLog;