adr
Version:
轻量级架构记录工具 - Command-line tools for working with Architecture Decision Records
30 lines • 2.61 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.ListGenerateBuilder = void 0;
let fs = require('fs');
const GenerateBuilder_1 = require("./GenerateBuilder");
const Config_1 = require("../Config");
const utils_1 = require("../utils");
let savePath = Config_1.default.getSavePath();
class ListGenerateBuilder extends GenerateBuilder_1.GenerateBuilder {
setBody(handleBody) {
let files = this.files;
let bodyString = this.bodyString;
files.forEach(function (file) {
let fileName = file.relativePath;
let index = utils_1.default.getIndexByString(fileName);
let fileData = fs.readFileSync(savePath + fileName, 'utf8');
let firstLine = fileData.split('\n')[0];
if (index) {
// for markdown support
let decision = firstLine.replace(/#\s\d+\.\s/g, '');
// for asciidoc support
decision = decision.replace(/=\s\d+\.\s/g, '');
handleBody(index, decision, file, bodyString, files.length);
}
});
return this;
}
}
exports.ListGenerateBuilder = ListGenerateBuilder;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGlzdEdlbmVyYXRlQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvYmFzZS9MaXN0R2VuZXJhdGVCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQTtBQUV0Qix1REFBbUQ7QUFDbkQsc0NBQThCO0FBQzlCLG9DQUE0QjtBQUU1QixJQUFJLFFBQVEsR0FBRyxnQkFBTSxDQUFDLFdBQVcsRUFBRSxDQUFBO0FBRW5DLE1BQWEsbUJBQW9CLFNBQVEsaUNBQWU7SUFDdEQsT0FBTyxDQUFFLFVBQWU7UUFDdEIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQTtRQUN0QixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFBO1FBQ2hDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJO1lBQzFCLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUE7WUFDaEMsSUFBSSxLQUFLLEdBQUcsZUFBSyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQzVDLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxHQUFHLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQTtZQUMzRCxJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ3ZDLElBQUksS0FBSyxFQUFFO2dCQUNULHVCQUF1QjtnQkFDdkIsSUFBSSxRQUFRLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUE7Z0JBQ25ELHVCQUF1QjtnQkFDdkIsUUFBUSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFBO2dCQUM5QyxVQUFVLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQTthQUM1RDtRQUNILENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0NBQ0Y7QUFuQkQsa0RBbUJDIn0=
;