private async static Task MinifyFile(IContentType contentType, string sourcePath, string minPath, IMinifierSettings settings, bool compilerNeedsSourceMap = true) { IFileMinifier minifier = Mef.GetImport <IFileMinifier>(contentType); bool changed = await minifier.MinifyFile(sourcePath, minPath, compilerNeedsSourceMap); if (settings.GzipMinifiedFiles && (changed || !File.Exists(minPath + ".gzip"))) { FileHelpers.GzipFile(minPath); } }
private static void MinifyFile(IContentType contentType, string sourcePath, string minPath, IMinifierSettings settings) { IFileMinifier minifier = Mef.GetImport <IFileMinifier>(contentType); bool changed = minifier.MinifyFile(sourcePath, minPath); if (settings.GzipMinifiedFiles && (changed || !File.Exists(minPath + ".gzip"))) { FileHelpers.GzipFile(minPath); } }
public override void Invoke() { var element = this.HtmlSmartTag.Element; var textBuffer = this.HtmlSmartTag.TextBuffer; ITextRange range = element.InnerRange; string text = textBuffer.CurrentSnapshot.GetText(range.Start, range.Length); IFileMinifier minifier = element.IsScriptBlock() ? (IFileMinifier) new JavaScriptFileMinifier() : new CssFileMinifier(); string result = minifier.MinifyString(text); using (WebEssentialsPackage.UndoContext((this.DisplayText))) textBuffer.Replace(range.ToSpan(), result); }
public override void Invoke(CancellationToken cancellationToken) { string text = Element.GetText(Element.InnerRange); IFileMinifier minifier = Element.IsScriptBlock() ? (IFileMinifier) new JavaScriptFileMinifier() : new CssFileMinifier(); string result = minifier.MinifyString(text); using (WebEssentialsPackage.UndoContext((this.DisplayText))) { using (ITextEdit edit = TextBuffer.CreateEdit()) { edit.Replace(Element.InnerRange.ToSpan(), result); edit.Apply(); } } }