Skip to content

Commit 86d5600

Browse files
authored
Merge branch 'CodeBeamOrg:dev' into CodeViewerComponent
2 parents 80d5cf9 + 196890a commit 86d5600

17 files changed

Lines changed: 74 additions & 253 deletions

File tree

docs/CodeBeam.MudBlazor.Extensions.Docs.Wasm/wwwroot/CodeBeam.MudBlazor.Extensions.xml

Lines changed: 0 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/CodeBeam.MudBlazor.Extensions.Docs/Pages/Components/ListExtended/Examples/ListExtendedExample3.razor

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
<MudCheckBox @bind-Value="_selectAll" Color="Color.Primary" Label="Select All" />
3131
<MudDivider />
3232
<MudTextField @bind-Value="_selectedValue" Clearable="true" />
33-
<MudSelect T="int?" @bind-SelectedValues="_selectedValues" MultiSelection="true" Variant="Variant.Filled" Label="Selected Values">
33+
<MudSelect T="int?" @bind-SelectedValues="_mSelectedValues" MultiSelection="true" Variant="Variant.Filled" Label="Selected Values">
3434
@foreach (var item in _list?.GetItems() ?? new())
3535
{
3636
<MudSelectItem Value="item.Value">@item.Text</MudSelectItem>
@@ -57,8 +57,16 @@
5757
MudListExtended<int?>? _list;
5858
int? _selectedValue = 1;
5959
IEnumerable<int?> _selectedValues = new List<int?>();
60+
IReadOnlyCollection<int?> _mSelectedValues;
6061
MudListItemExtended<int?>? _selectedItem;
6162
MudListItemExtended<int?> _thirdItem = new();
6263
MudListItemExtended<int?> _fifthItem = new();
6364
IEnumerable<MudListItemExtended<int?>> _selectedItems = new List<MudListItemExtended<int?>>();
65+
66+
protected override void OnInitialized()
67+
{
68+
base.OnInitialized();
69+
_mSelectedValues = _selectedValues as IReadOnlyCollection<int?> ?? _selectedValues.ToList();
70+
}
71+
6472
}

docs/CodeBeam.MudBlazor.Extensions.Docs/Pages/Components/SignaturePad/Examples/SignaturePadExample1.razor

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
@namespace MudExtensions.Docs.Examples
22
@using MudBlazor.Utilities
33
@using MudExtensions.Utilities
4-
4+
@inject IJSRuntime JsRuntime
55
<MudGrid>
66
<MudItem xs="12" sm="8">
7-
<MudSignaturePad @bind-Value="_value" @bind-Value:after="@(() =>BytesChanged(_value))"
7+
<MudSignaturePad @ref="_signaturePad" @bind-Value="_value" @bind-Value:after="@(() =>BytesChanged(_value))"
88
Options="_options"
99
ShowDownload="_showDownload"
1010
ShowClear="_showClear"
@@ -31,6 +31,9 @@
3131
<MudSelectExtended @bind-Value="@_variant" ItemCollection="@(Enum.GetValues<Variant>())" Label="Variant" Variant="Variant.Outlined" Margin="Margin.Dense" Dense="true" />
3232
<MudSelectExtended @bind-Value="@_color" ItemCollection="@(Enum.GetValues<Color>())" Label="Color" Variant="Variant.Outlined" Margin="Margin.Dense" Dense="true" />
3333
<MudNumericField @bind-Value="@_elevation" Min="0" Max="25" Label="Elevation" Variant="Variant.Outlined" Margin="Margin.Dense" />
34+
<MudButton Variant="Variant.Filled" Color="Color.Secondary" OnClick="(async () => await _signaturePad.ClearPad())">Clear</MudButton>
35+
<MudButton Variant="Variant.Filled" Color="Color.Secondary" OnClick="(async () => await _signaturePad.Download())">Download</MudButton>
36+
<MudButton Variant="Variant.Filled" Color="Color.Secondary" OnClick="(async () => await _signaturePad.IsEditToggled())">Toggle edit/erase mode</MudButton>
3437
</MudStack>
3538
</MudItem>
3639
</MudGrid>
@@ -46,6 +49,7 @@
4649
Variant _variant;
4750
Color _color;
4851
int _elevation = 4;
52+
MudSignaturePad _signaturePad = null!;
4953

5054
SignaturePadLocalizedStrings _localizedStrings = new SignaturePadLocalizedStrings();
5155

@@ -63,4 +67,5 @@
6367
{
6468
_value = bytes;
6569
}
70+
6671
}

src/CodeBeam.MudBlazor.Extensions/Base/MudBaseInputExtended.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using Microsoft.AspNetCore.Components;
1+
using System.Diagnostics.CodeAnalysis;
2+
using Microsoft.AspNetCore.Components;
23
using Microsoft.JSInterop;
34
using MudBlazor;
45

@@ -16,6 +17,8 @@ public abstract class MudBaseInputExtended<T> : MudBaseInput<T>
1617
/// <summary>
1718
///
1819
/// </summary>
20+
[DynamicDependency(nameof(OnBeforeInputFromJs))]
21+
[DynamicDependency(DynamicallyAccessedMemberTypes.All, typeof(BeforeInputJsDto))]
1922
protected MudBaseInputExtended()
2023
{
2124
//using var registerScope = CreateRegisterScope();

src/CodeBeam.MudBlazor.Extensions/CodeBeam.MudBlazor.Extensions.csproj

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<ImplicitUsings>enable</ImplicitUsings>
77
<PackageLicenseExpression>MIT</PackageLicenseExpression>
88
<PackageReadmeFile>README.md</PackageReadmeFile>
9-
<Version>9.0.0-preview.4</Version>
9+
<Version>9.0.0-rc.1</Version>
1010
<Title>CodeBeam.MudBlazor.Extensions</Title>
1111
<PackageId>CodeBeam.MudBlazor.Extensions</PackageId>
1212
<Authors>CodeBeam</Authors>
@@ -22,7 +22,7 @@
2222
</PropertyGroup>
2323

2424
<PropertyGroup>
25-
<IsTrimmable>false</IsTrimmable>
25+
<IsTrimmable>true</IsTrimmable>
2626
<TrimMode>link</TrimMode>
2727
<EnableTrimAnalyzer>true</EnableTrimAnalyzer>
2828
<GenerateDocumentationFile>True</GenerateDocumentationFile>
@@ -41,12 +41,10 @@
4141
</ItemGroup>
4242

4343
<ItemGroup>
44-
<PackageReference Include="MudBlazor" Version="9.0.0-preview.2" />
44+
<PackageReference Include="MudBlazor" Version="9.0.0-rc.1" />
4545
</ItemGroup>
4646

47-
<Target Name="MinifyMudExtensionsJs" AfterTargets="Build" Condition="'$(CI)' != 'true'
48-
AND '$(TargetFramework)' == 'net10.0'
49-
AND Exists('TScripts/MudExtensions.js')">
47+
<Target Name="MinifyMudExtensionsJs" AfterTargets="Build" Condition="'$(CI)' != 'true'&#xD;&#xA; AND '$(TargetFramework)' == 'net10.0'&#xD;&#xA; AND Exists('TScripts/MudExtensions.js')">
5048
<Message Importance="high" Text="Minifying MudExtensions.js → MudExtensions.min.js" />
5149
<Exec WorkingDirectory="$(SolutionDir)" Command="dotnet run --project utilities\CodeBeam.MudBlazor.Extensions.JsMinifier\CodeBeam.MudBlazor.Extensions.JsMinifier.csproj --configuration $(Configuration)" />
5250
</Target>

src/CodeBeam.MudBlazor.Extensions/Components/ComboBox/MudComboBox.razor.cs

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -749,7 +749,7 @@ protected override void OnInitialized()
749749
else if (MultiSelection && SelectedValues != null)
750750
{
751751
// TODO: Check this line again
752-
SetValueAsync(SelectedValues.FirstOrDefault()).CatchAndLog();
752+
SetValueCoreAsync(SelectedValues.FirstOrDefault()).CatchAndLog();
753753
}
754754

755755
}
@@ -1285,22 +1285,6 @@ protected void DeselectAllItems()
12851285
}
12861286
}
12871287

1288-
/// <summary>
1289-
///
1290-
/// </summary>
1291-
/// <returns></returns>
1292-
public override async Task ForceUpdate()
1293-
{
1294-
await base.ForceUpdate();
1295-
if (!MultiSelection)
1296-
{
1297-
SelectedValues = new HashSet<T?>(_comparer) { Value };
1298-
}
1299-
else
1300-
{
1301-
await SelectedValuesChanged.InvokeAsync(new HashSet<T?>(SelectedValues, _comparer));
1302-
}
1303-
}
13041288

13051289
/// <summary>
13061290
///

src/CodeBeam.MudBlazor.Extensions/Components/DateWheelPicker/MudDateWheelPicker.razor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -573,7 +573,7 @@ protected string NumberToString(int val)
573573
/// <returns></returns>
574574
public async Task Clear()
575575
{
576-
await SetValueAsync(null);
576+
await SetValueCoreAsync(null);
577577
await InputReference.SetText(null);
578578
}
579579

src/CodeBeam.MudBlazor.Extensions/Components/PasswordField/MudPasswordField.razor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ public async Task SetText(string text)
160160

161161
private async Task OnMaskedValueChanged(string s)
162162
{
163-
await SetTextAsync(s);
163+
await SetTextCoreAsync(s);
164164
}
165165

166166
/// <summary>

src/CodeBeam.MudBlazor.Extensions/Components/SelectExtended/MudSelectExtended.razor

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@
137137
@if (ItemCollection != null || ChildContent != null)
138138
{
139139
<CascadingValue Value="@this" IsFixed="true">
140-
<MudListExtended @ref="@_list" T="T" @bind-SelectedValue:set="@SetValueAsync" @bind-SelectedValue:get="@ReadValue" Style="@($"overflow-y:auto; max-height: {MaxHeight}px")" @bind-SelectedValues="@SelectedValues" @bind-SelectedItem="@SelectedListItem" @bind-SelectedItems="@SelectedListItems"
140+
<MudListExtended @ref="@_list" T="T" @bind-SelectedValue:set="@SetValueCoreAsync" @bind-SelectedValue:get="@ReadValue" Style="@($"overflow-y:auto; max-height: {MaxHeight}px")" @bind-SelectedValues="@SelectedValues" @bind-SelectedItem="@SelectedListItem" @bind-SelectedItems="@SelectedListItems"
141141
Clickable="true" Color="@Color" Dense="@Dense" ItemCollection="@ItemCollection" Virtualize="@Virtualize" Padding="@EnablePopoverPadding" EnableSelectedItemStyle="@EnableSelectedItemStyle"
142142
MultiSelection="@MultiSelection" MultiSelectionComponent="@MultiSelectionComponent" MultiSelectionAlign="@MultiSelectionAlign" SelectAll="@SelectAll" SelectAllPosition="@SelectAllPosition" SelectAllText="@SelectAllText"
143143
CheckedIcon="@CheckedIcon" UncheckedIcon="@UncheckedIcon" IndeterminateIcon="@IndeterminateIcon" SelectValueOnTab="@SelectValueOnTab" Comparer="@Comparer" AddNullItem="@AddNullItem" AddedNullItemText="@AddedNullItemText"
@@ -162,7 +162,7 @@
162162

163163
<div style="display: none">
164164
<CascadingValue Value="@this" IsFixed="true">
165-
<MudListExtended T="T" @bind-SelectedValue:set="@SetValueAsync" @bind-SelectedValue:get="@ReadValue" @bind-SelectedValues="@SelectedValues" @bind-SelectedItem="@SelectedListItem" @bind-SelectedItems="@SelectedListItems"
165+
<MudListExtended T="T" @bind-SelectedValue:set="@SetValueCoreAsync" @bind-SelectedValue:get="@ReadValue" @bind-SelectedValues="@SelectedValues" @bind-SelectedItem="@SelectedListItem" @bind-SelectedItems="@SelectedListItems"
166166
Clickable="true" Color="@Color" Dense="@Dense" ItemCollection="@ItemCollection" Padding="@EnablePopoverPadding" EnableSelectedItemStyle="@EnableSelectedItemStyle"
167167
MultiSelection="@MultiSelection" MultiSelectionComponent="@MultiSelectionComponent" MultiSelectionAlign="@MultiSelectionAlign" SelectAll="@SelectAll" SelectAllPosition="@SelectAllPosition" SelectAllText="@SelectAllText"
168168
CheckedIcon="@CheckedIcon" UncheckedIcon="@UncheckedIcon" IndeterminateIcon="@IndeterminateIcon" SelectValueOnTab="@SelectValueOnTab" Comparer="@Comparer" AddNullItem="@AddNullItem" AddedNullItemText="@AddedNullItemText"

src/CodeBeam.MudBlazor.Extensions/Components/SelectExtended/MudSelectExtended.razor.cs

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -660,7 +660,7 @@ protected async Task SetCustomizedTextAsync(string? text, bool updateValue = tru
660660
Func<List<T?>, string?>? multiSelectionTextFunc = null)
661661
{
662662
// The Text property of the control is updated
663-
await SetTextAsync(multiSelectionTextFunc?.Invoke(selectedConvertedValues));
663+
await SetTextCoreAsync(multiSelectionTextFunc?.Invoke(selectedConvertedValues));
664664

665665
// The comparison is made on the multiSelectionText variable
666666
if (multiSelectionText != text)
@@ -1106,7 +1106,7 @@ public async Task SelectOption(object? obj)
11061106
return;
11071107
}
11081108

1109-
await SetValueAsync(value);
1109+
await SetValueCoreAsync(value);
11101110
//await UpdateTextPropertyAsync(false);
11111111
_elementReference.SetText(ReadText).CatchAndLog();
11121112
//_selectedValues.Clear();
@@ -1117,23 +1117,6 @@ public async Task SelectOption(object? obj)
11171117
await InvokeAsync(StateHasChanged);
11181118
}
11191119

1120-
//TODO: will override this method when core library will have the base one.
1121-
/// <summary>
1122-
///
1123-
/// </summary>
1124-
/// <returns></returns>
1125-
public override async Task ForceUpdate()
1126-
{
1127-
await base.ForceUpdate();
1128-
if (!MultiSelection)
1129-
{
1130-
SelectedValues = new HashSet<T?>(_comparer) { ReadValue };
1131-
}
1132-
else
1133-
{
1134-
await SelectedValuesChanged.InvokeAsync(new HashSet<T?>(SelectedValues, _comparer));
1135-
}
1136-
}
11371120

11381121
/// <summary>
11391122
///

0 commit comments

Comments
 (0)