1 files changed, 50 insertions, 0 deletions
diff --git a/testFrontend/SafeNSound.Demo/Pages/Home.razor b/testFrontend/SafeNSound.Demo/Pages/Home.razor
new file mode 100644
index 0000000..ae35214
--- /dev/null
+++ b/testFrontend/SafeNSound.Demo/Pages/Home.razor
@@ -0,0 +1,50 @@
+@page "/"
+@using System.Text.Json.Nodes
+@implements IDisposable
+
+<PageTitle>Home</PageTitle>
+
+<h1>SafeNSound</h1>
+
+<p>Welcome to SafeNSound! This application is purely a demonstration of the basic concepts in SafeNSound!</p>
+<p>Here be dragons!</p>
+
+<pre>
+ @serverStatus?.ToJson(indent: true)
+</pre>
+
+@code {
+
+ private bool running = true;
+ private JsonObject? serverStatus { get; set; }
+
+ protected override async Task OnInitializedAsync() {
+ _ = PollServerStatus();
+ }
+
+ private async Task PollServerStatus() {
+ while (running) {
+ try {
+ serverStatus = await App.UserClient.HttpClient.GetFromJsonAsync<JsonObject>("/status");
+ }
+ catch (Exception ex) {
+ serverStatus = new JsonObject {
+ ["error"] = ex.Message
+ };
+ }
+ StateHasChanged();
+ await Task.Delay(1000);
+ }
+ }
+
+ private void ReleaseUnmanagedResources() {
+ running = false;
+ }
+
+ public void Dispose() {
+ ReleaseUnmanagedResources();
+ GC.SuppressFinalize(this);
+ }
+
+ ~Home() => ReleaseUnmanagedResources();
+}
\ No newline at end of file
|