adr
Version:
轻量级架构记录工具 - Command-line tools for working with Architecture Decision Records
26 lines • 2.47 kB
JavaScript
let fs = require('fs');
import { GenerateBuilder } from './GenerateBuilder';
import Config from '../Config';
import Utils from '../utils';
let savePath = Config.getSavePath();
export class ListGenerateBuilder extends GenerateBuilder {
setBody(handleBody) {
let files = this.files;
let bodyString = this.bodyString;
files.forEach(function (file) {
let fileName = file.relativePath;
let index = Utils.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;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGlzdEdlbmVyYXRlQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvYmFzZS9MaXN0R2VuZXJhdGVCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQTtBQUV0QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDbkQsT0FBTyxNQUFNLE1BQU0sV0FBVyxDQUFBO0FBQzlCLE9BQU8sS0FBSyxNQUFNLFVBQVUsQ0FBQTtBQUU1QixJQUFJLFFBQVEsR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUE7QUFFbkMsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQWU7SUFDdEQsT0FBTyxDQUFFLFVBQWU7UUFDdEIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQTtRQUN0QixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFBO1FBQ2hDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJO1lBQzFCLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUE7WUFDaEMsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQzVDLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxHQUFHLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQTtZQUMzRCxJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ3ZDLElBQUksS0FBSyxFQUFFO2dCQUNULHVCQUF1QjtnQkFDdkIsSUFBSSxRQUFRLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUE7Z0JBQ25ELHVCQUF1QjtnQkFDdkIsUUFBUSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFBO2dCQUM5QyxVQUFVLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQTthQUM1RDtRQUNILENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0NBQ0YifQ==