Files
ZeroSpace/ZeroSpace/ZeroSpace.Web/Components/ReleaseGuard.razor
T
JonathanMcCaffrey 79391638f2 AI: Central SiteMap controls released vs in-development pages
- New SiteMap registry: single source of truth for page visibility.
  Fail-closed: unlisted or Released=false pages are hidden.
- NavMenu renders nav links from SiteMap.NavEntries (galaxy only).
- New Components/ReleaseGuard wraps the Router's Found template:
  unreleased routes redirect to /galaxy (covers direct URLs).
- Galaxy map released; system/mastery detail dossiers released but
  not in nav (linked from the map); Home, indexes, Units hidden.
- Brand logo now links to /galaxy.
2026-09-29 14:10:34 +00:00

24 lines
561 B
Plaintext

@inject NavigationManager Navigation
@* Route guard: unreleased pages (see SiteMap) bounce to the galaxy map. *@
@if (_released)
{
<RouteView RouteData="@RouteData" DefaultLayout="@typeof(MainLayout)"/>
}
@code {
[Parameter, EditorRequired]
public RouteData RouteData { get; set; } = default!;
private bool _released;
protected override void OnInitialized()
{
_released = SiteMap.IsReleased(RouteData.PageType);
if (!_released)
{
Navigation.NavigateTo("/galaxy", replace: true);
}
}
}