diff2html 3.4.37 → 3.4.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/README.md +2 -2
  2. package/bundles/css/diff2html.min.css +1 -1
  3. package/bundles/js/diff2html-ui-base.min.js +1 -1
  4. package/bundles/js/diff2html-ui-slim.min.js +1 -1
  5. package/bundles/js/diff2html-ui.min.js +1 -1
  6. package/bundles/js/diff2html.min.js +1 -1
  7. package/lib/diff-parser.js +55 -65
  8. package/lib/diff-parser.js.map +1 -1
  9. package/lib/diff2html-templates.d.ts +1 -1
  10. package/lib/diff2html-templates.d.ts.map +1 -1
  11. package/lib/diff2html-templates.js +2 -24
  12. package/lib/diff2html-templates.js.map +1 -1
  13. package/lib/diff2html.js +16 -54
  14. package/lib/diff2html.js.map +1 -1
  15. package/lib/file-list-renderer.js +15 -39
  16. package/lib/file-list-renderer.js.map +1 -1
  17. package/lib/hoganjs-utils.js +22 -59
  18. package/lib/hoganjs-utils.js.map +1 -1
  19. package/lib/line-by-line-renderer.d.ts +3 -3
  20. package/lib/line-by-line-renderer.d.ts.map +1 -1
  21. package/lib/line-by-line-renderer.js +75 -114
  22. package/lib/line-by-line-renderer.js.map +1 -1
  23. package/lib/rematch.d.ts +3 -3
  24. package/lib/rematch.d.ts.map +1 -1
  25. package/lib/rematch.js +28 -31
  26. package/lib/rematch.js.map +1 -1
  27. package/lib/render-utils.d.ts +2 -2
  28. package/lib/render-utils.d.ts.map +1 -1
  29. package/lib/render-utils.js +44 -79
  30. package/lib/render-utils.js.map +1 -1
  31. package/lib/side-by-side-renderer.d.ts +3 -3
  32. package/lib/side-by-side-renderer.d.ts.map +1 -1
  33. package/lib/side-by-side-renderer.js +83 -122
  34. package/lib/side-by-side-renderer.js.map +1 -1
  35. package/lib/src/diff-parser.d.ts +10 -0
  36. package/lib/src/diff-parser.d.ts.map +1 -0
  37. package/lib/src/diff2html-templates.d.ts +7 -0
  38. package/lib/src/diff2html-templates.d.ts.map +1 -0
  39. package/lib/src/diff2html.d.ts +23 -0
  40. package/lib/src/diff2html.d.ts.map +1 -0
  41. package/lib/src/file-list-renderer.d.ts +4 -0
  42. package/lib/src/file-list-renderer.d.ts.map +1 -0
  43. package/lib/src/hoganjs-utils.d.ts +20 -0
  44. package/lib/src/hoganjs-utils.d.ts.map +1 -0
  45. package/lib/src/line-by-line-renderer.d.ts +50 -0
  46. package/lib/src/line-by-line-renderer.d.ts.map +1 -0
  47. package/lib/src/rematch.d.ts +11 -0
  48. package/lib/src/rematch.d.ts.map +1 -0
  49. package/lib/src/render-utils.d.ts +35 -0
  50. package/lib/src/render-utils.d.ts.map +1 -0
  51. package/lib/src/side-by-side-renderer.d.ts +50 -0
  52. package/lib/src/side-by-side-renderer.d.ts.map +1 -0
  53. package/lib/src/types.d.ts +75 -0
  54. package/lib/src/types.d.ts.map +1 -0
  55. package/lib/src/ui/js/diff2html-ui-base.d.ts +50 -0
  56. package/lib/src/ui/js/diff2html-ui-base.d.ts.map +1 -0
  57. package/lib/src/ui/js/diff2html-ui-slim.d.ts +8 -0
  58. package/lib/src/ui/js/diff2html-ui-slim.d.ts.map +1 -0
  59. package/lib/src/ui/js/diff2html-ui.d.ts +8 -0
  60. package/lib/src/ui/js/diff2html-ui.d.ts.map +1 -0
  61. package/lib/src/ui/js/highlight.js-helpers.d.ts +12 -0
  62. package/lib/src/ui/js/highlight.js-helpers.d.ts.map +1 -0
  63. package/lib/src/ui/js/highlight.js-slim.d.ts +3 -0
  64. package/lib/src/ui/js/highlight.js-slim.d.ts.map +1 -0
  65. package/lib/src/utils.d.ts +4 -0
  66. package/lib/src/utils.d.ts.map +1 -0
  67. package/lib/types.d.ts +6 -6
  68. package/lib/types.d.ts.map +1 -1
  69. package/lib/types.js +1 -1
  70. package/lib/types.js.map +1 -1
  71. package/lib/ui/js/diff2html-ui-base.js +61 -75
  72. package/lib/ui/js/diff2html-ui-base.js.map +1 -1
  73. package/lib/ui/js/diff2html-ui-slim.d.ts +2 -1
  74. package/lib/ui/js/diff2html-ui-slim.d.ts.map +1 -1
  75. package/lib/ui/js/diff2html-ui-slim.js +6 -24
  76. package/lib/ui/js/diff2html-ui-slim.js.map +1 -1
  77. package/lib/ui/js/diff2html-ui.d.ts +2 -1
  78. package/lib/ui/js/diff2html-ui.d.ts.map +1 -1
  79. package/lib/ui/js/diff2html-ui.js +7 -27
  80. package/lib/ui/js/diff2html-ui.js.map +1 -1
  81. package/lib/ui/js/highlight.js-helpers.d.ts +1 -1
  82. package/lib/ui/js/highlight.js-helpers.d.ts.map +1 -1
  83. package/lib/ui/js/highlight.js-helpers.js +17 -17
  84. package/lib/ui/js/highlight.js-helpers.js.map +1 -1
  85. package/lib/ui/js/highlight.js-slim.js +53 -55
  86. package/lib/ui/js/highlight.js-slim.js.map +1 -1
  87. package/lib/utils.js +4 -4
  88. package/lib/utils.js.map +1 -1
  89. package/lib/website/main.d.ts +2 -0
  90. package/lib/website/main.d.ts.map +1 -0
  91. package/lib/website/templates/pages/demo/demo.d.ts +6 -0
  92. package/lib/website/templates/pages/demo/demo.d.ts.map +1 -0
  93. package/lib/website/templates/pages/index/index.d.ts +4 -0
  94. package/lib/website/templates/pages/index/index.d.ts.map +1 -0
  95. package/lib-esm/diff-parser.js +53 -63
  96. package/lib-esm/diff-parser.js.map +1 -1
  97. package/lib-esm/diff2html-templates.d.ts +1 -1
  98. package/lib-esm/diff2html-templates.d.ts.map +1 -1
  99. package/lib-esm/diff2html-templates.js +1 -1
  100. package/lib-esm/diff2html-templates.js.map +1 -1
  101. package/lib-esm/diff2html.js +9 -22
  102. package/lib-esm/diff2html.js.map +1 -1
  103. package/lib-esm/file-list-renderer.js +13 -15
  104. package/lib-esm/file-list-renderer.js.map +1 -1
  105. package/lib-esm/hoganjs-utils.js +19 -35
  106. package/lib-esm/hoganjs-utils.js.map +1 -1
  107. package/lib-esm/line-by-line-renderer.d.ts +3 -3
  108. package/lib-esm/line-by-line-renderer.d.ts.map +1 -1
  109. package/lib-esm/line-by-line-renderer.js +71 -89
  110. package/lib-esm/line-by-line-renderer.js.map +1 -1
  111. package/lib-esm/rematch.d.ts +3 -3
  112. package/lib-esm/rematch.d.ts.map +1 -1
  113. package/lib-esm/rematch.js +28 -31
  114. package/lib-esm/rematch.js.map +1 -1
  115. package/lib-esm/render-utils.d.ts +2 -2
  116. package/lib-esm/render-utils.d.ts.map +1 -1
  117. package/lib-esm/render-utils.js +41 -54
  118. package/lib-esm/render-utils.js.map +1 -1
  119. package/lib-esm/side-by-side-renderer.d.ts +3 -3
  120. package/lib-esm/side-by-side-renderer.d.ts.map +1 -1
  121. package/lib-esm/side-by-side-renderer.js +79 -97
  122. package/lib-esm/side-by-side-renderer.js.map +1 -1
  123. package/lib-esm/types.d.ts +6 -6
  124. package/lib-esm/types.d.ts.map +1 -1
  125. package/lib-esm/types.js +3 -3
  126. package/lib-esm/types.js.map +1 -1
  127. package/lib-esm/ui/js/diff2html-ui-base.js +59 -74
  128. package/lib-esm/ui/js/diff2html-ui-base.js.map +1 -1
  129. package/lib-esm/ui/js/diff2html-ui-slim.d.ts +2 -1
  130. package/lib-esm/ui/js/diff2html-ui-slim.d.ts.map +1 -1
  131. package/lib-esm/ui/js/diff2html-ui-slim.js +4 -23
  132. package/lib-esm/ui/js/diff2html-ui-slim.js.map +1 -1
  133. package/lib-esm/ui/js/diff2html-ui.d.ts +2 -1
  134. package/lib-esm/ui/js/diff2html-ui.d.ts.map +1 -1
  135. package/lib-esm/ui/js/diff2html-ui.js +4 -23
  136. package/lib-esm/ui/js/diff2html-ui.js.map +1 -1
  137. package/lib-esm/ui/js/highlight.js-helpers.d.ts +1 -1
  138. package/lib-esm/ui/js/highlight.js-helpers.d.ts.map +1 -1
  139. package/lib-esm/ui/js/highlight.js-helpers.js +17 -17
  140. package/lib-esm/ui/js/highlight.js-helpers.js.map +1 -1
  141. package/lib-esm/ui/js/highlight.js-slim.js +1 -1
  142. package/lib-esm/ui/js/highlight.js-slim.js.map +1 -1
  143. package/lib-esm/utils.js +4 -4
  144. package/lib-esm/utils.js.map +1 -1
  145. package/package.json +40 -40
@@ -1,77 +1,42 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- var desc = Object.getOwnPropertyDescriptor(m, k);
16
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
- desc = { enumerable: true, get: function() { return m[k]; } };
18
- }
19
- Object.defineProperty(o, k2, desc);
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
- Object.defineProperty(o, "default", { enumerable: true, value: v });
26
- }) : function(o, v) {
27
- o["default"] = v;
28
- });
29
- var __importStar = (this && this.__importStar) || function (mod) {
30
- if (mod && mod.__esModule) return mod;
31
- var result = {};
32
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
- __setModuleDefault(result, mod);
34
- return result;
35
- };
36
2
  Object.defineProperty(exports, "__esModule", { value: true });
37
3
  exports.defaultLineByLineRendererConfig = void 0;
38
- var Rematch = __importStar(require("./rematch"));
39
- var renderUtils = __importStar(require("./render-utils"));
40
- var types_1 = require("./types");
41
- exports.defaultLineByLineRendererConfig = __assign(__assign({}, renderUtils.defaultRenderConfig), { renderNothingWhenEmpty: false, matchingMaxComparisons: 2500, maxLineSizeInBlockForComparison: 200 });
42
- var genericTemplatesPath = 'generic';
43
- var baseTemplatesPath = 'line-by-line';
44
- var iconsBaseTemplatesPath = 'icon';
45
- var tagsBaseTemplatesPath = 'tag';
46
- var LineByLineRenderer = (function () {
47
- function LineByLineRenderer(hoganUtils, config) {
48
- if (config === void 0) { config = {}; }
4
+ const tslib_1 = require("tslib");
5
+ const Rematch = tslib_1.__importStar(require("./rematch"));
6
+ const renderUtils = tslib_1.__importStar(require("./render-utils"));
7
+ const types_1 = require("./types");
8
+ exports.defaultLineByLineRendererConfig = Object.assign(Object.assign({}, renderUtils.defaultRenderConfig), { renderNothingWhenEmpty: false, matchingMaxComparisons: 2500, maxLineSizeInBlockForComparison: 200 });
9
+ const genericTemplatesPath = 'generic';
10
+ const baseTemplatesPath = 'line-by-line';
11
+ const iconsBaseTemplatesPath = 'icon';
12
+ const tagsBaseTemplatesPath = 'tag';
13
+ class LineByLineRenderer {
14
+ constructor(hoganUtils, config = {}) {
49
15
  this.hoganUtils = hoganUtils;
50
- this.config = __assign(__assign({}, exports.defaultLineByLineRendererConfig), config);
16
+ this.config = Object.assign(Object.assign({}, exports.defaultLineByLineRendererConfig), config);
51
17
  }
52
- LineByLineRenderer.prototype.render = function (diffFiles) {
53
- var _this = this;
54
- var diffsHtml = diffFiles
55
- .map(function (file) {
56
- var diffs;
18
+ render(diffFiles) {
19
+ const diffsHtml = diffFiles
20
+ .map(file => {
21
+ let diffs;
57
22
  if (file.blocks.length) {
58
- diffs = _this.generateFileHtml(file);
23
+ diffs = this.generateFileHtml(file);
59
24
  }
60
25
  else {
61
- diffs = _this.generateEmptyDiff();
26
+ diffs = this.generateEmptyDiff();
62
27
  }
63
- return _this.makeFileDiffHtml(file, diffs);
28
+ return this.makeFileDiffHtml(file, diffs);
64
29
  })
65
30
  .join('\n');
66
31
  return this.hoganUtils.render(genericTemplatesPath, 'wrapper', { content: diffsHtml });
67
- };
68
- LineByLineRenderer.prototype.makeFileDiffHtml = function (file, diffs) {
32
+ }
33
+ makeFileDiffHtml(file, diffs) {
69
34
  if (this.config.renderNothingWhenEmpty && Array.isArray(file.blocks) && file.blocks.length === 0)
70
35
  return '';
71
- var fileDiffTemplate = this.hoganUtils.template(baseTemplatesPath, 'file-diff');
72
- var filePathTemplate = this.hoganUtils.template(genericTemplatesPath, 'file-path');
73
- var fileIconTemplate = this.hoganUtils.template(iconsBaseTemplatesPath, 'file');
74
- var fileTagTemplate = this.hoganUtils.template(tagsBaseTemplatesPath, renderUtils.getFileIcon(file));
36
+ const fileDiffTemplate = this.hoganUtils.template(baseTemplatesPath, 'file-diff');
37
+ const filePathTemplate = this.hoganUtils.template(genericTemplatesPath, 'file-path');
38
+ const fileIconTemplate = this.hoganUtils.template(iconsBaseTemplatesPath, 'file');
39
+ const fileTagTemplate = this.hoganUtils.template(tagsBaseTemplatesPath, renderUtils.getFileIcon(file));
75
40
  return fileDiffTemplate.render({
76
41
  file: file,
77
42
  fileHtmlId: renderUtils.getHtmlId(file),
@@ -83,38 +48,35 @@ var LineByLineRenderer = (function () {
83
48
  fileTag: fileTagTemplate,
84
49
  }),
85
50
  });
86
- };
87
- LineByLineRenderer.prototype.generateEmptyDiff = function () {
51
+ }
52
+ generateEmptyDiff() {
88
53
  return this.hoganUtils.render(genericTemplatesPath, 'empty-diff', {
89
54
  contentClass: 'd2h-code-line',
90
55
  CSSLineClass: renderUtils.CSSLineClass,
91
56
  });
92
- };
93
- LineByLineRenderer.prototype.generateFileHtml = function (file) {
94
- var _this = this;
95
- var matcher = Rematch.newMatcherFn(Rematch.newDistanceFn(function (e) { return renderUtils.deconstructLine(e.content, file.isCombined).content; }));
57
+ }
58
+ generateFileHtml(file) {
59
+ const matcher = Rematch.newMatcherFn(Rematch.newDistanceFn((e) => renderUtils.deconstructLine(e.content, file.isCombined).content));
96
60
  return file.blocks
97
- .map(function (block) {
98
- var lines = _this.hoganUtils.render(genericTemplatesPath, 'block-header', {
61
+ .map(block => {
62
+ let lines = this.hoganUtils.render(genericTemplatesPath, 'block-header', {
99
63
  CSSLineClass: renderUtils.CSSLineClass,
100
64
  blockHeader: file.isTooBig ? block.header : renderUtils.escapeForHtml(block.header),
101
65
  lineClass: 'd2h-code-linenumber',
102
66
  contentClass: 'd2h-code-line',
103
67
  });
104
- _this.applyLineGroupping(block).forEach(function (_a) {
105
- var contextLines = _a[0], oldLines = _a[1], newLines = _a[2];
68
+ this.applyLineGroupping(block).forEach(([contextLines, oldLines, newLines]) => {
106
69
  if (oldLines.length && newLines.length && !contextLines.length) {
107
- _this.applyRematchMatching(oldLines, newLines, matcher).map(function (_a) {
108
- var oldLines = _a[0], newLines = _a[1];
109
- var _b = _this.processChangedLines(file, file.isCombined, oldLines, newLines), left = _b.left, right = _b.right;
70
+ this.applyRematchMatching(oldLines, newLines, matcher).map(([oldLines, newLines]) => {
71
+ const { left, right } = this.processChangedLines(file, file.isCombined, oldLines, newLines);
110
72
  lines += left;
111
73
  lines += right;
112
74
  });
113
75
  }
114
76
  else if (contextLines.length) {
115
- contextLines.forEach(function (line) {
116
- var _a = renderUtils.deconstructLine(line.content, file.isCombined), prefix = _a.prefix, content = _a.content;
117
- lines += _this.generateSingleLineHtml(file, {
77
+ contextLines.forEach(line => {
78
+ const { prefix, content } = renderUtils.deconstructLine(line.content, file.isCombined);
79
+ lines += this.generateSingleLineHtml(file, {
118
80
  type: renderUtils.CSSLineClass.CONTEXT,
119
81
  prefix: prefix,
120
82
  content: content,
@@ -124,7 +86,7 @@ var LineByLineRenderer = (function () {
124
86
  });
125
87
  }
126
88
  else if (oldLines.length || newLines.length) {
127
- var _b = _this.processChangedLines(file, file.isCombined, oldLines, newLines), left = _b.left, right = _b.right;
89
+ const { left, right } = this.processChangedLines(file, file.isCombined, oldLines, newLines);
128
90
  lines += left;
129
91
  lines += right;
130
92
  }
@@ -135,13 +97,13 @@ var LineByLineRenderer = (function () {
135
97
  return lines;
136
98
  })
137
99
  .join('\n');
138
- };
139
- LineByLineRenderer.prototype.applyLineGroupping = function (block) {
140
- var blockLinesGroups = [];
141
- var oldLines = [];
142
- var newLines = [];
143
- for (var i = 0; i < block.lines.length; i++) {
144
- var diffLine = block.lines[i];
100
+ }
101
+ applyLineGroupping(block) {
102
+ const blockLinesGroups = [];
103
+ let oldLines = [];
104
+ let newLines = [];
105
+ for (let i = 0; i < block.lines.length; i++) {
106
+ const diffLine = block.lines[i];
145
107
  if ((diffLine.type !== types_1.LineType.INSERT && newLines.length) ||
146
108
  (diffLine.type === types_1.LineType.CONTEXT && oldLines.length > 0)) {
147
109
  blockLinesGroups.push([[], oldLines, newLines]);
@@ -167,59 +129,59 @@ var LineByLineRenderer = (function () {
167
129
  newLines = [];
168
130
  }
169
131
  return blockLinesGroups;
170
- };
171
- LineByLineRenderer.prototype.applyRematchMatching = function (oldLines, newLines, matcher) {
172
- var comparisons = oldLines.length * newLines.length;
173
- var maxLineSizeInBlock = Math.max.apply(null, [0].concat(oldLines.concat(newLines).map(function (elem) { return elem.content.length; })));
174
- var doMatching = comparisons < this.config.matchingMaxComparisons &&
132
+ }
133
+ applyRematchMatching(oldLines, newLines, matcher) {
134
+ const comparisons = oldLines.length * newLines.length;
135
+ const maxLineSizeInBlock = Math.max.apply(null, [0].concat(oldLines.concat(newLines).map(elem => elem.content.length)));
136
+ const doMatching = comparisons < this.config.matchingMaxComparisons &&
175
137
  maxLineSizeInBlock < this.config.maxLineSizeInBlockForComparison &&
176
138
  (this.config.matching === 'lines' || this.config.matching === 'words');
177
139
  return doMatching ? matcher(oldLines, newLines) : [[oldLines, newLines]];
178
- };
179
- LineByLineRenderer.prototype.processChangedLines = function (file, isCombined, oldLines, newLines) {
180
- var fileHtml = {
140
+ }
141
+ processChangedLines(file, isCombined, oldLines, newLines) {
142
+ const fileHtml = {
181
143
  right: '',
182
144
  left: '',
183
145
  };
184
- var maxLinesNumber = Math.max(oldLines.length, newLines.length);
185
- for (var i = 0; i < maxLinesNumber; i++) {
186
- var oldLine = oldLines[i];
187
- var newLine = newLines[i];
188
- var diff = oldLine !== undefined && newLine !== undefined
146
+ const maxLinesNumber = Math.max(oldLines.length, newLines.length);
147
+ for (let i = 0; i < maxLinesNumber; i++) {
148
+ const oldLine = oldLines[i];
149
+ const newLine = newLines[i];
150
+ const diff = oldLine !== undefined && newLine !== undefined
189
151
  ? renderUtils.diffHighlight(oldLine.content, newLine.content, isCombined, this.config)
190
152
  : undefined;
191
- var preparedOldLine = oldLine !== undefined && oldLine.oldNumber !== undefined
192
- ? __assign(__assign({}, (diff !== undefined
153
+ const preparedOldLine = oldLine !== undefined && oldLine.oldNumber !== undefined
154
+ ? Object.assign(Object.assign({}, (diff !== undefined
193
155
  ? {
194
156
  prefix: diff.oldLine.prefix,
195
157
  content: diff.oldLine.content,
196
158
  type: renderUtils.CSSLineClass.DELETE_CHANGES,
197
159
  }
198
- : __assign(__assign({}, renderUtils.deconstructLine(oldLine.content, isCombined)), { type: renderUtils.toCSSClass(oldLine.type) }))), { oldNumber: oldLine.oldNumber, newNumber: oldLine.newNumber }) : undefined;
199
- var preparedNewLine = newLine !== undefined && newLine.newNumber !== undefined
200
- ? __assign(__assign({}, (diff !== undefined
160
+ : Object.assign(Object.assign({}, renderUtils.deconstructLine(oldLine.content, isCombined)), { type: renderUtils.toCSSClass(oldLine.type) }))), { oldNumber: oldLine.oldNumber, newNumber: oldLine.newNumber }) : undefined;
161
+ const preparedNewLine = newLine !== undefined && newLine.newNumber !== undefined
162
+ ? Object.assign(Object.assign({}, (diff !== undefined
201
163
  ? {
202
164
  prefix: diff.newLine.prefix,
203
165
  content: diff.newLine.content,
204
166
  type: renderUtils.CSSLineClass.INSERT_CHANGES,
205
167
  }
206
- : __assign(__assign({}, renderUtils.deconstructLine(newLine.content, isCombined)), { type: renderUtils.toCSSClass(newLine.type) }))), { oldNumber: newLine.oldNumber, newNumber: newLine.newNumber }) : undefined;
207
- var _a = this.generateLineHtml(file, preparedOldLine, preparedNewLine), left = _a.left, right = _a.right;
168
+ : Object.assign(Object.assign({}, renderUtils.deconstructLine(newLine.content, isCombined)), { type: renderUtils.toCSSClass(newLine.type) }))), { oldNumber: newLine.oldNumber, newNumber: newLine.newNumber }) : undefined;
169
+ const { left, right } = this.generateLineHtml(file, preparedOldLine, preparedNewLine);
208
170
  fileHtml.left += left;
209
171
  fileHtml.right += right;
210
172
  }
211
173
  return fileHtml;
212
- };
213
- LineByLineRenderer.prototype.generateLineHtml = function (file, oldLine, newLine) {
174
+ }
175
+ generateLineHtml(file, oldLine, newLine) {
214
176
  return {
215
177
  left: this.generateSingleLineHtml(file, oldLine),
216
178
  right: this.generateSingleLineHtml(file, newLine),
217
179
  };
218
- };
219
- LineByLineRenderer.prototype.generateSingleLineHtml = function (file, line) {
180
+ }
181
+ generateSingleLineHtml(file, line) {
220
182
  if (line === undefined)
221
183
  return '';
222
- var lineNumberHtml = this.hoganUtils.render(baseTemplatesPath, 'numbers', {
184
+ const lineNumberHtml = this.hoganUtils.render(baseTemplatesPath, 'numbers', {
223
185
  oldNumber: line.oldNumber || '',
224
186
  newNumber: line.newNumber || '',
225
187
  });
@@ -230,11 +192,10 @@ var LineByLineRenderer = (function () {
230
192
  prefix: line.prefix === ' ' ? '&nbsp;' : line.prefix,
231
193
  content: line.content,
232
194
  lineNumber: lineNumberHtml,
233
- line: line,
234
- file: file,
195
+ line,
196
+ file,
235
197
  });
236
- };
237
- return LineByLineRenderer;
238
- }());
198
+ }
199
+ }
239
200
  exports.default = LineByLineRenderer;
240
201
  //# sourceMappingURL=line-by-line-renderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"line-by-line-renderer.js","sourceRoot":"","sources":["../src/line-by-line-renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"line-by-line-renderer.js","sourceRoot":"","sources":["../src/line-by-line-renderer.ts"],"names":[],"mappings":"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"}
package/lib/rematch.d.ts CHANGED
@@ -1,11 +1,11 @@
1
- export declare type BestMatch = {
1
+ export type BestMatch = {
2
2
  indexA: number;
3
3
  indexB: number;
4
4
  score: number;
5
5
  };
6
6
  export declare function levenshtein(a: string, b: string): number;
7
- export declare type DistanceFn<T> = (x: T, y: T) => number;
7
+ export type DistanceFn<T> = (x: T, y: T) => number;
8
8
  export declare function newDistanceFn<T>(str: (value: T) => string): DistanceFn<T>;
9
- export declare type MatcherFn<T> = (a: T[], b: T[], level?: number, cache?: Map<string, number>) => T[][][];
9
+ export type MatcherFn<T> = (a: T[], b: T[], level?: number, cache?: Map<string, number>) => T[][][];
10
10
  export declare function newMatcherFn<T>(distance: (x: T, y: T) => number): MatcherFn<T>;
11
11
  //# sourceMappingURL=rematch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rematch.d.ts","sourceRoot":"","sources":["../src/rematch.ts"],"names":[],"mappings":"AAKA,oBAAY,SAAS,GAAG;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAcF,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAwCxD;AAED,oBAAY,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC;AAEnD,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAOzE;AAED,oBAAY,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;AAEpG,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAwD9E"}
1
+ {"version":3,"file":"rematch.d.ts","sourceRoot":"","sources":["../src/rematch.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAcF,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAwCxD;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC;AAEnD,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAOzE;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC;AAEpG,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAwD9E"}
package/lib/rematch.js CHANGED
@@ -8,12 +8,12 @@ function levenshtein(a, b) {
8
8
  if (b.length === 0) {
9
9
  return a.length;
10
10
  }
11
- var matrix = [];
12
- var i;
11
+ const matrix = [];
12
+ let i;
13
13
  for (i = 0; i <= b.length; i++) {
14
14
  matrix[i] = [i];
15
15
  }
16
- var j;
16
+ let j;
17
17
  for (j = 0; j <= a.length; j++) {
18
18
  matrix[0][j] = j;
19
19
  }
@@ -31,23 +31,22 @@ function levenshtein(a, b) {
31
31
  }
32
32
  exports.levenshtein = levenshtein;
33
33
  function newDistanceFn(str) {
34
- return function (x, y) {
35
- var xValue = str(x).trim();
36
- var yValue = str(y).trim();
37
- var lev = levenshtein(xValue, yValue);
34
+ return (x, y) => {
35
+ const xValue = str(x).trim();
36
+ const yValue = str(y).trim();
37
+ const lev = levenshtein(xValue, yValue);
38
38
  return lev / (xValue.length + yValue.length);
39
39
  };
40
40
  }
41
41
  exports.newDistanceFn = newDistanceFn;
42
42
  function newMatcherFn(distance) {
43
- function findBestMatch(a, b, cache) {
44
- if (cache === void 0) { cache = new Map(); }
45
- var bestMatchDist = Infinity;
46
- var bestMatch;
47
- for (var i = 0; i < a.length; ++i) {
48
- for (var j = 0; j < b.length; ++j) {
49
- var cacheKey = JSON.stringify([a[i], b[j]]);
50
- var md = void 0;
43
+ function findBestMatch(a, b, cache = new Map()) {
44
+ let bestMatchDist = Infinity;
45
+ let bestMatch;
46
+ for (let i = 0; i < a.length; ++i) {
47
+ for (let j = 0; j < b.length; ++j) {
48
+ const cacheKey = JSON.stringify([a[i], b[j]]);
49
+ let md;
51
50
  if (!(cache.has(cacheKey) && (md = cache.get(cacheKey)))) {
52
51
  md = distance(a[i], b[j]);
53
52
  cache.set(cacheKey, md);
@@ -60,25 +59,23 @@ function newMatcherFn(distance) {
60
59
  }
61
60
  return bestMatch;
62
61
  }
63
- function group(a, b, level, cache) {
64
- if (level === void 0) { level = 0; }
65
- if (cache === void 0) { cache = new Map(); }
66
- var bm = findBestMatch(a, b, cache);
62
+ function group(a, b, level = 0, cache = new Map()) {
63
+ const bm = findBestMatch(a, b, cache);
67
64
  if (!bm || a.length + b.length < 3) {
68
65
  return [[a, b]];
69
66
  }
70
- var a1 = a.slice(0, bm.indexA);
71
- var b1 = b.slice(0, bm.indexB);
72
- var aMatch = [a[bm.indexA]];
73
- var bMatch = [b[bm.indexB]];
74
- var tailA = bm.indexA + 1;
75
- var tailB = bm.indexB + 1;
76
- var a2 = a.slice(tailA);
77
- var b2 = b.slice(tailB);
78
- var group1 = group(a1, b1, level + 1, cache);
79
- var groupMatch = group(aMatch, bMatch, level + 1, cache);
80
- var group2 = group(a2, b2, level + 1, cache);
81
- var result = groupMatch;
67
+ const a1 = a.slice(0, bm.indexA);
68
+ const b1 = b.slice(0, bm.indexB);
69
+ const aMatch = [a[bm.indexA]];
70
+ const bMatch = [b[bm.indexB]];
71
+ const tailA = bm.indexA + 1;
72
+ const tailB = bm.indexB + 1;
73
+ const a2 = a.slice(tailA);
74
+ const b2 = b.slice(tailB);
75
+ const group1 = group(a1, b1, level + 1, cache);
76
+ const groupMatch = group(aMatch, bMatch, level + 1, cache);
77
+ const group2 = group(a2, b2, level + 1, cache);
78
+ let result = groupMatch;
82
79
  if (bm.indexA > 0 || bm.indexB > 0) {
83
80
  result = group1.concat(result);
84
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rematch.js","sourceRoot":"","sources":["../src/rematch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rematch.js","sourceRoot":"","sources":["../src/rematch.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { LineMatchingType, DiffStyleType, LineType, DiffLineParts, DiffFile, DiffFileName } from './types';
2
- export declare type CSSLineClass = 'd2h-ins' | 'd2h-del' | 'd2h-cntx' | 'd2h-info' | 'd2h-ins d2h-change' | 'd2h-del d2h-change';
2
+ export type CSSLineClass = 'd2h-ins' | 'd2h-del' | 'd2h-cntx' | 'd2h-info' | 'd2h-ins d2h-change' | 'd2h-del d2h-change';
3
3
  export declare const CSSLineClass: {
4
4
  [_: string]: CSSLineClass;
5
5
  };
6
- export declare type HighlightedLines = {
6
+ export type HighlightedLines = {
7
7
  oldLine: {
8
8
  prefix: string;
9
9
  content: string;
@@ -1 +1 @@
1
- {"version":3,"file":"render-utils.d.ts","sourceRoot":"","sources":["../src/render-utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE3G,oBAAY,YAAY,GACpB,SAAS,GACT,SAAS,GACT,UAAU,GACV,UAAU,GACV,oBAAoB,GACpB,oBAAoB,CAAC;AAEzB,eAAO,MAAM,YAAY,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY,CAAA;CAOrD,CAAC;AAEF,oBAAY,gBAAgB,GAAG;IAC7B,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B;AAED,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC;AAqBF,wBAAgB,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,YAAY,CAS3D;AAaD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CASjD;AAKD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,UAAO,GAAG,aAAa,CAM/F;AAaD,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CA4DvD;AAKD,wBAAgB,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAEpD;AAKD,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAiBlD;AAKD,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,OAAO,EACnB,MAAM,GAAE,YAAiB,GACxB,gBAAgB,CA4DlB"}
1
+ {"version":3,"file":"render-utils.d.ts","sourceRoot":"","sources":["../src/render-utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE3G,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,SAAS,GACT,UAAU,GACV,UAAU,GACV,oBAAoB,GACpB,oBAAoB,CAAC;AAEzB,eAAO,MAAM,YAAY,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY,CAAA;CAOrD,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B;AAED,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC;AAqBF,wBAAgB,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,YAAY,CAS3D;AAaD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CASjD;AAKD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,UAAO,GAAG,aAAa,CAM/F;AAaD,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CA4DvD;AAKD,wBAAgB,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAEpD;AAKD,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAiBlD;AAKD,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,OAAO,EACnB,MAAM,GAAE,YAAiB,GACxB,gBAAgB,CA4DlB"}