| Index: third_party/WebKit/Source/devtools/front_end/diff/Diff.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/diff/Diff.js b/third_party/WebKit/Source/devtools/front_end/diff/Diff.js
|
| index 313ec9dc20b941f1e3e921be2eeca21785823f8c..5173322efbad5e0055fa5e78a1b08444c0b72516 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/diff/Diff.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/diff/Diff.js
|
| @@ -1,92 +1,84 @@
|
| // Copyright 2015 The Chromium Authors. All rights reserved.
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
| -
|
| WebInspector.Diff = {
|
| - /**
|
| - * @param {string} text1
|
| - * @param {string} text2
|
| - * @return {!Array.<!{0: number, 1: string}>}
|
| - */
|
| - charDiff: function(text1, text2)
|
| - {
|
| - var differ = new diff_match_patch();
|
| - return differ.diff_main(text1, text2);
|
| - },
|
| + /**
|
| + * @param {string} text1
|
| + * @param {string} text2
|
| + * @return {!Array.<!{0: number, 1: string}>}
|
| + */
|
| + charDiff: function(text1, text2) {
|
| + var differ = new diff_match_patch();
|
| + return differ.diff_main(text1, text2);
|
| + },
|
|
|
| - /**
|
| - * @param {!Array.<string>} lines1
|
| - * @param {!Array.<string>} lines2
|
| - * @return {!Array.<!{0: number, 1: !Array.<string>}>}
|
| - */
|
| - lineDiff: function(lines1, lines2)
|
| - {
|
| - /** @type {!WebInspector.CharacterIdMap<string>} */
|
| - var idMap = new WebInspector.CharacterIdMap();
|
| - var text1 = lines1.map(line => idMap.toChar(line)).join("");
|
| - var text2 = lines2.map(line => idMap.toChar(line)).join("");
|
| + /**
|
| + * @param {!Array.<string>} lines1
|
| + * @param {!Array.<string>} lines2
|
| + * @return {!Array.<!{0: number, 1: !Array.<string>}>}
|
| + */
|
| + lineDiff: function(lines1, lines2) {
|
| + /** @type {!WebInspector.CharacterIdMap<string>} */
|
| + var idMap = new WebInspector.CharacterIdMap();
|
| + var text1 = lines1.map(line => idMap.toChar(line)).join('');
|
| + var text2 = lines2.map(line => idMap.toChar(line)).join('');
|
|
|
| - var diff = WebInspector.Diff.charDiff(text1, text2);
|
| - var lineDiff = [];
|
| - for (var i = 0; i < diff.length; i++) {
|
| - var lines = [];
|
| - for (var j = 0; j < diff[i][1].length; j++)
|
| - lines.push(idMap.fromChar(diff[i][1][j]));
|
| + var diff = WebInspector.Diff.charDiff(text1, text2);
|
| + var lineDiff = [];
|
| + for (var i = 0; i < diff.length; i++) {
|
| + var lines = [];
|
| + for (var j = 0; j < diff[i][1].length; j++)
|
| + lines.push(idMap.fromChar(diff[i][1][j]));
|
|
|
| - lineDiff.push({
|
| - 0: diff[i][0],
|
| - 1: lines
|
| - });
|
| - }
|
| - return lineDiff;
|
| - },
|
| + lineDiff.push({0: diff[i][0], 1: lines});
|
| + }
|
| + return lineDiff;
|
| + },
|
|
|
| - /**
|
| - * @param {!Array.<!{0: number, 1: !Array.<string>}>} diff
|
| - * @return {!Array<!Array<number>>}
|
| - */
|
| - convertToEditDiff: function(diff)
|
| - {
|
| - var normalized = [];
|
| - var added = 0;
|
| - var removed = 0;
|
| - for (var i = 0; i < diff.length; ++i) {
|
| - var token = diff[i];
|
| - if (token[0] === WebInspector.Diff.Operation.Equal) {
|
| - flush();
|
| - normalized.push([WebInspector.Diff.Operation.Equal, token[1].length]);
|
| - } else if (token[0] === WebInspector.Diff.Operation.Delete) {
|
| - removed += token[1].length;
|
| - } else {
|
| - added += token[1].length;
|
| - }
|
| - }
|
| + /**
|
| + * @param {!Array.<!{0: number, 1: !Array.<string>}>} diff
|
| + * @return {!Array<!Array<number>>}
|
| + */
|
| + convertToEditDiff: function(diff) {
|
| + var normalized = [];
|
| + var added = 0;
|
| + var removed = 0;
|
| + for (var i = 0; i < diff.length; ++i) {
|
| + var token = diff[i];
|
| + if (token[0] === WebInspector.Diff.Operation.Equal) {
|
| flush();
|
| - return normalized;
|
| + normalized.push([WebInspector.Diff.Operation.Equal, token[1].length]);
|
| + } else if (token[0] === WebInspector.Diff.Operation.Delete) {
|
| + removed += token[1].length;
|
| + } else {
|
| + added += token[1].length;
|
| + }
|
| + }
|
| + flush();
|
| + return normalized;
|
|
|
| - function flush()
|
| - {
|
| - if (added && removed) {
|
| - var min = Math.min(added, removed);
|
| - normalized.push([WebInspector.Diff.Operation.Edit, min]);
|
| - added -= min;
|
| - removed -= min;
|
| - }
|
| - if (added || removed) {
|
| - var balance = added - removed;
|
| - var type = balance < 0 ? WebInspector.Diff.Operation.Delete : WebInspector.Diff.Operation.Insert;
|
| - normalized.push([type, Math.abs(balance)]);
|
| - added = 0;
|
| - removed = 0;
|
| - }
|
| - }
|
| + function flush() {
|
| + if (added && removed) {
|
| + var min = Math.min(added, removed);
|
| + normalized.push([WebInspector.Diff.Operation.Edit, min]);
|
| + added -= min;
|
| + removed -= min;
|
| + }
|
| + if (added || removed) {
|
| + var balance = added - removed;
|
| + var type = balance < 0 ? WebInspector.Diff.Operation.Delete : WebInspector.Diff.Operation.Insert;
|
| + normalized.push([type, Math.abs(balance)]);
|
| + added = 0;
|
| + removed = 0;
|
| + }
|
| }
|
| + }
|
|
|
| };
|
|
|
| WebInspector.Diff.Operation = {
|
| - Equal: 0,
|
| - Insert: 1,
|
| - Delete: -1,
|
| - Edit: 2
|
| + Equal: 0,
|
| + Insert: 1,
|
| + Delete: -1,
|
| + Edit: 2
|
| };
|
|
|