Blazor UI component library based on Material Design. Support Blazor Server, Blazor WebAssembly and MAUI Blazor.
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.5.0...1.5.1
Masa.Blazor.MauiDemo adds support for login and logout.
PageStackNavController
service to solve some potential problems and provide more complete functionality.IsActive
parameter.Rounded
and WrapperStyle
parameters are deleted.Color
parameter only supports built-in primary, secondary, accent, surface, success, error, warning, info and standard CSS color values.
- <MBorder Color="pink"></Border>
+ <MBorder Color="#e91e63"></Border>
Button: add IconName
, LeftIconName
and RightIconName
to simplify the usage of icon buttons. #1863
<!-- before -->
<MButton Icon>
<MIcon>mdi-abc</MIcon>
</MButton>
<!-- now -->
<MButton IconName="mdi-abc" />
<!-- before -->
<MButton>
<MIcon Left>mdi-abc</MIcon>
Button
</MButton>
<!-- now -->
<MButton LeftIconName="mdi-abc">Button</MButton>
<!-- before -->
<MButton>
Button
<MIcon Right>mdi-abc</MIcon>
</MButton>
<!-- now -->
<MButton RightIconName="mdi-abc">Button</MButton>
Card: add sub-component parameter, includes Title
, Subtitle
and Text
. #1880
<!-- before -->
<MCard>
<MCardTitle>Title</MCardTitle>
<MCardSubtitle>Subtitle</MCardSubtitle>
<MCardText>Small plates, salads & sandwiches - an intimate setting with 12 indoor seats plus patio seating.</MCardText>
</MCard>
<!-- now -->
<MCard Title="Title"
Subtitle="Subtitle"
Text="Small plates, salads & sandwiches - an intimate setting with 12 indoor seats plus patio seating." />
DataTable: add support for cell ellipsis and custom cell content in Headers
. #1844
<!-- A quick preview of the 'Custom cell content' feature -->
<!-- before -->
<MDataTable TItem="Dessert" Headers="_headers" Items="_desserts" Class="elevation-1">
<ItemColContent>
@if (context.Header.Value == nameof(Dessert.Calories))
{
<MChip Color="@GetColor(context.Item.Calories)" Dark>
@context.Item.Calories
</MChip>
}
else
{
@context.Value
}
</ItemColContent>
</MDataTable>
<!-- now -->
<MDataTable TItem="Dessert" Headers="_headers" Items="_desserts" Class="elevation-1" />
@code {
private static RenderFragment CaloriesCell(Dessert dessert) => __builder =>
{
<MChip Color="@GetColor(dessert.CCalories)" Dark>
@dessert.Calories
</MChip>
};
private List<DataTableHeader<Dessert>> _headers = new List<DataTableHeader<Dessert>>
{
new()
{
Text = "Calories",
Value = nameof(Dessert.Calories),
CellRender = dessert => CaloriesCell(dessert) // ๐
},
...
}
}
ListItem: add sub-component parameters, includes Title
, Subtitle
, PrependAvatar
, PrependIcon
, AppendAvatar
and AppendIcon
. #1865
<!-- before -->
<MListItem>
<MListItemAvatar>
<MImage Src="http://..."></MImage>
</MListItemAvatar>
<MListItemContent>
<MListItemTitle>Title</MListItemTitle>
<MListItemSubtitle>Subtitle</MListItemSubtitle>
</MListItemContent>
<MListItemIcon>
<MIcon>mdi-abc</MIcon>
</MListItemIcon>
</MListItem>
<!-- now -->
<MListItem Title="Title"
Subtitle="Subtitle"
PrependAvatar="http://..."
AppendIcon="mdi-abc">
</MListItem>
Tabs: add support for setting the height and re-rendering the slider when switching RTL. #1851 #1875
Cascader: add support for custom delimiter. #1883
OptInput: add support for automatic focus the first input. #1874
Href
doesn't work. #1888@attribtues
. #1876IsActive
parameter. #1873Push
, Pop
, GoBack
, Replace
, Clear
and GoToTab
methods.
@inject PageStackNavController NavController
<MButton OnClick="@(() => NavController.Push("/stack-page"))">Go to stack page</MButton>
data-page-stack-strategy="push"
attribute to the a tag or component to automatically push onto the stack when clicked.
<a href="/stack-page" data-page-stack-strategy="push">Stack page</a>
<MButton Href="/stack-page" data-page-stack-strategy>Stack page</MButton>
OnPageActivated[Async]
and OnPageDeactivated[Async]
lifecycle methods.
@inherit PStackPageBase
@code {
protected override void OnPageActivated(object? state)
{
// `state` comes from the parameter passed when the previous page calls GoBack
}
}
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.5.0-beta.2...1.5.0-beta.3
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.5.0-beta.1...1.5.0-beta.2
Headers
by @capdiem in https://github.com/masastack/MASA.Blazor/pull/1844
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.4.2...1.5.0-beta.1
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.4.1...1.4.2
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.4.0...1.4.1
ShowWeek
and CalendarWeekRule
. https://github.com/masastack/MASA.Blazor/pull/1812
OutcomeContent
slot, providing the context of type DialogContentContext. https://github.com/masastack/MASA.Blazor/pull/1804
DataInitializer
func for initializing data, thanks to @pigwing. https://github.com/masastack/MASA.Blazor/pull/1786
UpdateConnectionNodesAsync
and RemoveConnectionNodeIdAsync
public method, thanks to @pigwing. https://github.com/masastack/MASA.Blazor/pull/1794 https://github.com/masastack/MASA.Blazor/pull/1797
ResetAsync
public method. https://github.com/masastack/MASA.Blazor/pull/1747
Parent
is set to window
by default. https://github.com/masastack/MASA.Blazor/pull/1801
OnAfter
EventCallback, thanks to @Yu-Core. https://github.com/masastack/MASA.Blazor/pull/1755
fade-transition
, use block scroll strategy and update the background color of scrim to on-surface
. https://github.com/masastack/MASA.Blazor/pull/1763
Closeable
state to tabs, thanks to @pankey888. https://github.com/masastack/MASA.Blazor/pull/1808
ElevateOnScroll
doesn't work when ScrollTarget
is window
. https://github.com/masastack/MASA.Blazor/pull/1803
Mandatory
doesn't work when value is null of type string. https://github.com/masastack/BlazorComponent/pull/569
parallel.foreach
. https://github.com/masastack/MASA.Blazor/pull/1771
OnInput
and ValueChanged
. https://github.com/masastack/BlazorComponent/pull/586
See https://docs.masastack.com/blazor/getting-started/upgrade-guide.
Additionally, we would like to express our gratitude to @wildwind2000 for his contributions (https://github.com/masastack/BlazorComponent/pull/555 https://github.com/masastack/BlazorComponent/pull/559) to the Treeview component. Due to the extensive nature of the changes and the lack of sufficient time and resources for testing, these modifications were not merged.
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.3.4...1.4.0
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.4.0-beta.4...1.4.0-beta.5
Parent
is set to window
by default by @capdiem in https://github.com/masastack/MASA.Blazor/pull/1801
Full Changelog: https://github.com/masastack/MASA.Blazor/compare/1.4.0-beta.3...1.4.0-beta.4