public RuleBasedCssClassNames AddCssClassApplyRule(ICssClass cssClass, Func <bool> applyRule) { cssClass.AssignUniqueName(); AddCssClassApplyRule(cssClass.Name, applyRule); return(this); }
private void AppendCssClass(ICssClass css) { cssBuilder.AppendLine($"\n {css.SelectorType.CssRenderingSymbol}{css.Name} {{"); foreach (var style in css.Styles) { cssBuilder.AppendLine($"\t{style}"); } cssBuilder.Append("}"); }
public void StoreCssClassRealName(ICssClass cssClass) { if (cssClass is null) { throw new ArgumentNullException(nameof(cssClass)); } logger.LogInformation($"Storing key [{cssClass.Name}]"); realizedCssClasses.Add(cssClass.Name); }
public bool CssClassIsAlreadyRealized(ICssClass cssClass) { if (cssClass is null) { throw new ArgumentNullException(nameof(cssClass)); } logger.LogInformation($"Start finding key [{cssClass.Name}]"); if (realizedCssClasses.Contains(cssClass.Name)) { logger.LogInformation($"Css class [{cssClass.Name}] found in cahce"); return(true); } return(false); }
public string BuildCssClassRepresentaion(ICssClass cssClass) { if (cssClass is null) { throw new ArgumentNullException(nameof(cssClass)); } logger.LogInformation($"Start building css class representaion for [{cssClass.Name}]"); AppendCssClass(cssClass); foreach (var pattern in cssClass.Patterns) { cssBuilder.AppendLine(pattern.BuildCssRepresentation(cssClass.Name)); } var classRepresentation = cssBuilder.ToString(); cssBuilder.Clear(); return(classRepresentation); }
public RuleBasedCssClassNames AddCssClass(ICssClass cssClass) { AddCssClassApplyRule(cssClass, () => true); return(this); }