private async Task <bool> IsComponentForDisplayAsync(Envoy envoy) { if ((envoy.ModelDefinitionType == ComponentDefinition.ModelDefinitionTypeKeyword || envoy.BindingKeywords.Contains(ComponentDefinition.ModelDefinitionTypeKeyword)) && envoy.OverridingModelDefinitionType != ComponentDefinition.ReferencedModelDefinitionTypeKeyword) { using (await envoy.LoadAsync()) { IComponentSubtype subtype = envoy.GetOwningComponentConfigurationReference().Configuration.ComponentSubtype; return(CanBuildSubtype(subtype)); } } return(false); }
private bool CanBuildSubtype(IComponentSubtype subtype) { return(subtype is IBuildableComponentSubtype && subtype.ComponentType.Equals(ComponentType)); }