From e4ac3ab0d9f798b436ba5ed66448d653b3bac9b2 Mon Sep 17 00:00:00 2001 From: Kevin Matsubara Date: Fri, 28 Mar 2025 20:56:05 +0100 Subject: [PATCH] Create templated generic Repeater component for server list items. This also is usefull to reduce the amount of null checking if-statements. --- .../Controls/Generic/RepeaterComponent.razor | 24 +++++++++++++++++++ .../Controls/ServerListComponent.razor | 13 +++++----- 2 files changed, 30 insertions(+), 7 deletions(-) create mode 100644 ServerManagement/Components/Controls/Generic/RepeaterComponent.razor diff --git a/ServerManagement/Components/Controls/Generic/RepeaterComponent.razor b/ServerManagement/Components/Controls/Generic/RepeaterComponent.razor new file mode 100644 index 0000000..d4f1a5b --- /dev/null +++ b/ServerManagement/Components/Controls/Generic/RepeaterComponent.razor @@ -0,0 +1,24 @@ +@typeparam TItem + +@Header +@if (Items != null && Items.Count > 0 && Row != null) +{ + + @Row(item) + +} +@Footer + +@code { + [Parameter] + public List? Items { get; set; } + + [Parameter] + public RenderFragment? Row { get; set; } + + [Parameter] + public RenderFragment? Header { get; set; } + + [Parameter] + public RenderFragment? Footer { get; set; } +} \ No newline at end of file diff --git a/ServerManagement/Components/Controls/ServerListComponent.razor b/ServerManagement/Components/Controls/ServerListComponent.razor index 3372a3e..87fe56e 100644 --- a/ServerManagement/Components/Controls/ServerListComponent.razor +++ b/ServerManagement/Components/Controls/ServerListComponent.razor @@ -1,11 +1,10 @@ -@if (this.servers != null && this.servers.Count > 0) -{ -
    - +
      + + - -
    -} + + +
@code { private List? servers;