@using Microsoft.AspNetCore.Components.Web @code { [Parameter] public string Icon { get; set; } = string.Empty; [Parameter] public string? Title { get; set; } [Parameter] public EventCallback OnClick { get; set; } [Parameter] public bool Disabled { get; set; } private string IconClass => $"mdi-{Icon} mdi-18px"; /* Giảm icon size để phù hợp với button nhỏ hơn */ private string DisabledClass => Disabled ? "disabled" : string.Empty; private async Task HandleClick(MouseEventArgs e) { if (Disabled || !OnClick.HasDelegate) { return; } await OnClick.InvokeAsync(e); } }