@page "/login" @rendermode InteractiveServer @using CannedNet.Admin.Services @inject AdminAuthService AuthService @inject NavigationManager Navigation Login @if (AuthService.HasAnyUser() == false) {

No Admin Accounts

No admin accounts exist yet. Complete the first-time setup.

Go to Setup
} else {

Admin Login

@if (errorMessage != null) {
@errorMessage
}
} @code { private string? errorMessage; protected override void OnInitialized() { var uri = new Uri(Navigation.Uri); var query = Microsoft.AspNetCore.WebUtilities.QueryHelpers.ParseQuery(uri.Query); var error = query.TryGetValue("error", out var val) ? val.FirstOrDefault() : null; errorMessage = error switch { "invalid" => "Invalid username or password.", "missing" => "Please enter both username and password.", "expired" => "Your session has expired. Please log in again.", _ => null }; } }