<MudExpansionPanel Class="border-solid border rounded-lg" Expanded="@this.IsExpanded" MaxHeight="@this.MaxHeight" ExpandedChanged="async s => await this.ExpandedChanged(s)">
    <TitleContent>
        <div class="d-flex align-center">
            <MudIcon Icon="@this.HeaderIcon" Size="@this.IconSize" Color="@this.IconColor" class="mr-3"/>
            <MudText Typo="Typo.h6">
                @this.HeaderText
            </MudText>
            @if (this.ShowEndButton)
            {
                <MudSpacer/>
                if (!string.IsNullOrWhiteSpace(this.EndButtonTooltip))
                {
                    <MudTooltip Text="@this.EndButtonTooltip">
                        <MudIconButton Icon="@this.EndButtonIcon" Color="@this.EndButtonColor" Size="Size.Medium" OnClick="async () => await this.EndButtonClickAsync()"/>
                    </MudTooltip>
                }
                else
                {
                    <MudIconButton Icon="@this.EndButtonIcon" Color="@this.EndButtonColor" Size="Size.Medium" OnClick="async () => await this.EndButtonClickAsync()"/>
                }
            }
        </div>
    </TitleContent>
    <ChildContent>
        @this.ChildContent
    </ChildContent>
</MudExpansionPanel>