@page "/graph" @using Public_API.Shared.Models @inject HttpClient http <h3>Graph</h3> <!-- TODO : List of sensors here--> <label for="sensor">Sensor: </label> @if (sensors == null) { <p><em>Loading...</em></p> } else { <select name="sensor" @onchange="@OnSensorSelectChange"> <option disabled>Select...</option> @foreach (Sensor s in sensors) { <option value="@s.sensorID">@s.friendlyName</option> } </select> } <!-- TODO : Show data for each sensor here --> @if (targetSensor != null) { <h3>Sensor Selected: @targetSensor.friendlyName</h3> <!-- TODO Graphs here! --> } @code { private Sensor[] sensors; private Sensor targetSensor; protected override async Task OnInitializedAsync() { sensors = await http.GetFromJsonAsync<Sensor[]>("api/GetSensorList"); } public async Task OnSensorSelectChange(ChangeEventArgs e) { targetSensor = await http.GetFromJsonAsync<Sensor>("api/GetSensorByID/" + e.Value.ToString()); } }