refactor: admin ui를 fluent v5와 html 기반으로 전환
TaxBaik CI/CD / build-and-deploy (push) Failing after 1m53s
TaxBaik CI/CD / build-and-deploy (push) Failing after 1m53s
This commit is contained in:
@@ -3,100 +3,86 @@
|
||||
@inject IJSRuntime JS
|
||||
@implements IDisposable
|
||||
|
||||
<MudLayout Class="admin-shell">
|
||||
<MudAppBar Elevation="0" Class="admin-topbar">
|
||||
<MudIconButton Icon="@Icons.Material.Filled.Menu"
|
||||
Color="Color.Inherit"
|
||||
Edge="Edge.Start"
|
||||
Class="admin-menu-button"
|
||||
OnClick="@ToggleDrawer" />
|
||||
<div class="admin-shell">
|
||||
<header class="admin-topbar">
|
||||
<button type="button" class="admin-icon-button admin-menu-button" @onclick="ToggleDrawer" aria-label="메뉴 열기">
|
||||
<span class="material-icons">menu</span>
|
||||
</button>
|
||||
|
||||
<div class="admin-topbar-title">
|
||||
<MudText Typo="Typo.caption" Color="Color.Secondary">TaxBaik Admin</MudText>
|
||||
<MudText Typo="Typo.h6">세무회계 관리 대시보드</MudText>
|
||||
<span class="admin-topbar-kicker">TaxBaik Admin</span>
|
||||
<h1>세무회계 관리 대시보드</h1>
|
||||
</div>
|
||||
<MudSpacer />
|
||||
|
||||
<!-- 상단 액션 바 -->
|
||||
<div class="admin-topbar-actions">
|
||||
<MudTooltip Text="공개 웹사이트 방문">
|
||||
<MudButton Class="admin-topbar-action"
|
||||
Variant="Variant.Text"
|
||||
Color="Color.Inherit"
|
||||
Size="Size.Small"
|
||||
StartIcon="@Icons.Material.Filled.OpenInNew"
|
||||
Href="/taxbaik"
|
||||
Target="_blank">
|
||||
공개 사이트
|
||||
</MudButton>
|
||||
</MudTooltip>
|
||||
|
||||
<MudDivider Vertical="true" FlexItem="true" Class="mx-2" />
|
||||
|
||||
<MudTooltip Text="로그아웃 (Ctrl+Q)">
|
||||
<MudButton Class="admin-topbar-action"
|
||||
Variant="Variant.Text"
|
||||
Color="Color.Error"
|
||||
Size="Size.Small"
|
||||
StartIcon="@Icons.Material.Filled.Logout"
|
||||
Href="/taxbaik/admin/logout">
|
||||
로그아웃
|
||||
</MudButton>
|
||||
</MudTooltip>
|
||||
<a class="admin-topbar-action" href="/taxbaik" target="_blank" rel="noreferrer">
|
||||
<span class="material-icons">open_in_new</span>
|
||||
공개 사이트
|
||||
</a>
|
||||
<a class="admin-topbar-action danger" href="/taxbaik/admin/logout">
|
||||
<span class="material-icons">logout</span>
|
||||
로그아웃
|
||||
</a>
|
||||
</div>
|
||||
</MudAppBar>
|
||||
</header>
|
||||
|
||||
<MudDrawer @bind-open="@drawerOpen"
|
||||
Elevation="0"
|
||||
Variant="DrawerVariant.Responsive"
|
||||
Breakpoint="Breakpoint.Md"
|
||||
Class="admin-drawer">
|
||||
<aside class="@DrawerClass">
|
||||
<div class="admin-drawer-brand">
|
||||
<div class="admin-brand-mark">T</div>
|
||||
<div>
|
||||
<MudText Typo="Typo.subtitle1">TaxBaik</MudText>
|
||||
<MudText Typo="Typo.caption">세무 운영 콘솔</MudText>
|
||||
<div class="admin-brand-title">TaxBaik</div>
|
||||
<div class="admin-brand-subtitle">세무 운영 콘솔</div>
|
||||
</div>
|
||||
</div>
|
||||
<MudNavMenu Class="admin-nav">
|
||||
<MudNavLink Href="/taxbaik/admin/dashboard" Match="NavLinkMatch.All" Icon="@Icons.Material.Filled.Dashboard">대시보드</MudNavLink>
|
||||
|
||||
<MudNavGroup Title="CRM & 세무관리" Icon="@Icons.Material.Filled.BusinessCenter" @bind-Expanded="@expandedCRMGroup">
|
||||
<MudNavLink Href="/taxbaik/admin/tax-profiles" Icon="@Icons.Material.Filled.Assignment">세무 프로필</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/tax-filing-schedules" Icon="@Icons.Material.Filled.CalendarMonth">신고 일정</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/contracts" Icon="@Icons.Material.Filled.Description">계약 관리</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/consulting-activities" Icon="@Icons.Material.Filled.ChatBubble">상담 활동</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/revenue-trackings" Icon="@Icons.Material.Filled.Receipt">수익 추적</MudNavLink>
|
||||
</MudNavGroup>
|
||||
<nav class="admin-nav">
|
||||
<a href="/taxbaik/admin/dashboard" class="admin-nav-link">대시보드</a>
|
||||
|
||||
<MudNavGroup Title="고객 관리" Icon="@Icons.Material.Filled.PeopleAlt" @bind-Expanded="@expandedCustomerGroup">
|
||||
<MudNavLink Href="/taxbaik/admin/clients" Icon="@Icons.Material.Filled.ContactPage">고객 카드</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/tax-filings" Icon="@Icons.Material.Filled.Assessment">세무신고</MudNavLink>
|
||||
</MudNavGroup>
|
||||
<details open>
|
||||
<summary>CRM & 세무관리</summary>
|
||||
<a href="/taxbaik/admin/tax-profiles" class="admin-nav-link">세무 프로필</a>
|
||||
<a href="/taxbaik/admin/tax-filing-schedules" class="admin-nav-link">신고 일정</a>
|
||||
<a href="/taxbaik/admin/contracts" class="admin-nav-link">계약 관리</a>
|
||||
<a href="/taxbaik/admin/consulting-activities" class="admin-nav-link">상담 활동</a>
|
||||
<a href="/taxbaik/admin/revenue-trackings" class="admin-nav-link">수익 추적</a>
|
||||
</details>
|
||||
|
||||
<MudNavGroup Title="홈페이지" Icon="@Icons.Material.Filled.Home" @bind-Expanded="@expandedWebsiteGroup">
|
||||
<MudNavLink Href="/taxbaik/admin/announcements" Icon="@Icons.Material.Filled.Campaign">공지사항</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/faqs" Icon="@Icons.Material.Filled.QuestionAnswer">FAQ 관리</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/blog" Icon="@Icons.Material.Filled.Article">블로그 관리</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/season-simulator" Icon="@Icons.Material.Filled.Preview">시즌 시뮬레이터</MudNavLink>
|
||||
</MudNavGroup>
|
||||
<details>
|
||||
<summary>고객 관리</summary>
|
||||
<a href="/taxbaik/admin/clients" class="admin-nav-link">고객 카드</a>
|
||||
<a href="/taxbaik/admin/tax-filings" class="admin-nav-link">세무신고</a>
|
||||
</details>
|
||||
|
||||
<MudNavLink Href="/taxbaik/admin/inquiries" Icon="@Icons.Material.Filled.Forum">문의 관리</MudNavLink>
|
||||
<MudNavLink Href="/taxbaik/admin/settings" Icon="@Icons.Material.Filled.Tune">설정</MudNavLink>
|
||||
</MudNavMenu>
|
||||
</MudDrawer>
|
||||
<details>
|
||||
<summary>홈페이지</summary>
|
||||
<a href="/taxbaik/admin/announcements" class="admin-nav-link">공지사항</a>
|
||||
<a href="/taxbaik/admin/faqs" class="admin-nav-link">FAQ 관리</a>
|
||||
<a href="/taxbaik/admin/blog" class="admin-nav-link">블로그 관리</a>
|
||||
<a href="/taxbaik/admin/season-simulator" class="admin-nav-link">시즌 시뮬레이터</a>
|
||||
</details>
|
||||
|
||||
<MudMainContent Class="admin-main">
|
||||
<MudContainer MaxWidth="MaxWidth.False" Class="admin-content">
|
||||
<a href="/taxbaik/admin/inquiries" class="admin-nav-link">문의 관리</a>
|
||||
<a href="/taxbaik/admin/settings" class="admin-nav-link">설정</a>
|
||||
</nav>
|
||||
|
||||
<div class="admin-drawer-footer">
|
||||
<div class="admin-footer-item">
|
||||
<span class="material-icons">shield</span>
|
||||
<span>보안 모드</span>
|
||||
</div>
|
||||
<div class="admin-footer-meta">Fluent UI Blazor 기반 관리자 콘솔</div>
|
||||
</div>
|
||||
</aside>
|
||||
|
||||
<main class="admin-content">
|
||||
<div class="admin-content-inner">
|
||||
@Body
|
||||
</MudContainer>
|
||||
</MudMainContent>
|
||||
</MudLayout>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
|
||||
@code {
|
||||
private bool drawerOpen = true;
|
||||
private bool expandedCRMGroup = true;
|
||||
private bool expandedCustomerGroup = false;
|
||||
private bool expandedWebsiteGroup = false;
|
||||
|
||||
protected override void OnInitialized()
|
||||
{
|
||||
@@ -113,15 +99,14 @@
|
||||
StateHasChanged();
|
||||
}
|
||||
|
||||
private string DrawerClass => drawerOpen ? "admin-drawer open" : "admin-drawer";
|
||||
|
||||
private void OnLocationChanged(object? sender, LocationChangedEventArgs args)
|
||||
{
|
||||
_ = InvokeAsync(() => JS.InvokeVoidAsync("taxbaikAdminSession.showLoading"));
|
||||
}
|
||||
|
||||
private void ToggleDrawer()
|
||||
{
|
||||
drawerOpen = !drawerOpen;
|
||||
}
|
||||
private void ToggleDrawer() => drawerOpen = !drawerOpen;
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user