Fix admin wasm bootstrap and dashboard routing
TaxBaik CI/CD / build-and-deploy (push) Failing after 3m32s
TaxBaik CI/CD / build-and-deploy (push) Failing after 3m32s
This commit is contained in:
@@ -10,7 +10,6 @@
|
||||
<link rel="alternate icon" href="/taxbaik/favicon.ico" />
|
||||
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700&display=swap" rel="stylesheet" />
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" />
|
||||
<link href="_content/MudBlazor/MudBlazor.min.css" rel="stylesheet" />
|
||||
<script>
|
||||
window.taxbaikAdminBuildVersion = 'unknown';
|
||||
window.taxbaikAdminComponent = 'AdminApp';
|
||||
@@ -35,7 +34,6 @@
|
||||
</div>
|
||||
</div>
|
||||
<Routes @rendermode="@(new InteractiveWebAssemblyRenderMode(prerender: false))" />
|
||||
<script src="_content/MudBlazor/MudBlazor.min.js"></script>
|
||||
<script src="js/admin-session.js"></script>
|
||||
<script src="_framework/blazor.webassembly.js"></script>
|
||||
<script>
|
||||
|
||||
@@ -1,11 +1,18 @@
|
||||
@page "/"
|
||||
@page "/admin"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@attribute [Authorize]
|
||||
@inject NavigationManager NavigationManager
|
||||
|
||||
@code {
|
||||
protected override void OnInitialized()
|
||||
{
|
||||
NavigationManager.NavigateTo("/taxbaik/admin/dashboard", replace: true);
|
||||
}
|
||||
}
|
||||
<PageTitle>관리자</PageTitle>
|
||||
|
||||
<section class="admin-simple-page">
|
||||
<header class="admin-simple-header">
|
||||
<p class="admin-simple-eyebrow">Admin</p>
|
||||
<h1 class="admin-simple-title">관리자 시작 화면</h1>
|
||||
<p class="admin-simple-subtitle">이 페이지는 라우팅과 렌더링만 확인하기 위한 최소 시작점입니다.</p>
|
||||
</header>
|
||||
|
||||
<div class="admin-simple-card">
|
||||
관리자 시작 화면이 정상 렌더링되면 부트스트랩 자체는 동작합니다.
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@page "/dashboard"
|
||||
@page "/admin/dashboard"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@attribute [Authorize]
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
<PageTitle>대시보드</PageTitle>
|
||||
|
||||
<AdminPageHeader Title="대시보드" Eyebrow="Home" Subtitle="관리자 대시보드 초기화 문제를 분리하는 최소 렌더 화면입니다." />
|
||||
<section class="admin-simple-page">
|
||||
<header class="admin-simple-header">
|
||||
<p class="admin-simple-eyebrow">Home</p>
|
||||
<h1 class="admin-simple-title">대시보드</h1>
|
||||
<p class="admin-simple-subtitle">관리자 대시보드 초기화 문제를 분리하는 최소 렌더 화면입니다.</p>
|
||||
</header>
|
||||
|
||||
<AdminDataPanel>
|
||||
<div class="admin-note-list">
|
||||
<div class="admin-simple-card">
|
||||
<div>대시보드 본문을 단계적으로 복원하며 `get` interop 오류를 추적합니다.</div>
|
||||
<div>현재 화면은 JS 호출 없이 렌더만 수행합니다.</div>
|
||||
</div>
|
||||
</AdminDataPanel>
|
||||
</section>
|
||||
|
||||
@@ -1,20 +1,11 @@
|
||||
using Microsoft.AspNetCore.Components.Authorization;
|
||||
using Microsoft.AspNetCore.Components.WebAssembly.Hosting;
|
||||
using MudBlazor.Services;
|
||||
using TaxBaik.Application.Services;
|
||||
using TaxBaik.Web.Services;
|
||||
using TaxBaik.Web.Services.AdminClients;
|
||||
|
||||
var builder = WebAssemblyHostBuilder.CreateDefault(args);
|
||||
|
||||
// MudBlazor (WASM 측 인터랙티브 컴포넌트용)
|
||||
builder.Services.AddMudServices(config =>
|
||||
{
|
||||
config.SnackbarConfiguration.HideTransitionDuration = 400;
|
||||
config.SnackbarConfiguration.ShowTransitionDuration = 300;
|
||||
config.PopoverOptions.ThrowOnDuplicateProvider = false;
|
||||
});
|
||||
|
||||
// API Base Url: Admin SPA is hosted under /taxbaik/admin/, while APIs live under /taxbaik/api/.
|
||||
var hostBase = new Uri(builder.HostEnvironment.BaseAddress);
|
||||
var apiBaseUrl = new Uri(hostBase, "/taxbaik/api/").ToString();
|
||||
|
||||
@@ -436,7 +436,13 @@ app.Use(async (context, next) =>
|
||||
if (path.Contains("resource-collection") && path.EndsWith(".js"))
|
||||
{
|
||||
context.Response.ContentType = "application/javascript";
|
||||
await context.Response.WriteAsync("export default [];");
|
||||
await context.Response.WriteAsync("""
|
||||
export function get() {
|
||||
return [];
|
||||
}
|
||||
|
||||
export default { get };
|
||||
""");
|
||||
return;
|
||||
}
|
||||
await next();
|
||||
|
||||
Reference in New Issue
Block a user