Add live skill filtering and align tests with current campaign behavior

This commit is contained in:
2026-02-26 15:37:17 +01:00
parent 59fe453297
commit ba8141b336
8 changed files with 119 additions and 75 deletions

View File

@@ -221,6 +221,16 @@ public partial class CharacterPanel
}
}
private bool SkillMatchesFilter(SkillSummary skill)
{
if (string.IsNullOrWhiteSpace(SkillFilterText))
return true;
var filter = SkillFilterText.Trim();
return skill.Name.Contains(filter, StringComparison.OrdinalIgnoreCase) ||
skill.DiceRollDefinition.Contains(filter, StringComparison.OrdinalIgnoreCase);
}
private static string InitialsFor(string value)
{
var words = value.Split(' ', StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries);
@@ -245,6 +255,7 @@ public partial class CharacterPanel
private int CreateSkillFormVersion { get; set; }
private int EditSkillFormVersion { get; set; }
private bool IsSubmittingSkillGroup { get; set; }
private string SkillFilterText { get; set; } = string.Empty;
[Inject]
private RpgRollerApiClient ApiClient { get; set; } = null!;