using Connected.Annotations;
using Connected.Extensions;
using Connected.Utilities;
using Microsoft.AspNetCore.Components;
namespace Connected.Components;
public partial class Divider : UIComponent
{
protected string Classname =>
new CssBuilder("mud-divider")
.AddClass($"mud-divider-absolute", Absolute)
.AddClass($"mud-divider-flexitem", FlexItem)
.AddClass($"mud-divider-light", Light)
.AddClass($"mud-divider-vertical", Vertical)
.AddClass($"mud-divider-{DividerType.ToDescriptionString()}", when: () => DividerType != DividerType.FullWidth)
.AddClass(Class)
.Build();
///
/// Sets absolute position to the component.
///
[Parameter]
[Category(CategoryTypes.Divider.Appearance)]
public bool Absolute { get; set; }
///
/// If true, a vertical divider will have the correct height when used in flex container.
///
[Parameter]
[Category(CategoryTypes.Divider.Appearance)]
public bool FlexItem { get; set; }
///
/// If true, the divider will have a lighter color.
///
[Parameter]
[Category(CategoryTypes.Divider.Appearance)]
public bool Light { get; set; }
///
/// If true, the divider is displayed vertically.
///
[Parameter]
[Category(CategoryTypes.Divider.Appearance)]
public bool Vertical { get; set; }
///
/// The Divider type to use.
///
[Parameter]
[Category(CategoryTypes.Divider.Appearance)]
public DividerType DividerType { get; set; } = DividerType.FullWidth;
}