47 lines
1.7 KiB
Plaintext
47 lines
1.7 KiB
Plaintext
@using Microsoft.AspNetCore.Components.Authorization
|
|
@using Microsoft.AspNetCore.Components.Forms
|
|
@using Microsoft.AspNetCore.Components.Routing
|
|
@using Microsoft.Extensions.Options
|
|
@using Microsoft.JSInterop
|
|
@using RobotNet10.Components
|
|
|
|
@inject IJSRuntime JS
|
|
@inject OptionLayout Options
|
|
|
|
<div class="sidebar">
|
|
<DivContainer HeightClass="flex-grow-1" OverflowY="overflow-y-auto" Class="d-flex flex-column">
|
|
<AuthorizeView>
|
|
<Authorized>
|
|
@foreach (var nav in Options.NavModels)
|
|
{
|
|
<div class="nav-item px-3">
|
|
<NavLink class="nav-link" href="@nav.Path" Match="@nav.Match">
|
|
<div class="d-flex align-items-center">
|
|
<div class="nav-icon">
|
|
<span class="mdi @nav.Icon mdi-36px" aria-hidden="true"></span>
|
|
</div>
|
|
<span class="nav-label">@nav.Label</span>
|
|
</div>
|
|
</NavLink>
|
|
</div>
|
|
}
|
|
</Authorized>
|
|
</AuthorizeView>
|
|
</DivContainer>
|
|
<div class="copyright d-flex align-items-center justify-content-end">
|
|
<span class="text-white" style="font-size: 10px; text-align: end; margin-right: 5px;">
|
|
© Copyright 2025 Phenikaa X <br />v@(Options.Version) | All Rights Reserved
|
|
</span>
|
|
</div>
|
|
</div>
|
|
|
|
@code {
|
|
protected override async Task OnAfterRenderAsync(bool firstRender)
|
|
{
|
|
if (firstRender)
|
|
{
|
|
await JS.InvokeVoidAsync("robotnet.components.loadToggleSidebarState");
|
|
}
|
|
}
|
|
}
|