Files
gpw_next/GPW.CORE.WRKLOG/Shared/NavMenu.razor
T
2022-09-10 11:22:31 +02:00

79 lines
2.8 KiB
Plaintext

<div class="top-row ps-2 navbar navbar-dark">
<div class="container-fluid px-0">
@if (!showText)
{
<a class="navbar-brand p-0" @onclick="() => ToggleCompress()">GPW <i class="fas fa-caret-square-right"></i></a>
}
else
{
<a class="navbar-brand" @onclick="() => ToggleCompress()">GPW Activity Logger <i class="fas fa-caret-square-left"></i></a>
}
<button title="Navigation menu" class="navbar-toggler" @onclick="ToggleNavMenu">
<span class="navbar-toggler-icon"></span>
</button>
</div>
</div>
<div class="@NavMenuCssClass" @onclick="ToggleNavMenu">
<nav class="flex-column">
<div class="nav-item px-3">
<NavLink class="nav-link" href="" Match="NavLinkMatch.All">
<span class="oi oi-home" aria-hidden="true"></span> <span class="@hideText">Home</span>
</NavLink>
</div>
<div class="nav-item px-3">
<NavLink class="nav-link" href="FastRec">
<span class="fas fa-thumbtack pr-3" aria-hidden="true"></span> <span class="@hideText">Fast Rec</span>
</NavLink>
</div>
<div class="nav-item px-3">
<NavLink class="nav-link" href="WeekPlan">
<span class="oi oi-calendar" aria-hidden="true"></span> <span class="@hideText">Week Plan</span>
</NavLink>
</div>
<div class="nav-item px-3">
<NavLink class="nav-link" href="ListPlan">
<span class="oi oi-list-rich" aria-hidden="true"></span> <span class="@hideText">Record List</span>
</NavLink>
</div>
<div class="nav-item px-3">
<a href="help/index.html" target="_blank" class="nav-link">
<span class="fas fa-question pr-3" aria-hidden="true"></span> <span class="@hideText">Help</span>
</a>
</div>
<div class="nav-item px-3">
<NavLink class="nav-link" href="ForceReset">
<span class="fas fa-sync-alt pr-3" aria-hidden="true"></span> <span class="@hideText">Reset Cache</span>
</NavLink>
</div>
</nav>
</div>
@code {
private bool collapseNavMenu = true;
private bool onlyIcon = false;
private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null;
private string? TextCss => onlyIcon ? "d-none" : "";
private void ToggleNavMenu()
{
collapseNavMenu = !collapseNavMenu;
}
protected bool showText { get; set; } = true;
protected void ToggleCompress()
{
showText = !showText;
EC_compressUpdated.InvokeAsync(showText);
}
protected string hideText
{
get => showText ? "" : "invisible";
}
[Parameter]
public EventCallback<bool> EC_compressUpdated { get; set; }
}