public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { var directive = (ImportDirective)item; if (!directive.IsValid || context == null) return ItemCheckResult.Continue; if (directive.Keyword.Text == "import-once") { ICssError tag = new SimpleErrorTag(directive.Keyword, Resources.LessImportOnceDeprecated); context.AddError(tag); return ItemCheckResult.CancelCurrentItem; } return ItemCheckResult.Continue; }
public void FilterErrorList(IList <ICssError> errors, ICssCheckerContext context) { for (int i = errors.Count - 1; i > -1; i--) { ICssError error = errors[i]; if (error.Item.IsValid) { AtDirective atDir = error.Item.FindType <AtDirective>(); if (atDir != null && atDir.IsValid && atDir.Keyword.Text == "-ms-keyframes") { errors.RemoveAt(i); ICssError tag = new SimpleErrorTag(error.Item, error.Text + _message, CssErrorFlags.TaskListError | CssErrorFlags.UnderlineRed); errors.Insert(i, tag); } } } }
public void FilterErrorList(IList<ICssError> errors, ICssCheckerContext context) { for (int i = errors.Count - 1; i > -1; i--) { ICssError error = errors[i]; if (error.Item.IsValid) { AtDirective atDir = error.Item.FindType<AtDirective>(); if (atDir != null && atDir.IsValid && atDir.Keyword.Text == "-ms-keyframes") { errors.RemoveAt(i); ICssError tag = new SimpleErrorTag(error.Item, error.Text + _message, CssErrorFlags.TaskListError | CssErrorFlags.UnderlineRed); errors.Insert(i, tag); } } } }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { ItemName itemName = (ItemName)item; if (!itemName.IsValid || context == null || (item.PreviousSibling != null && item.PreviousSibling.Text == "[")) return ItemCheckResult.Continue; if (!_cache.Contains(itemName.Text.ToLowerInvariant()) && itemName.Text.IndexOf('-') == -1) { string error = "Validation: \"" + itemName.Text + "\" isn't a valid HTML tag."; ICssError tag = new SimpleErrorTag(itemName, error); context.AddError(tag); return ItemCheckResult.CancelCurrentItem; } return ItemCheckResult.Continue; }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { SimpleSelector sel = (SimpleSelector)item; if (!WESettings.GetBoolean(WESettings.Keys.ValidateStarSelector) || !sel.IsValid || context == null) return ItemCheckResult.Continue; if (sel.Text == "*") { string errorMessage = string.Format(CultureInfo.InvariantCulture, Resources.PerformanceDontUseStarSelector); SimpleErrorTag tag = new SimpleErrorTag(sel, errorMessage); context.AddError(tag); } return ItemCheckResult.Continue; }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { Declaration dec = (Declaration)item; if (context == null || !dec.IsValid) return ItemCheckResult.Continue; string text = dec.PropertyName.Text; if (text.StartsWith("-ms-transition", StringComparison.Ordinal) || text.StartsWith("-ms-animation", StringComparison.Ordinal)) { string error = string.Format(_message, text); ICssError tag = new SimpleErrorTag(dec.PropertyName, error); context.AddError(tag); return ItemCheckResult.CancelCurrentItem; } return ItemCheckResult.Continue; }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { AtDirective directive = (AtDirective)item; if (!directive.IsValid || directive.IsVendorSpecific() || context == null) return ItemCheckResult.Continue; ICssSchemaInstance schema = CssEditorChecker.GetSchemaForItem(context, item); var missingEntries = directive.GetMissingVendorSpecifics(schema); if (missingEntries.Any()) { string error = string.Format(CultureInfo.InvariantCulture, Resources.BestPracticeAddMissingVendorSpecificDirective, directive.Keyword.Text, string.Join(", ", missingEntries)); ICssError tag = new SimpleErrorTag(directive.Keyword, error); context.AddError(tag); return ItemCheckResult.CancelCurrentItem; } return ItemCheckResult.Continue; }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { SimpleSelector sel = (SimpleSelector)item; if (!WESettings.GetBoolean(WESettings.Keys.ValidateStarSelector) || !sel.IsValid || context == null) { return(ItemCheckResult.Continue); } if (sel.Text == "*") { string errorMessage = string.Format(CultureInfo.InvariantCulture, Resources.PerformanceDontUseStarSelector); SimpleErrorTag tag = new SimpleErrorTag(sel, errorMessage); context.AddError(tag); } return(ItemCheckResult.Continue); }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { Selector sel = (Selector)item; if (!WESettings.GetBoolean(WESettings.Keys.ValidateOverQualifiedSelector) || !sel.IsValid || context == null) return ItemCheckResult.Continue; var idPart = sel.SimpleSelectors.Skip(1).FirstOrDefault(s => s.Text.StartsWith("#", StringComparison.Ordinal)); if (idPart != null) { string remove = sel.Text.Substring(0, idPart.Start - sel.Start).TrimEnd(); // Remove the whitespace before the final part string errorMessage = string.Format(CultureInfo.InvariantCulture, Resources.PerformanceDontOverQualifySelectors, idPart.Text, remove); SimpleErrorTag tag = new SimpleErrorTag(sel, errorMessage, remove.Length); context.AddError(tag); } return ItemCheckResult.Continue; }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { ItemName itemName = (ItemName)item; if (!itemName.IsValid || context == null || (item.PreviousSibling != null && item.PreviousSibling.Text == "[")) { return(ItemCheckResult.Continue); } if (!_cache.Contains(itemName.Text.ToLowerInvariant()) && itemName.Text.IndexOf('-') == -1) { string error = "Validation: \"" + itemName.Text + "\" isn't a valid HTML tag."; ICssError tag = new SimpleErrorTag(itemName, error); context.AddError(tag); return(ItemCheckResult.CancelCurrentItem); } return(ItemCheckResult.Continue); }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { Declaration dec = (Declaration)item; if (context == null || !dec.IsValid) { return(ItemCheckResult.Continue); } string text = dec.PropertyName.Text; if (text.StartsWith("-ms-transition", StringComparison.Ordinal) || text.StartsWith("-ms-animation", StringComparison.Ordinal)) { string error = string.Format(_message, text); ICssError tag = new SimpleErrorTag(dec.PropertyName, error); context.AddError(tag); return(ItemCheckResult.CancelCurrentItem); } return(ItemCheckResult.Continue); }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { Declaration dec = (Declaration)item; if (!dec.IsValid || dec.IsVendorSpecific() || IgnoreProperty(dec) || context == null) return ItemCheckResult.Continue; ICssSchemaInstance schema = CssEditorChecker.GetSchemaForItem(context, item); var missingEntries = dec.GetMissingVendorSpecifics(schema); if (missingEntries.ToArray().Length > 0) { var missingPrefixes = missingEntries.Select(e => e.Substring(0, e.IndexOf('-', 1) + 1)); string error = string.Format(CultureInfo.InvariantCulture, Resources.BestPracticeAddMissingVendorSpecific, dec.PropertyName.Text, string.Join(", ", missingPrefixes)); ICssError tag = new SimpleErrorTag(dec.PropertyName, error); context.AddError(tag); return ItemCheckResult.CancelCurrentItem; } return ItemCheckResult.Continue; }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { Selector sel = (Selector)item; if (!WESettings.GetBoolean(WESettings.Keys.ValidateOverQualifiedSelector) || !sel.IsValid || context == null) return ItemCheckResult.Continue; int index = sel.Text.IndexOf('#'); if (index > 0) { string idName = sel.ItemAfterPosition(sel.Start + index).Text; string remove = sel.Text.Substring(0, index); string errorMessage = string.Format(CultureInfo.InvariantCulture, Resources.PerformanceDontOverQualifySelectors, idName, remove); SimpleErrorTag tag = new SimpleErrorTag(sel, errorMessage, index); context.AddError(tag); } return ItemCheckResult.Continue; }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { SimpleSelector sel = (SimpleSelector)item; if (!WESettings.GetBoolean(WESettings.Keys.ValidateStarSelector) || !sel.IsValid || context == null) return ItemCheckResult.Continue; if (sel.Text == "*") { //string afterStar = sel.Text.Length > index + 1 ? sel.Text.Substring(index + 1) : null; //if (afterStar == null || !afterStar.Trim().StartsWith("html", StringComparison.OrdinalIgnoreCase)) //{ string errorMessage = string.Format(CultureInfo.InvariantCulture, Resources.PerformanceDontUseStarSelector); SimpleErrorTag tag = new SimpleErrorTag(sel, errorMessage); context.AddError(tag); //} } return ItemCheckResult.Continue; }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { AtDirective directive = (AtDirective)item; if (!directive.IsValid || directive.IsVendorSpecific() || context == null) { return(ItemCheckResult.Continue); } ICssSchemaInstance schema = CssEditorChecker.GetSchemaForItem(context, item); var missingEntries = directive.GetMissingVendorSpecifics(schema); if (missingEntries.Any()) { string error = string.Format(CultureInfo.InvariantCulture, Resources.BestPracticeAddMissingVendorSpecificDirective, directive.Keyword.Text, string.Join(", ", missingEntries)); ICssError tag = new SimpleErrorTag(directive.Keyword, error); context.AddError(tag); return(ItemCheckResult.CancelCurrentItem); } return(ItemCheckResult.Continue); }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { Selector sel = (Selector)item; if (!WESettings.GetBoolean(WESettings.Keys.ValidateOverQualifiedSelector) || !sel.IsValid || context == null) { return(ItemCheckResult.Continue); } var idPart = sel.SimpleSelectors.Skip(1).FirstOrDefault(s => s.Text.StartsWith("#")); if (idPart != null) { string remove = sel.Text.Substring(0, idPart.Start - sel.Start).TrimEnd(); // Remove the whitespace before the final part string errorMessage = string.Format(CultureInfo.InvariantCulture, Resources.PerformanceDontOverQualifySelectors, idPart.Text, remove); SimpleErrorTag tag = new SimpleErrorTag(sel, errorMessage, remove.Length); context.AddError(tag); } return(ItemCheckResult.Continue); }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { Declaration dec = (Declaration)item; if (!dec.IsValid || dec.IsVendorSpecific() || IgnoreProperty(dec) || context == null) { return(ItemCheckResult.Continue); } ICssSchemaInstance schema = CssEditorChecker.GetSchemaForItem(context, item); var missingEntries = dec.GetMissingVendorSpecifics(schema); if (missingEntries.ToArray().Length > 0) { var missingPrefixes = missingEntries.Select(e => e.Substring(0, e.IndexOf('-', 1) + 1)); string error = string.Format(CultureInfo.InvariantCulture, Resources.BestPracticeAddMissingVendorSpecific, dec.PropertyName.Text, string.Join(", ", missingPrefixes)); ICssError tag = new SimpleErrorTag(dec.PropertyName, error); context.AddError(tag); return(ItemCheckResult.CancelCurrentItem); } return(ItemCheckResult.Continue); }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { SimpleSelector sel = (SimpleSelector)item; if (!WESettings.GetBoolean(WESettings.Keys.ValidateStarSelector) || !sel.IsValid || context == null) { return(ItemCheckResult.Continue); } if (sel.Text == "*") { //string afterStar = sel.Text.Length > index + 1 ? sel.Text.Substring(index + 1) : null; //if (afterStar == null || !afterStar.Trim().StartsWith("html", StringComparison.OrdinalIgnoreCase)) //{ string errorMessage = string.Format(CultureInfo.InvariantCulture, Resources.PerformanceDontUseStarSelector); SimpleErrorTag tag = new SimpleErrorTag(sel, errorMessage); context.AddError(tag); //} } return(ItemCheckResult.Continue); }
public ItemCheckResult CheckItem(ParseItem item, ICssCheckerContext context) { Selector sel = (Selector)item; if (!WESettings.GetBoolean(WESettings.Keys.ValidateOverQualifiedSelector) || !sel.IsValid || context == null) { return(ItemCheckResult.Continue); } int index = sel.Text.IndexOf('#'); if (index > 0) { string idName = sel.ItemAfterPosition(sel.Start + index).Text; string remove = sel.Text.Substring(0, index); string errorMessage = string.Format(CultureInfo.InvariantCulture, Resources.PerformanceDontOverQualifySelectors, idName, remove); SimpleErrorTag tag = new SimpleErrorTag(sel, errorMessage, index); context.AddError(tag); } return(ItemCheckResult.Continue); }