generateOutputs method

Future<List<String>> generateOutputs(
  1. List<FileInfo> files, {
  2. void onFileCreated(
    1. String path
    )?,
})

Generate all output files

Implementation

Future<List<String>> generateOutputs(
  List<FileInfo> files, {
  void Function(String path)? onFileCreated,
}) async {
  if (files.isEmpty) {
    warn('No files to generate output from');
    return [];
  }

  final chunks = chunkFilesBySize(files);
  final outputPaths = <String>[];

  for (int i = 0; i < chunks.length; i++) {
    final partNumber = i + 1;
    final chunk = chunks[i];

    final outputPath = await _generateChunkOutput(chunk, partNumber);
    outputPaths.add(outputPath);
    onFileCreated?.call(outputPath);
  }

  return outputPaths;
}