a web-based Rock Band 4 stats viewer and achievement tracker website
1using Microsoft.JSInterop;
2
3namespace davesave_web
4{
5 public class BrowserLocalStorage
6 {
7 private readonly IJSRuntime JSRuntime;
8
9 public BrowserLocalStorage(IJSRuntime runtime)
10 {
11 JSRuntime = runtime;
12 }
13
14 public async Task<string?> GetItem(string name)
15 {
16 Console.WriteLine("Fetching " + name);
17 return await JSRuntime.InvokeAsync<string?>("localStorage.getItem", name);
18 }
19
20 public async Task SetItem(string name, string? value)
21 {
22 await JSRuntime.InvokeVoidAsync("localStorage.setItem", name, value);
23 }
24
25 public async Task RemoveItem(string name)
26 {
27 await JSRuntime.InvokeVoidAsync("localStorage.removeItem", name);
28 }
29
30 public async Task Clear()
31 {
32 await JSRuntime.InvokeVoidAsync("localStorage.clear");
33 }
34 }
35}