| 321 | } |
| 322 | |
| 323 | export function insertSkipBlocks(hunks: DiffHunk[]): (DiffHunk | DiffSkipBlock)[] { |
| 324 | const result: (DiffHunk | DiffSkipBlock)[] = [] |
| 325 | let lastHunkLine = 1 |
| 326 | |
| 327 | for (const hunk of hunks) { |
| 328 | const distanceToLastHunk = hunk.oldStart - lastHunkLine |
| 329 | |
| 330 | if (distanceToLastHunk > 0) { |
| 331 | result.push({ |
| 332 | type: 'skip', |
| 333 | count: distanceToLastHunk, |
| 334 | content: `${distanceToLastHunk} lines hidden`, |
| 335 | }) |
| 336 | } |
| 337 | |
| 338 | lastHunkLine = Math.max(hunk.oldStart + hunk.oldLines, lastHunkLine) |
| 339 | result.push(hunk) |
| 340 | } |
| 341 | |
| 342 | return result |
| 343 | } |
| 344 | |
| 345 | export function createDiff( |
| 346 | oldContent: string, |