QuantEngine MudBlazor UI: Complete Phase 1-8 Implementation #14

Merged
kjh2064 merged 12 commits from feature/smartadmin-bootstrap-migration into main 2026-07-05 17:11:45 +09:00
2 changed files with 2 additions and 58 deletions
Showing only changes of commit 2fb1a3bf18 - Show all commits
@@ -1,14 +1,11 @@
@inherits LayoutComponentBase
@inject MudThemeProvider MudThemeProvider
<MudThemeProvider @ref="mudThemeProvider" @bind-IsDarkMode="@isDarkMode" />
<div class="auth-container">
<!-- Left Panel - Branding -->
<MudHidden Breakpoint="Breakpoint.SmAndDown" Invert="true" Class="auth-left-panel">
<div class="auth-branding">
<div class="auth-logo">
<MudIcon Icon="@Icons.Material.Filled.AnalyticsFill" Size="Size.Large" />
<MudIcon Icon="@Icons.Material.Filled.Dashboard" Size="Size.Large" />
</div>
<MudText Typo="Typo.h3" Class="auth-title">
QuantEngine
@@ -32,14 +29,6 @@
</div>
</div>
<!-- Dark Mode Toggle -->
<div class="auth-theme-toggle">
<MudIconButton Icon="@(isDarkMode ? Icons.Material.Filled.Brightness4 : Icons.Material.Filled.Brightness7)"
Color="Color.Inherit"
OnClick="ToggleDarkMode"
Title="@(isDarkMode ? "라이트 모드" : "다크 모드")"
Size="Size.Large" />
</div>
</MudHidden>
<!-- Right Panel - Auth Content -->
@@ -48,13 +37,9 @@
<MudHidden Breakpoint="Breakpoint.MdAndUp" Invert="true">
<div class="auth-mobile-header">
<MudText Typo="Typo.h5" Class="d-flex align-center">
<MudIcon Icon="@Icons.Material.Filled.AnalyticsFill" Size="Size.Medium" Class="mr-2" />
<MudIcon Icon="@Icons.Material.Filled.Dashboard" Size="Size.Medium" Class="mr-2" />
QuantEngine
</MudText>
<MudIconButton Icon="@(isDarkMode ? Icons.Material.Filled.Brightness4 : Icons.Material.Filled.Brightness7)"
Color="Color.Inherit"
OnClick="ToggleDarkMode"
Title="@(isDarkMode ? "라이트 모드" : "다크 모드")" />
</div>
</MudHidden>
@@ -78,21 +63,4 @@
</div>
@code {
private MudThemeProvider mudThemeProvider = default!;
private bool isDarkMode = false;
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
isDarkMode = await mudThemeProvider.GetDarkModeAsync() ?? false;
StateHasChanged();
}
}
private async Task ToggleDarkMode()
{
isDarkMode = !isDarkMode;
await mudThemeProvider.SetDarkModeAsync(isDarkMode);
}
}
@@ -2,7 +2,6 @@
@inject HttpClient Http
@inject AuthenticationStateProvider AuthStateProvider
@inject NavigationManager NavigationManager
@inject MudThemeProvider MudThemeProvider
<MudLayout>
<!-- Top Navigation Bar -->
@@ -18,12 +17,6 @@
<MudSpacer />
<!-- Theme Toggle -->
<MudIconButton Icon="@(isDarkMode ? Icons.Material.Filled.Brightness4 : Icons.Material.Filled.Brightness7)"
Color="Color.Inherit"
OnClick="ToggleDarkMode"
Title="@(isDarkMode ? "라이트 모드" : "다크 모드")" />
<!-- User Menu -->
<AuthorizeView>
<Authorized>
@@ -102,19 +95,8 @@
@code {
private bool navOpen = true;
private bool fixedOpen = true;
private bool isDarkMode = false;
private string appVersion = "Local Debug";
private string buildTime = "N/A";
private MudTheme currentTheme = default!;
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
isDarkMode = await MudThemeProvider.GetDarkModeAsync() ?? false;
StateHasChanged();
}
}
protected override async Task OnInitializedAsync()
{
@@ -134,12 +116,6 @@
await base.OnInitializedAsync();
}
private async Task ToggleDarkMode()
{
isDarkMode = !isDarkMode;
await MudThemeProvider.SetDarkModeAsync(isDarkMode);
}
private void ToggleDrawer()
{
navOpen = !navOpen;