added and deleted lines per file

This commit is contained in:
Rodrigo Fernandes 2014-08-30 14:16:13 +01:00
parent 0b807ce01b
commit b95c4a60e7
2 changed files with 35 additions and 2 deletions

View file

@ -66,6 +66,8 @@
/* create file structure */ /* create file structure */
currentFile = {}; currentFile = {};
currentFile.blocks = []; currentFile.blocks = [];
currentFile.deletedLines = 0,
currentFile.addedLines = 0;
/* save file paths, before and after the diff */ /* save file paths, before and after the diff */
var values = /^diff --git a\/(\S+) b\/(\S+).*$/.exec(line); var values = /^diff --git a\/(\S+) b\/(\S+).*$/.exec(line);
@ -88,8 +90,9 @@
currentBlock.lines = []; currentBlock.lines = [];
currentBlock.oldStartLine = oldLine = values[2]; currentBlock.oldStartLine = oldLine = values[2];
currentBlock.newStartLine = newLine = values[4]; currentBlock.newStartLine = newLine = values[4];
currentBlock.deletedLines = values[3]; /* update file added and deleted lines */
currentBlock.addedLines = values[5]; currentFile.deletedLines += currentBlock.deletedLines = parseInt(values[3], 10);
currentFile.addedLines += currentBlock.addedLines = parseInt(values[5], 10);
/* create block header line */ /* create block header line */
var currentLine = {}; var currentLine = {};
@ -150,6 +153,10 @@
return "<div class=\"file-wrapper\">" + return "<div class=\"file-wrapper\">" +
" <div class=\"file-header\">" + " <div class=\"file-header\">" +
" <div class=\"file-stats\">" +
" <span class=\"lines-added\">+" + file.addedLines + "</span>" +
" <span class=\"lines-deleted\">-" + file.deletedLines + "</span>" +
" </div>" +
" <div class=\"file-name\">" + fileHeader + "</div>" + " <div class=\"file-name\">" + fileHeader + "</div>" +
" </div>" + " </div>" +
" <div class=\"file-diff\">" + " <div class=\"file-diff\">" +

View file

@ -34,12 +34,38 @@ body {
} }
.file-name { .file-name {
display: inline-block;
font: 13px Helvetica, arial, freesans, clean, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol"; font: 13px Helvetica, arial, freesans, clean, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol";
line-height: 1.4; line-height: 1.4;
height: 33px; height: 33px;
line-height: 33px; line-height: 33px;
} }
.file-stats {
display: inline-block;
font-family: monospace,monospace;
font-size: 12px;
vertical-align: middle;
}
.lines-added {
background-color: #ceffce;
border-color: #b4e2b4;
border: 1px solid;
color: #399839;
border-radius: 5px 0 0 5px;
padding: 5px;
}
.lines-deleted {
background-color: #f7c8c8;
border-color: #e9aeae;
border: 1px solid;
color: #c33;
border-radius: 0 5px 5px 0;
padding: 5px;
}
.file-diff { .file-diff {
overflow: auto; overflow: auto;
} }