From cd364bddf187b5e3cd1aca3ab070891ffc075890 Mon Sep 17 00:00:00 2001 From: Maxime Adler Date: Thu, 15 May 2025 14:58:42 +0200 Subject: [PATCH] Fix ordering dropdown --- .../Shared/Components/Select/Select.razor | 4 ++-- .../Shared/Components/Select/Select.razor.cs | 8 ++++++++ .../Shared/Components/SelectSearch/SelectSearch.razor.cs | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/GameIdeas/Client/GameIdeas.BlazorApp/Shared/Components/Select/Select.razor b/src/GameIdeas/Client/GameIdeas.BlazorApp/Shared/Components/Select/Select.razor index 87519ff..c4cdad9 100644 --- a/src/GameIdeas/Client/GameIdeas.BlazorApp/Shared/Components/Select/Select.razor +++ b/src/GameIdeas/Client/GameIdeas.BlazorApp/Shared/Components/Select/Select.razor @@ -27,7 +27,7 @@ @if (Params.Headers != null) { - @foreach (var header in (HeaderValues ?? []).UnionBy(Params.Headers, Params.GetHeaderLabel).OrderBy(Params.GetHeaderOrder ?? Params.GetHeaderLabel)) + @foreach (var header in GetHeaders()) { await ValuesChanged.InvokeAsync(Values); } } + + private List GetHeaders() => [.. (HeaderValues ?? []) + .UnionBy(Params.Headers, Params.GetHeaderLabel) + .OrderBy(Params.GetHeaderOrder ?? Params.GetHeaderLabel)]; + + private List GetItems() => [.. (Values ?? []) + .UnionBy(Params.Items, Params.GetItemLabel) + .OrderBy(Params.GetItemOrder ?? Params.GetItemLabel)]; } \ No newline at end of file diff --git a/src/GameIdeas/Client/GameIdeas.BlazorApp/Shared/Components/SelectSearch/SelectSearch.razor.cs b/src/GameIdeas/Client/GameIdeas.BlazorApp/Shared/Components/SelectSearch/SelectSearch.razor.cs index 6726893..7f1fa6a 100644 --- a/src/GameIdeas/Client/GameIdeas.BlazorApp/Shared/Components/SelectSearch/SelectSearch.razor.cs +++ b/src/GameIdeas/Client/GameIdeas.BlazorApp/Shared/Components/SelectSearch/SelectSearch.razor.cs @@ -10,7 +10,7 @@ public partial class SelectSearch [Parameter] public SelectTheme Theme { get; set; } [Parameter] public List Items { get; set; } = []; [Parameter] public Func GetLabel { get; set; } = _ => string.Empty; - [Parameter] public Func? OrderBy { get; set; } = _ => string.Empty; + [Parameter] public Func? OrderBy { get; set; } [Parameter] public List Values { get; set; } = []; [Parameter] public EventCallback> ValuesChanged { get; set; } [Parameter] public string Placeholder { get; set; } = string.Empty;