feat: standalone Blazor WebAssembly admin + SEO enhancements
Architecture: - Admin UI: /admin (Standalone Blazor WebAssembly, 219 WASM files) - Portal: /portal (Razor Pages, Cookie/OAuth auth) - Homepage: / (Razor Pages, SSR) - API: /api (FastEndpoints + JWT) SEO: - Sitemap: Public content only (blog, FAQ, announcements, contact) - robots.txt: Exclude /admin and /portal, reference production domain - Naver verification: naverb1813cd79ddc2ded5c5291fca5cb46c2.html ready Technical: - TaxBaik.Web.Client: StaticWebAssetBasePath=admin - Server Program.cs: UseBlazorFrameworkFiles + MapFallback for SPA routing - base href="/admin/" for client-side navigation - blazor.webassembly.js (standalone, not web.js) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
<div class="admin-metric-card @Accent cursor-pointer" @onclick="OnClick">
|
||||
<div class="admin-metric-card-body">
|
||||
<span class="admin-metric-card-label">@Label</span>
|
||||
<div class="admin-metric-card-value-row">
|
||||
<span class="admin-metric-card-value" style="color: @ValueColor;">@Value</span>
|
||||
<span class="admin-metric-card-icon" style="color: @IconColor;">@Icon</span>
|
||||
</div>
|
||||
<span class="admin-metric-card-caption">@Caption</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@code {
|
||||
[Parameter, EditorRequired]
|
||||
public string Label { get; set; } = "";
|
||||
|
||||
[Parameter, EditorRequired]
|
||||
public object? Value { get; set; }
|
||||
|
||||
[Parameter, EditorRequired]
|
||||
public string Caption { get; set; } = "";
|
||||
|
||||
[Parameter, EditorRequired]
|
||||
public string Accent { get; set; } = "";
|
||||
|
||||
[Parameter, EditorRequired]
|
||||
public string Icon { get; set; } = "";
|
||||
|
||||
[Parameter]
|
||||
public string ValueColor { get; set; } = "inherit";
|
||||
|
||||
[Parameter]
|
||||
public string IconColor { get; set; } = "inherit";
|
||||
|
||||
[Parameter]
|
||||
public EventCallback OnClick { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user