Skip to content

Commit 7f01d38

Browse files
authored
ChipField Fix Regression (#530)
1 parent 3fa432a commit 7f01d38

File tree

4 files changed

+57
-15
lines changed

4 files changed

+57
-15
lines changed
Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
@page "/visualtest"
22

3-
<MudStack>
3+
<MudContainer Class="gap-4" MaxWidth="MaxWidth.Medium">
44
<MudStack Row="true">
5-
<MudSelect T="string" />
6-
<MudSelectExtended T="string" />
7-
</MudStack>
8-
<MudStack Row="true">
9-
<MudSelect T="string" Variant="Variant.Outlined" />
10-
<MudSelectExtended T="string" Variant="Variant.Outlined" />
11-
</MudStack>
12-
<MudStack Row="true">
13-
<MudSelect T="string" Variant="Variant.Filled" />
14-
<MudSelectExtended T="string" Variant="Variant.Filled" />
5+
<MudSelect T="Color" Margin="@(_margin ? Margin.Dense : Margin.Normal)" Dense="@_dense" Variant="@_variant" Label="Label" Clearable>
6+
@foreach (var item in Enum.GetValues<Color>())
7+
{
8+
<MudSelectItem Value="@item">@item</MudSelectItem>
9+
}
10+
</MudSelect>
11+
<MudSelectExtended T="Color" Margin="@(_margin ? Margin.Dense : Margin.Normal)" Dense="@_dense" Variant="@_variant" Label="Label" Clearable>
12+
@foreach (var item in Enum.GetValues<Color>())
13+
{
14+
<MudSelectItemExtended Value="@item">@item</MudSelectItemExtended>
15+
}
16+
</MudSelectExtended>
1517
</MudStack>
1618

1719
<MudStack Row="true">
@@ -26,5 +28,20 @@
2628
<MudTextField T="string" Variant="Variant.Filled" />
2729
<MudTextFieldExtended T="string" Variant="Variant.Filled" />
2830
</MudStack>
29-
</MudStack>
31+
<MudStack>
32+
<MudSwitchM3 @bind-Value="_dense" Label="Dense" />
33+
<MudSwitchM3 @bind-Value="_margin" Label="Margin" />
34+
<MudSelectExtended @bind-Value="_variant">
35+
@foreach (var item in Enum.GetValues<Variant>())
36+
{
37+
<MudSelectItemExtended Value="@item">@item</MudSelectItemExtended>
38+
}
39+
</MudSelectExtended>
40+
</MudStack>
41+
</MudContainer>
3042

43+
@code {
44+
private bool _dense;
45+
private bool _margin;
46+
private Variant _variant;
47+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
using MudExtensions.Docs.Examples;
2+
using FluentAssertions;
3+
using Bunit;
4+
using Microsoft.AspNetCore.Components;
5+
using Microsoft.AspNetCore.Components.Web;
6+
7+
namespace MudExtensions.UnitTests.Components
8+
{
9+
[TestFixture]
10+
public class ChipFieldTests : BunitTest
11+
{
12+
[Test]
13+
public async Task ChipFieldBasicTest()
14+
{
15+
var comp = Context.RenderComponent<MudChipField<string>>(opt =>
16+
{
17+
opt.Add(a => a.Values, new List<string> { "asdf", "asd" });
18+
});
19+
var field = comp.FindComponent<MudTextFieldExtended<string>>();
20+
field.Find("input").Input(new ChangeEventArgs() { Value = "sdfg" });
21+
await comp.InvokeAsync(() => comp.Instance.HandleKeyDown(new KeyboardEventArgs() { Key = " " }));
22+
comp.Instance.Values.Should().BeEquivalentTo(new List<string> { "asdf", "asd", "sdfg" });
23+
comp.Instance.Value.Should().BeEquivalentTo(null);
24+
}
25+
}
26+
}

CodeBeam.MudBlazor.Extensions/Components/ChipField/MudChipField.razor

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,7 @@
4242
Variant="@Variant"
4343
@bind-Value="@_internalValue"
4444
TextChanged="@(async() => await TextChanged.InvokeAsync())"
45-
ShowVisualiser="@(Values?.Any() ?? false)"
46-
Mask="@Mask">
45+
ShowVisualiser="@(Values?.Any() ?? false)">
4746

4847
<DataVisualiser>
4948
<MudChipSet T="T" Class="@ChipClassname" Style="@ChipStylename" AllClosable="@Closeable" OnClose="Closed">

CodeBeam.MudBlazor.Extensions/Components/ChipField/MudChipField.razor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ public partial class MudChipField<T> : MudTextFieldExtended<T>
120120
/// </summary>
121121
/// <param name="args"></param>
122122
/// <returns></returns>
123-
protected async Task HandleKeyDown(KeyboardEventArgs args)
123+
protected internal async Task HandleKeyDown(KeyboardEventArgs args)
124124
{
125125
var result = args.Key;
126126
if (result.Equals(Delimiter, StringComparison.InvariantCultureIgnoreCase) && _internalValue != null)

0 commit comments

Comments
 (0)