40 lines
979 B
Plaintext
40 lines
979 B
Plaintext
@inject Salmon.Core.Instance Salmon;
|
|
|
|
<div Style="display:flex;flex-wrap:wrap; height:100%;">
|
|
@foreach (var e in Elements)
|
|
{
|
|
<ElementCard Target=e />
|
|
}
|
|
</div>
|
|
|
|
@code {
|
|
[Parameter]
|
|
public string? FilterByParent { get; set; } = null;
|
|
|
|
List<Element> Elements { get; set; } = new();
|
|
private static System.Timers.Timer Time = new System.Timers.Timer(5000);
|
|
|
|
protected async override Task OnInitializedAsync()
|
|
{
|
|
await base.OnInitializedAsync();
|
|
|
|
Time.Elapsed += async (Object? source, System.Timers.ElapsedEventArgs e) =>
|
|
{
|
|
await InvokeAsync(() => Refresh());
|
|
};
|
|
Time.AutoReset = true;
|
|
Time.Enabled = true;
|
|
|
|
Refresh();
|
|
}
|
|
|
|
public void Refresh()
|
|
{
|
|
Elements = Salmon.GetAllElements().ToList();
|
|
if (FilterByParent is not null)
|
|
Elements = Elements.Where(x => x.ParentId == FilterByParent).ToList();
|
|
|
|
StateHasChanged();
|
|
}
|
|
}
|