using Connected.Utilities;
using Microsoft.AspNetCore.Components;

namespace Connected.Components;
public partial class DrawerHeader : UIComponent
{
	#region Event callbacks
	#endregion

	#region Content placeholders

	/// <summary>
	/// If true, compact padding will be used, same as the Appbar.
	/// </summary>
	[Parameter]
	public bool Dense { get; set; }

	/// <summary>
	/// Child content of component.
	/// </summary>
	[Parameter]
	public RenderFragment ChildContent { get; set; }

	/// <summary>
	/// If true, the component will link to index page with an a element instead of div.
	/// </summary>
	[Parameter]
	public bool LinkToIndex { get; set; }

	#endregion

	#region Styling properties

	/// <summary>
	/// A space separated list of class names, added on top of the default class list.
	/// </summary>
	[Parameter]
	public string? ClassList { get; set; }

	/// <summary>
	/// A space separated list of class names, added on top of the default class list.
	/// </summary>
	[Parameter]
	public string? StyleList { get; set; }

	protected virtual CssBuilder CompiledClassList
	{
		get
		{
			return new CssBuilder("drawer-header")
				.AddClass($"drawer-header-dense", Dense)
			  .AddClass(ClassList);
		}
	}

	#endregion



}
