Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/BootstrapBlazor.Server/Components/Pages/Coms.razor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ public sealed partial class Coms
return Task.FromResult<IEnumerable<string?>>(ComponentItems.Where(i => i.Contains(searchText, StringComparison.OrdinalIgnoreCase)).ToList());
}

private Task OnClear(string searchText)
private Task OnClear()
{
SearchText = "";
StateHasChanged();
Expand Down
3 changes: 1 addition & 2 deletions src/BootstrapBlazor.Server/Components/Samples/Searches.razor
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@
Name="DisplayButton">
<Search PlaceHolder="@Localizer["SearchesPlaceHolder"]"
ShowClearButton="true"
OnSearch="@OnDisplaySearch"
OnClear="@OnClear"></Search>
OnSearch="@OnDisplaySearch"></Search>
<ConsoleLogger @ref="DisplayLogger"></ConsoleLogger>
</DemoBlock>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,6 @@ private Task<IEnumerable<string>> OnDisplaySearch(string searchText)
return Task.FromResult<IEnumerable<string>>([$"{searchText}1", $"{searchText}12", $"{searchText}123"]);
}

private Task<IEnumerable<string>> OnClear(string searchText)
{
DisplayLogger.Log($"OnClear: {searchText}");
return Task.FromResult<IEnumerable<string>>([$"{searchText}1", $"{searchText}12", $"{searchText}123"]);
}

[NotNull]
private ConsoleLogger? KeyboardLogger { get; set; }

Expand Down
40 changes: 19 additions & 21 deletions src/BootstrapBlazor/Components/EditorForm/EditorForm.razor
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,32 @@
@inherits BootstrapComponentBase

<div class="@ClassString">
<CascadingValue Value="@_editorItems" IsFixed="true">
<CascadingValue Value="@_editorItems" IsFixed="false">
@FieldItems?.Invoke(Model)
</CascadingValue>
<CascadingValue Value="this" Name="EditorForm">
<RenderTemplate>
@if (ShowUnsetGroupItemsOnTop)
@if (ShowUnsetGroupItemsOnTop)
{
if (UnsetGroupItems.Any())
{
if (UnsetGroupItems.Any())
{
@RenderUnsetGroupItems
}
@foreach (var g in GroupItems)
{
@RenderGroupItems(g)
}
@RenderUnsetGroupItems
}
else
@foreach (var g in GroupItems)
{
@foreach (var g in GroupItems)
{
@RenderGroupItems(g)
}
if (UnsetGroupItems.Any())
{
@RenderUnsetGroupItems
}
@RenderGroupItems(g)
}
}
else
{
@foreach (var g in GroupItems)
{
@RenderGroupItems(g)
}
if (UnsetGroupItems.Any())
{
@RenderUnsetGroupItems
}
</RenderTemplate>
}
</CascadingValue>

@if (Buttons != null)
Expand Down
10 changes: 5 additions & 5 deletions src/BootstrapBlazor/Components/Search/Search.razor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ public partial class Search<TValue>
/// Gets or sets the event callback when the clear button is clicked. Default is null.
/// </summary>
[Parameter]
public Func<string?, Task>? OnClear { get; set; }
public Func<Task>? OnClear { get; set; }

[Inject]
[NotNull]
Expand Down Expand Up @@ -221,18 +221,17 @@ private async Task OnSearchClick()
{
await InvokeVoidAsync("showList", Id);
}
StateHasChanged();
}
}

private async Task OnClearClick()
{
_displayText = "";
if (OnClear != null)
{
await OnClear(_displayText);
await OnClear();
}
_displayText = "";
_filterItems = [];
await OnSearchClick();
}

private string? GetDisplayText(TValue item)
Expand Down Expand Up @@ -272,6 +271,7 @@ public async Task TriggerFilter(string val)
if (IsTriggerSearchByInput)
{
await OnSearchClick();
StateHasChanged();
}
_dropdown.Render();
}
Expand Down
2 changes: 1 addition & 1 deletion test/UnitTest/Components/SearchTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ public async Task OnClearClick_Ok()
builder.Add(s => s.ClearButtonColor, Color.Secondary);
builder.Add(s => s.ClearButtonIcon, "test-icon");
builder.Add(s => s.ClearButtonText, "Clear");
builder.Add(s => s.OnClear, v =>
builder.Add(s => s.OnClear, () =>
{
ret = true;
return Task.CompletedTask;
Expand Down