<section class="admin-page-hero">
    <div>
        <MudText Typo="Typo.caption" Class="admin-eyebrow">@Eyebrow</MudText>
        <MudText Typo="Typo.h4" Class="admin-page-title">@Title</MudText>
        @if (!string.IsNullOrWhiteSpace(Subtitle))
        {
            <MudText Typo="Typo.body2" Class="admin-page-subtitle">@Subtitle</MudText>
        }
    </div>
    <MudButton Variant="Variant.Outlined" StartIcon="@Icons.Material.Filled.Close" @onclick="OnCancel">
        @CancelText
    </MudButton>
</section>

<AdminEditorPanel Loading="@Loading" SkeletonContent="@SkeletonContent">
    @ChildContent
</AdminEditorPanel>

@code {
    [Parameter, EditorRequired]
    public string Title { get; set; } = "";

    [Parameter, EditorRequired]
    public string Eyebrow { get; set; } = "";

    [Parameter]
    public string? Subtitle { get; set; }

    [Parameter, EditorRequired]
    public EventCallback OnCancel { get; set; }

    [Parameter]
    public string CancelText { get; set; } = "취소";

    [Parameter]
    public bool Loading { get; set; }

    [Parameter]
    public RenderFragment? SkeletonContent { get; set; }

    [Parameter]
    public RenderFragment? ChildContent { get; set; }
}
