UNPKG

adr

Version:

轻量级架构记录工具 - Command-line tools for working with Architecture Decision Records

46 lines 4.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.create = void 0; let fs = require('fs'); let path = require('path'); let mkdirp = require('mkdirp'); const Config_1 = require("./Config"); const utils_1 = require("./utils"); const generate_1 = require("./generate"); function getTemplatePath(language) { const fileExt = Config_1.default.getDocExtension(); const customTemplate = path.join(Config_1.default.getSavePath(), 'template.' + fileExt); if (fs.existsSync(customTemplate)) { return customTemplate; } else { return __dirname + path.normalize('/templates/' + language + '.' + fileExt); } } function createDecisions(name, savePath) { let language = Config_1.default.getLanguage(); let raw = fs.readFileSync(getTemplatePath(language), 'utf8'); let newDate = utils_1.default.createDateString(); let fileName = utils_1.default.generateFileName(name); let fileExt = Config_1.default.getDocExtension(); let newIndex = utils_1.default.getNewIndexString(); let fileData = raw.replace(/{NUMBER}/g, utils_1.default.getLatestIndex() + 1) .replace(/{TITLE}/g, name) .replace(/{DATE}/g, newDate); let filePath = savePath + newIndex + '-' + fileName + '.' + fileExt; fs.writeFileSync(filePath, fileData); return filePath; } function create(name) { let savePath = Config_1.default.getSavePath(); let i18n = utils_1.default.getI18n(); let fileExt = Config_1.default.getDocExtension(); console.log(i18n.logSavePath + savePath); mkdirp.sync(savePath); const filePath = createDecisions(name, savePath); utils_1.default.openInEditor(path.join(process.cwd(), filePath)); let toc = generate_1.generate('toc', { output: false }); fs.writeFileSync(savePath + 'README.' + fileExt, toc + '\n'); } exports.create = create; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jcmVhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ3RCLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUMxQixJQUFJLE1BQU0sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7QUFFOUIscUNBQTZCO0FBQzdCLG1DQUEyQjtBQUMzQix5Q0FBcUM7QUFFckMsU0FBUyxlQUFlLENBQUUsUUFBZ0I7SUFDeEMsTUFBTSxPQUFPLEdBQUcsZ0JBQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQTtJQUN4QyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsV0FBVyxHQUFHLE9BQU8sQ0FBQyxDQUFBO0lBQzdFLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsRUFBRTtRQUNqQyxPQUFPLGNBQWMsQ0FBQTtLQUN0QjtTQUFNO1FBQ0wsT0FBTyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEdBQUcsUUFBUSxHQUFHLEdBQUcsR0FBRyxPQUFPLENBQUMsQ0FBQTtLQUM1RTtBQUNILENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBRSxJQUFZLEVBQUUsUUFBNkI7SUFDbkUsSUFBSSxRQUFRLEdBQUcsZ0JBQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUNuQyxJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUM1RCxJQUFJLE9BQU8sR0FBRyxlQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQTtJQUN0QyxJQUFJLFFBQVEsR0FBRyxlQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDM0MsSUFBSSxPQUFPLEdBQUcsZ0JBQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQTtJQUV0QyxJQUFJLFFBQVEsR0FBRyxlQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQTtJQUN4QyxJQUFJLFFBQVEsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxlQUFLLENBQUMsY0FBYyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ2hFLE9BQU8sQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDO1NBQ3pCLE9BQU8sQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFFOUIsSUFBSSxRQUFRLEdBQUcsUUFBUSxHQUFHLFFBQVEsR0FBRyxHQUFHLEdBQUcsUUFBUSxHQUFHLEdBQUcsR0FBRyxPQUFPLENBQUE7SUFDbkUsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFFcEMsT0FBTyxRQUFRLENBQUE7QUFDakIsQ0FBQztBQUVELFNBQWdCLE1BQU0sQ0FBRSxJQUFZO0lBQ2xDLElBQUksUUFBUSxHQUFHLGdCQUFNLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDbkMsSUFBSSxJQUFJLEdBQUcsZUFBSyxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQzFCLElBQUksT0FBTyxHQUFHLGdCQUFNLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxDQUFBO0lBQ3hDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFckIsTUFBTSxRQUFRLEdBQUcsZUFBZSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUNoRCxlQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUE7SUFFdEQsSUFBSSxHQUFHLEdBQUcsbUJBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQTtJQUM1QyxFQUFFLENBQUMsYUFBYSxDQUFDLFFBQVEsR0FBRyxTQUFTLEdBQUcsT0FBTyxFQUFFLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQTtBQUM5RCxDQUFDO0FBWkQsd0JBWUMifQ==