(outputPaths: readonly string[])
| 155 | } |
| 156 | |
| 157 | export function commonOutputDirectory(outputPaths: readonly string[]): string { |
| 158 | const firstPath = outputPaths[0]; |
| 159 | if (!firstPath) return resolve("renders"); |
| 160 | |
| 161 | let common = dirname(firstPath); |
| 162 | for (const outputPath of outputPaths.slice(1)) { |
| 163 | const dir = dirname(outputPath); |
| 164 | while (!isSameOrChildPath(dir, common)) { |
| 165 | const parent = dirname(common); |
| 166 | if (parent === common) return common; |
| 167 | common = parent; |
| 168 | } |
| 169 | } |
| 170 | return common; |
| 171 | } |
| 172 | |
| 173 | function checkOutputCollisions(rows: readonly PreparedBatchRow[], manifestPath: string): void { |
| 174 | const seen = new Map<string, number>(); |
no test coverage detected