summary refs log tree commit diff
path: root/extra/admin-api/Utilities/Spacebar.AdminApi.TestClient/Pages/ServerConfig.razor
blob: 4ecbf9d3621e389df6201894bf63d1ff2fe303fb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
@page "/ServerConfig"
@inject Config Config
@using System.Net.Http.Headers
@using System.Text.Json
@using ArcaneLibs
@using Spacebar.AdminApi.TestClient.Services
@using Spacebar.ConfigModel.Extensions
<h3>Server Config</h3>
@if (CurrentServerConfig is null) {
    <p>Loading server config...</p>
} else {
    <pre>@JsonSerializer.Serialize(CurrentServerConfig, new JsonSerializerOptions { WriteIndented = true })</pre>
}

@code {

    private Spacebar.ConfigModel.ServerConfiguration? CurrentServerConfig { get; set; } = new();
    
    protected override async Task OnInitializedAsync() {
        var hc = new StreamingHttpClient();
        hc.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Config.AccessToken);
        var cfgKv = await hc.GetFromJsonAsync<Dictionary<string, string?>>($"{Config.AdminUrl}/_spacebar/admin/config");
        var cfg = cfgKv.ToNestedJsonObject();
        CurrentServerConfig = cfg.Deserialize<Spacebar.ConfigModel.ServerConfiguration>();
    }

}