osr-discourse/lib/git/index.js
2024-06-29 21:53:26 +02:00

39 lines
3.4 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.git_log = exports.git_status = void 0;
const index_1 = require("../../index");
const GIT_CHANGELOG_MESSAGE_PREFIX = '';
const simpleGit = require("simple-git/promise");
const moment = require("moment");
async function git_status(cwd, dir) {
const git = simpleGit(cwd);
let statusSummary = null;
try {
statusSummary = await git.log(['--stat', dir]);
}
catch (e) {
index_1.logger.error('Error Git', e);
}
return statusSummary;
}
exports.git_status = git_status;
async function git_log(cwd, dir) {
const stats = await git_status(cwd, dir);
index_1.logger.info(`Reading Git log at ${cwd}/${dir}`);
let changelogs = stats.all.filter((e) => e.message.trim().toLowerCase().startsWith(GIT_CHANGELOG_MESSAGE_PREFIX.toLowerCase()));
if (!changelogs.length) {
return { files: [], last: stats.latest };
}
let pretty = changelogs.map((e) => {
return {
files: e.diff.files.map((f) => { return { path: f.file }; }),
msg: e.message.toLowerCase().replace(GIT_CHANGELOG_MESSAGE_PREFIX.toLowerCase(), '').trim(),
hash: e.hash,
date: moment(e.date).format('LLLL')
};
});
return { files: pretty, last: stats.latest };
}
exports.git_log = git_log;
;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2dpdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx1Q0FBa0M7QUFFbEMsTUFBTSw0QkFBNEIsR0FBRyxFQUFFLENBQUE7QUFJdkMsZ0RBQWdEO0FBRWhELGlDQUFpQztBQUUxQixLQUFLLFVBQVUsVUFBVSxDQUFDLEdBQUcsRUFBRSxHQUFHO0lBRXJDLE1BQU0sR0FBRyxHQUFjLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxJQUFJLGFBQWEsR0FBTyxJQUFJLENBQUM7SUFDN0IsSUFBSTtRQUNBLGFBQWEsR0FBRyxNQUFNLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztLQUNsRDtJQUNELE9BQU8sQ0FBQyxFQUFFO1FBQ04sY0FBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7S0FDaEM7SUFDRCxPQUFPLGFBQWEsQ0FBQztBQUN6QixDQUFDO0FBWEQsZ0NBV0M7QUFFTSxLQUFLLFVBQVUsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHO0lBQ2xDLE1BQU0sS0FBSyxHQUFHLE1BQU0sVUFBVSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN6QyxjQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNoRCxJQUFJLFVBQVUsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLENBQUMsNEJBQTRCLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFO1FBQ3BCLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUE7S0FDMUM7SUFDRCxJQUFJLE1BQU0sR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDOUIsT0FBTztZQUNILEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxHQUFHLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBLENBQUMsQ0FBQyxDQUFDO1lBQzNELEdBQUcsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxXQUFXLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUU7WUFDM0YsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJO1lBQ1osSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztTQUN0QyxDQUFBO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO0FBQ2pELENBQUM7QUFqQkQsMEJBaUJDO0FBQUEsQ0FBQyJ9