@ChildContent
@code {
[Parameter]
public string View { get; set; } = "grid";
[Parameter]
public string CssClass { get; set; } = string.Empty;
[Parameter]
public RenderFragment? ChildContent { get; set; }
private string ContainerClass => string.Join(" ", BuildClasses());
private IEnumerable BuildClasses()
{
yield return "products-view__list";
yield return "products-list";
yield return ResolveLayoutClass();
if (!string.IsNullOrWhiteSpace(CssClass))
{
yield return CssClass;
}
}
private string ResolveLayoutClass() =>
string.Equals(View, "list", StringComparison.OrdinalIgnoreCase)
? "products-list--layout--list"
: "products-list--layout--grid-3";
}