public async ValueTask OnInitialized(IFomanticComponent component) { foreach (var feature in Features) { if (feature.Type.IsAssignableFrom(component.GetType())) { await feature.OnInitialized(component); } } }
public async ValueTask DisposeAsync(IFomanticComponent component) { foreach (var feature in Features) { if (feature.Type.IsAssignableFrom(component.GetType())) { await feature.DisposeAsync(component); } } }
public async ValueTask <bool> OnAfterFirstRender(IFomanticComponent component) { bool result = false; foreach (var feature in Features) { if (feature.Type.IsAssignableFrom(component.GetType())) { result = result || await feature.OnAfterFirstRender(component); } } return(result); }
public List <string> OnConstractClasses(IFomanticComponent component) { List <string> result = new List <string>(); foreach (var feature in Features) { if (feature.Type.IsAssignableFrom(component.GetType())) { result.AddRange(feature.ProvideCssClasses(component)); result.Add(feature.ProvideCssClass(component)); } } return(result); }