extractArchiveEntries function

Map<String, List<int>> extractArchiveEntries(
  1. List<int> archiveBytes,
  2. bool predicate(
    1. String path
    )
)

The contents of every entry inside a pub.dev package archive whose path satisfies predicate, keyed by entry path.

Implementation

Map<String, List<int>> extractArchiveEntries(
  List<int> archiveBytes,
  bool Function(String path) predicate,
) {
  final archive = _decodePackageArchive(archiveBytes);
  return {
    for (final file in archive.files)
      if (predicate(file.name)) file.name: file.content as List<int>,
  };
}