public string Class(IClassProvider classProvider) { if (dirty) { void BuildClasses(ClassBuilder builder) { if (rules.Count > 0) { builder.Append(rules.Select(r => classProvider.Spacing(spacing, r.Key, r.Value.Select(v => (v.Side, v.Breakpoint))))); } if (customRules?.Count > 0) { builder.Append(customRules); } } var classBuilder = new ClassBuilder(BuildClasses); classNames = classBuilder.Class; dirty = false; } return(classNames); }
public string Class(IClassProvider classProvider) { if (!built) { ClassMapper .If(() => rules.Select(r => classProvider.Spacing(spacing, r.Key, r.Value.Select(v => (v.Side, v.Breakpoint)))), () => rules.Count > 0) .If(() => customRules, () => customRules?.Count > 0); built = true; } return(ClassMapper.Class); }