(ranges: Range[])
| 2 | |
| 3 | /** Unifies overlapping/intersecting ranges */ |
| 4 | export default function unifyRanges(ranges: Range[]): Range[] { |
| 5 | let run = true; |
| 6 | while (run) { |
| 7 | [ranges, run] = onePass(ranges); |
| 8 | } |
| 9 | return ranges; |
| 10 | } |
| 11 | |
| 12 | function onePass(ranges: Range[]): [Range[], boolean] { |
| 13 | const result: Range[] = []; |