UNPKG

mecano

Version:

Common functions for system deployment.

54 lines (49 loc) 1.27 kB
// Generated by CoffeeScript 1.11.1 var diff, pad, string; module.exports = function(oldStr, newStr, options) { var count_added, count_removed, i, j, k, len, len1, len2, line, lines, ls, padsize, text; if (oldStr == null) { oldStr = ''; } if (newStr == null) { newStr = ''; } lines = diff.diffLines(oldStr, newStr); text = []; count_added = count_removed = 0; padsize = Math.ceil(lines.length / 10); for (i = 0, len = lines.length; i < len; i++) { line = lines[i]; if (line.value === null) { continue; } if (!line.added && !line.removed) { count_added++; count_removed++; continue; } ls = string.lines(line.value); if (line.added) { for (j = 0, len1 = ls.length; j < len1; j++) { line = ls[j]; count_added++; text.push((pad(padsize, '' + count_added)) + " + " + line); } } else { for (k = 0, len2 = ls.length; k < len2; k++) { line = ls[k]; count_removed++; text.push((pad(padsize, '' + count_removed)) + " - " + line); } } } return { raw: lines, text: text.map(function(t) { return t + "\n"; }).join('') }; }; pad = require('pad'); diff = require('diff'); string = require('./string');