@if (IsOpen) { } @code { [Parameter] public bool IsOpen { get; set; } [Parameter] public string Placement { get; set; } = "end"; [Parameter] public string AriaLabel { get; set; } = "Drawer"; [Parameter] public string CloseLabel { get; set; } = "Close panel"; [Parameter] public string? Title { get; set; } [Parameter] public RenderFragment? HeaderContent { get; set; } [Parameter] public RenderFragment? ChildContent { get; set; } [Parameter] public EventCallback OnClose { get; set; } [Parameter] public string? CssClass { get; set; } private string BuildCssClass() { var classes = new List { "surface-drawer", $"is-{Placement.Trim().ToLowerInvariant()}" }; if (!string.IsNullOrWhiteSpace(CssClass)) { classes.Add(CssClass); } return string.Join(' ', classes); } private Task HandleCloseAsync() => OnClose.InvokeAsync(); }