@using Moonlight.Shared.Http
@using Moonlight.Shared.Http.Responses.Admin.Auth
@using ShadcnBlazor.Cards
@using ShadcnBlazor.Spinners
@using ShadcnBlazor.Buttons
@inject HttpClient HttpClient
@inject NavigationManager Navigation
@if (Schemes == null || Schemes.Length == 1)
{
}
else
{
Login to WebApp
Select a login provider to continue
}
@code
{
private SchemeDto[]? Schemes;
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (!firstRender)
return;
var schemes = await HttpClient.GetFromJsonAsync(
"api/auth", SerializationContext.Default.Options
);
if (schemes == null)
return;
Schemes = schemes;
if (schemes.Length == 1)
Navigation.NavigateTo($"/api/auth/{schemes[0].Name}", true);
}
}