private static void ProcessTransformFiles(PackageBuilder builder, IEnumerable<IPackageFile> transformFiles)
{
// Group transform by target file
var transformGroups = transformFiles.GroupBy(file => RemoveExtension(file.Path), StringComparer.OrdinalIgnoreCase);
var fileLookup = builder.Files.ToDictionary(file => file.Path, StringComparer.OrdinalIgnoreCase);
foreach (var tranfromGroup in transformGroups)
{
IPackageFile file;
if (fileLookup.TryGetValue(tranfromGroup.Key, out file))
{
// Replace the original file with a file that removes the transforms
builder.Files.Remove(file);
builder.Files.Add(new ReverseTransformFormFile(file, tranfromGroup));
}
}
}