56 lines
1.7 KiB
Plaintext
56 lines
1.7 KiB
Plaintext
@namespace Oqtane.Modules.Controls
|
|
@inherits LocalizableComponent
|
|
|
|
<div class="d-flex mt-2">
|
|
<div>
|
|
<a data-bs-toggle="collapse" class="app-link-unstyled" href="#@Name" aria-expanded="@_expanded" aria-controls="@Name" @onclick:preventDefault="true">
|
|
<h5>@_heading</h5>
|
|
</a>
|
|
</div>
|
|
<div class="ms-auto">
|
|
<a data-bs-toggle="collapse" class="app-link-unstyled float-right" href="#@Name" aria-expanded="@_expanded" aria-controls="@Name" @onclick:preventDefault="true">
|
|
<i class="oi oi-chevron-bottom"></i>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<div class="d-flex">
|
|
<hr class="app-rule" />
|
|
</div>
|
|
<div class="collapse @_show" id="@Name">
|
|
@ChildContent
|
|
</div>
|
|
|
|
@code {
|
|
private string _heading = string.Empty;
|
|
private string _expanded = string.Empty;
|
|
private string _show = string.Empty;
|
|
|
|
[Parameter]
|
|
public RenderFragment ChildContent { get; set; }
|
|
|
|
[Parameter]
|
|
public string Name { get; set; } // required - the name of the section
|
|
|
|
[Parameter]
|
|
public string Heading { get; set; } // optional - will default to Name if not provided
|
|
|
|
[Parameter]
|
|
public string Expanded { get; set; } // optional - will default to false if not provided
|
|
|
|
protected override void OnInitialized()
|
|
{
|
|
_heading = (!string.IsNullOrEmpty(Heading)) ? Heading : Name;
|
|
_expanded = (!string.IsNullOrEmpty(Expanded)) ? Expanded : "false";
|
|
if (_expanded == "true") { _show = "show"; }
|
|
}
|
|
|
|
protected override void OnParametersSet()
|
|
{
|
|
base.OnParametersSet();
|
|
|
|
_heading = !string.IsNullOrEmpty(Heading)
|
|
? Localize(nameof(Heading), Heading)
|
|
: Localize(nameof(Name), Name);
|
|
}
|
|
}
|