Example #1
0
        private IncludeState CreateIncludeState(string bundleFileDirectory, Include include)
        {
            var includeFileFullPath = new FileInfo(EnsureFileRooted(bundleFileDirectory, include.File));
            var outputFile          = new FileInfo(EnsureFileRooted(bundleFileDirectory, include.GetOutputFile()));

            return(new IncludeState()
            {
                File = includeFileFullPath,
                Include = include,
                Imports = Include.GetImportFiles(includeFileFullPath.FullName)
                          .Select(s => EnsureFileRooted(includeFileFullPath.Directory.FullName, s))
                          .Distinct(StringComparer.InvariantCultureIgnoreCase)
                          .ToList(),
                OutputFile = outputFile,
                // IF the include and output files are the same
                // THEN the output is already transformed
                Transformed = (includeFileFullPath == outputFile),
            });
        }