Added Blazor projects. Minor API/core updates.
All checks were successful
ci / build-test (push) Successful in 1m35s
ci / publish-image (push) Has been skipped

This commit is contained in:
2025-11-07 22:18:04 -05:00
parent 4020a01682
commit 840bec72d2
77 changed files with 60692 additions and 1 deletions

View File

@@ -0,0 +1,58 @@
@inherits LayoutComponentBase
<MudLayout>
<MudAppBar Elevation="1" Dense="@_dense">
<MudIconButton Icon="@Icons.Material.Filled.Menu" Color="Color.Inherit" Edge="Edge.Start" OnClick="@ToggleDrawer" />
<MudText>JSMR</MudText>
<MudSpacer />
<MudIconButton Icon="@Icons.Custom.Brands.GitHub" Color="Color.Inherit" Href="https://github.com/MudBlazor/MudBlazor" Target="_blank" />
</MudAppBar>
<MudDrawer @bind-Open="@_open" ClipMode="_clipMode" Breakpoint="@_breakpoint" Elevation="1" Variant="@DrawerVariant.Mini">
<MudNavMenu>
<MudNavLink Match="NavLinkMatch.All" Icon="@Icons.Material.Filled.Home" href="/">Home</MudNavLink>
<MudNavLink Match="NavLinkMatch.All" Icon="@Icons.Material.Filled.Tag" href="tags">Tags</MudNavLink>
<MudNavLink Match="NavLinkMatch.All" Icon="@Icons.Material.Filled.Circle" href="circles">Circles</MudNavLink>
<MudNavLink Match="NavLinkMatch.All" Icon="@Icons.Material.Filled.Person" href="creators">Creators</MudNavLink>
<MudNavLink Match="NavLinkMatch.All" Icon="@Icons.Material.Filled.SatelliteAlt" href="scanner">Scanner</MudNavLink>
<MudNavLink Match="NavLinkMatch.All" Icon="@Icons.Material.Filled.StackedLineChart" href="analytics">Analytics</MudNavLink>
<MudNavLink Match="NavLinkMatch.All" Icon="@Icons.Material.Filled.Headphones" href="voiceworks">Voice Works</MudNavLink>
</MudNavMenu>
</MudDrawer>
<MudMainContent Class="pt-18 px-8">
@Body
</MudMainContent>
@* Required *@
<MudThemeProvider @ref="_mudThemeProvider" @bind-IsDarkMode="_isDarkMode" />
<MudPopoverProvider />
@* Needed for dialogs *@
<MudDialogProvider />
@* Needed for snackbars *@
<MudSnackbarProvider />
</MudLayout>
@code{
private bool _open = false;
private bool _dense = true;
private Breakpoint _breakpoint = Breakpoint.Lg;
private DrawerClipMode _clipMode = DrawerClipMode.Always;
private void ToggleDrawer()
{
_open = !_open;
}
private bool _isDarkMode;
private MudThemeProvider _mudThemeProvider;
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
_isDarkMode = await _mudThemeProvider.GetSystemDarkModeAsync();
StateHasChanged();
}
}
}