Skip to content

Commit 3048a85

Browse files
v2.0.0 (#243)
* feat: support Tailwind CSS v4 (#183) * build(deps): bump TailwindMerge.NET from 0.3.0 to 1.0.0 * feat: add new CSS theme file * feat/build: add custom targets file to improve library usability * chore: move `Plugin` folder one level higher; remove `Scripts` folder * feat/build: pack new theme and custom `.targets` files * build(docs): add `Directory.Build.props` and `Directory.Build.targets` * chore(docs): remove tailwind npm deps; use standalone CLI instead * docs: apply `static` on theme * refactor(theme-provider): simplify names of box-shadow css variables * refactor(theme-provider): opacities are percentage to match `color-mix` function syntax * chore(components): apply `static` on theme; fix some vars * refactor(components): drop Tailwind CSS v3 support * feat(theme): add custom transition variables * fix(theme): correct `default` color; add `default-foreground` color * chore(theme): add reference for the custom transitions approach (it's not in docs afaik) * fix: rename `shadow-sm` to `shadow-xs` * fix: rename `rounded-sm` to `rounded-xs` * fix: rename `rounded` to `rounded-sm` * fix: rename `outline-none` to `outline-hidden` * fix: rename `ring-1` to `ring` * fix(button): add base `cursor-pointer` class * docs: remove `children` custom variant in favor of `*` * fix(theme): correct `enter` custom animation * chore(components): cleanup styles * fix(theme): add missing comma separator in custom transition vars * docs: configure typography * refactor(theme): simplify `scrollbar-hide` utility * chore(theme): apply `inline` on theme * refactor: replace `theme` function with CSS vars * fix(components): correct scale/translate transitions * feat(theme): update colors from hex to oklch * docs(installation): update installation guide * feat(theme): add leading CSS vars * chore(docs): fix prose `<code>` tag ticks * refactor(utils): remove hex luminance calculator * docs(customization): update Theme and Colors pages * docs(colors): remove 'common colors are not configurable' callout * fix(checkbox): correct radius styles * fix(data-grid): correct striped styles * fix(input/select): correct label placement out transitions * fix(input/select): correct outlined variant focus styles * fix(input): add cursor-pointer style on the clear button * fix(input/select): correct flat variant focus styles * fix(docs): correct some component examples * build(docs): adjust Tailwind standalone CLI file download for Linux * build(docs): adjust Tailwind standalone CLI file download for Linux * ci(deploy): try add staging env in the ci/cd * ci(build-test): change trigger branch * ci(deploy): update trigger branches * ci(deploy): change env vars usage (test) * ci: add deploy-dev.yml; revert deploy.yml * ci(deploy): test staging * chore(docs): nits * chore(components): tweak styles of some components * chore(docs): tweak some components examples * chore: coderabbit comments * ci: remove deploy-dev.yml * fix(theme): remove extra shade (950) from the color scales for consistency in dark mode (#199) * fix(theme): remove extra key (950) from the color scales for consistency in dark mode * build(docs): explicitly set Tailwind v4.0.9 * feat(components): introduce Avatar and AvatarGroup components (#201) * feat: add baseline implementation * feat: add slots * feat: add basic slots styles * feat: add appearance params, such as `Color`, `Radius`, `Size` * feat: add `Bordered` and `Disabled` params * feat: add compound variants styles * feat: apply slots styles * docs: add baseline examples page * feat: add `data-loaded` attribute on img * feat: add `ShowFallback` parameter * chore: fix compound style variants * chore: set `showFallback` on after first render * feat(utils): add implicit cast to string for the `ElementClass` * feat: add LumexAvatarGroup component * feat: take into account when LumexAvatar is rendered inside the LumexAvatarGroup * feat: add `AvatarClasses` parameter in the avatar group component * docs: add Avatar page * build(docs): explicitly set Tailwind v4.0.9 * test: add tests for LumexAvatar and LumexAvatarGroup components * chore: simplify condition for fallback render * fix(docs): replace usages of `-foreground-950` CSS classes with `-foreground-900` * fix(docs): remove `dark:prose-invert` CSS class until dark theme is properly configured * feat(components): introduce Skeleton component (#202) * feat(skeleton): add baseline implementation of the component * feat(skeleton): add slots and styles * feat(skeleton): add XML summaries * fix(skeleton): return back `after` pseudo CSS classes to prevent flickering on state change * docs(skeleton): add Skeleton page * test(skeleton): add tests * docs(skeleton): fix Loading example button text * fix(navbar): add a check before toggling navbar menu on navigation (#204) * feat(components): introduce Spinner component (#207) * feat(spinner): add baseline implementation * feat(spinner): add variants and styles * feat(spinner): add slots * docs(spinner): add Spinner page * docs: nits * test(spinner): add tests * docs: map static assets * build(docs): remove extra MSBuild target for the Tailwind prod build * docs: revert static assets changes * docs: update static assets usage * Revert "docs: update static assets usage" This reverts commit 94ae9ec. * feat(components): introduce Chip component (#211) * feat(chip): add baseline implementation * feat(chip): add ChipVariant enum * feat(chip): add appearance parameters and styles * feat(chip): add AvatarContent parameter * feat(chip): adjust paddings when chip has start/end content * docs(chip): add Chip page * feat(chip): add XML summaries * test(chip): add tests * chore(components): add missing XML documentation summaries * feat(components): add new Badge component (#222) * feat(badge): initial * feat(badge): add badge slots * feat(badge): add badge baseline implementation * feat(badge): add base visual-related params * feat(badge): add majority of badge styles * feat(badge): add outline around badge * feat(badge): add `Invisible` param to control badge visibility * feat(badge): add `IsOneChar` param to make badge equilateral * feat(badge): decrease badge dimensions if no content provided * refactor(badge): rename `IsOneChar` param to `OneChar` * fix(badge): use correct type for `Variant` param * feat(badge): apply CSS classes directly to the badge slot * fix(badge): ensure correct placement styles * fix(badge): correct `Content` check condition * fix(badge): allow null for content * fix(badge): properly render Content as RenderFragment * docs(badge): add Badge docs page * test(badge): add tests * test(badge): add more tests * fix(badge): ensure `OneChar` param is taken into account * fix(badge): fix one char switch * chore: apply CodeRabbit suggestions * build(deps): bump requests from 2.32.0 to 2.32.4 in /scripts (#219) Bumps [requests](https://github.com/psf/requests) from 2.32.0 to 2.32.4. - [Release notes](https://github.com/psf/requests/releases) - [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md) - [Commits](psf/requests@v2.32.0...v2.32.4) --- updated-dependencies: - dependency-name: requests dependency-version: 2.32.4 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(components): add Tooltip component (#224) * feat(tooltip): initial * refactor(popover): introduce PopoverWrapper to simplify open state * fix(popover): ensure arrow is positioned correctly * fix(popover): ensure popover closes on trigger click if already opened * fix(popover): position flicker * test(popover/dropdown): adjust tests * refactor(popover): remove LastShown meta from popover service * feat(tooltip): add baseline implementation * feat(tooltip): add common visual-related parameters to pass into popover * feat(tooltip): add OpenDelay and CloseDelay params * docs(tooltip): add Tooltip page * feat(tooltip): pass slots to popover * chore(popover): add full radius styles * test(tooltip): add tests * docs(tooltip): minor tweaks * docs(tooltip): typo * feat(components): add Alert component (#225) * feat(alert): add baseline implementation * feat(alert): add styles (may be not complete) * feat(alert): complete styles * feat(button): add full radius styles * feat(alert): apply styles * feat(alert): add close button handler * chore(alert): complete XML docs summaries * chore(docs): adjust background colors for preview and toolbar * chore(components): darken text color for warning flat variant * chore(alert): styling tweaks * feat(docs): add Alert page * chore(alert): add missing close-button slot attribute * chore(alert): ensure TitleContent takes precedence over Title * docs(alert): add callout regarding Title and TitleContent parameters usage * test(alert): add tests * fix(theme): add tw custom CSS class-based dark mode variant (#226) * refactor(theme): replace C# theme config with a new CSS-first approach (#229) * feat(theme): add light and dark theme CSS files * refactor(components): cleanup theme provider * refactor(theme): remove Theme directory * test(theme): remove Theme directory * docs(theme): remove theme config * fix(alert): correct RenderFragment parameters usage * chore(theme): correct theme variables * docs(customization): replace Customization section with Theming * test(theme-provider): remove all tests * feat(theme): introduce a mechanism to toggle light/dark modes (#230) * feat(theme): introduce Theme service to manage and persist theme settings (JS) * feat(theme): introduce Theme service to manage and persist theme settings * docs(*): rename ComponentStatus enum to PageStatus * docs(theming): add Dark Mode page * chore(docs): component rename * feat(button): add new `IconOnly` parameter * docs(button): add demo for `IconOnly` parameter * refactor(*): remove all bundled Google Material Icons and related code (#232) * build: add new shared icons project * feat(icons): add base icon component * feat(icons): add dynamic icon component * feat(icons): add some icons * build(deps): reference icons in components * refactor(accordion): use new icon components * docs(components): use new icons in Callout components * docs(*): use new icons * refactor(icons): add "Icon" suffix; add more icons * docs(*): use new icons * test(*): fix tests * refactor(components): remove `LumexIcon` component * docs(datagrid): formatting * refactor(icons): remove all Google Material Icons * refactor(icons): remove script for downloading/updating icons * feat(components): add dark mode support (#234) * feat(alert): add dark mode support * feat(button): add dark mode support * feat(chip): add dark mode support * feat(datagrid): add dark mode support * feat(textbox/numbox): add dark mode support * feat(listbox): add dark mode support * feat(menu): add dark mode support * feat(select): add dark mode support * feat(tabs): add dark mode support * fix(theme): ensure default values are of correct shade in dark mode * feat(theme): add `color-scheme` in light theme * fix(icons): use better icons for alert component * docs: add dark mode support + theme toggle (#235) * docs: add dark mode support * docs: add missing border for the preview component * docs: remove extra border in the preview code component * chore(badge): improve flat variant contrast in light theme * chore(tabs): remove `EditorRequired` attribute from `Id` param * docs: add null check and theme class cleanup to prevent issues * docs: remove IPopoverService injection from theme toggle component * chore(components): remove unused / redundant types * fix(data-grid): correct outside click handler creation * feat(popover): enable position autoUpdate * refactor(popover): make use of popover trigger component instead of service * feat(dropdown): introduce dropdown trigger component instead of relying on popover service * docs(dark-mode): update theme toggle dropdown example * docs: add Home page with library usage examples (#241) * feat(icons): add more icons * docs: add showcases on home page * chore(components): adjust some styles * docs(overview): update paths * chore(docs): nits * fix(components): add missing popover js parts * chore(docs): nits * fix(popover): use overlay to close instead of custom outside click event * fix(tooltip): remove pressed effect from on trigger hover * chore(showcases): complete column visibility toggling in UserTable example * chore(showcases): adjust legend color in usage chart * test(popover): update tests * chore(docs): coderabbit suggestions * chore(*): migrate to DigitalOcean app platform * fix(*): update custom LumexUI targets to copy theme files before build * chore(*): add missing css files in the pack * v2.0.0-preview.4 * perf(*): optimize fonts in docs app * fix(docs): stylesheets import ordering * perf(docs): optimize docs CSS output * fix(docs): correct linux tailwind executable file name * chore(*): delete update-icons.yml * perf(docs): enable stream rendering on all pages * fix(docs): ensure initial theme is set * docs(overview): update content * docs(installation): update content * docs(design-tokens): update content * docs(customization): update content * docs(dark-mode): update content * docs(accordion): update content * refactor(docs): replace `Callout` with `LumexAlert` * docs(avatar): update content * docs(components): replace `Code` component usages with HTML tag * fix(docs): ensure ThemeSelector sets correct theme value on init * docs(landing): make adaptive * docs(customization): add dark mode for global theme sample * refactor(components): remove deprecated `Root` slot * refactor(utils): remove redundant; update access modifiers * docs(card): update slot names * refactor(docs): make stream rendering global * docs(header): remove active state from links; update stars counter * ci(*): remove deploy.yml * ci: run build-test on PR to main * v2.0.0 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 parent 80f3982 commit 3048a85

File tree

678 files changed

+15772
-19660
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

678 files changed

+15772
-19660
lines changed

.github/workflows/build-test.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
1-
21
name: Build and Test
32

43
on:
54
pull_request:
65
branches:
6+
- dev
77
- main
88
paths:
9-
- 'docs/**'
10-
- 'src/**'
11-
- 'tests/**'
9+
- "docs/**"
10+
- "src/**"
11+
- "tests/**"
1212

1313
jobs:
1414
build-test:
1515
runs-on: ubuntu-latest
16-
16+
1717
steps:
1818
- name: Checkout repository
1919
uses: actions/checkout@v4
20-
20+
2121
- name: Setup .NET Core
2222
uses: actions/setup-dotnet@v4
2323
with:
24-
dotnet-version: |
24+
dotnet-version: |
2525
8.0.x
2626
9.0.x
27-
27+
2828
- name: Restore
2929
run: dotnet restore
3030

@@ -36,5 +36,5 @@ jobs:
3636

3737
- name: Upload coverage reports to Codecov
3838
uses: codecov/codecov-action@v4
39-
env:
39+
env:
4040
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

.github/workflows/deploy.yml

Lines changed: 0 additions & 69 deletions
This file was deleted.

.github/workflows/update-icons.yml

Lines changed: 0 additions & 32 deletions
This file was deleted.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -405,3 +405,4 @@ FodyWeavers.xsd
405405
/src/LumexUI/**/dist
406406

407407
/docs/LumexUI.Docs/**/*/css
408+
/docs/LumexUI.Docs/*.exe

Dockerfile

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# -----------------------------
2+
# Stage 1: build/publish
3+
# -----------------------------
4+
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
5+
6+
# Install Node.js v22 (LTS current)
7+
RUN apt-get update && apt-get install -y curl \
8+
&& curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
9+
&& apt-get install -y nodejs \
10+
&& apt-get clean && rm -rf /var/lib/apt/lists/*
11+
12+
WORKDIR /src
13+
14+
COPY . .
15+
RUN dotnet publish ./docs/LumexUI.Docs -c Release -o app
16+
17+
# -----------------------------
18+
# Stage 2: runtime
19+
# -----------------------------
20+
FROM mcr.microsoft.com/dotnet/aspnet:9.0
21+
COPY --from=build /src/app .
22+
23+
EXPOSE 8080
24+
ENTRYPOINT ["dotnet","LumexUI.Docs.dll"]

LumexUI.sln

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LumexUI.Docs", "docs\LumexU
2626
EndProject
2727
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LumexUI.Docs.Client", "docs\LumexUI.Docs.Client\LumexUI.Docs.Client.csproj", "{6CE81AB3-399F-44CB-9DBE-9A8D62B07C8A}"
2828
EndProject
29+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LumexUI.Shared.Icons", "src\LumexUI.Shared.Icons\LumexUI.Shared.Icons.csproj", "{9C883692-7F43-4E72-8610-AB1996BED8BC}"
30+
EndProject
2931
Global
3032
GlobalSection(SolutionConfigurationPlatforms) = preSolution
3133
Debug|Any CPU = Debug|Any CPU
@@ -52,6 +54,10 @@ Global
5254
{6CE81AB3-399F-44CB-9DBE-9A8D62B07C8A}.Debug|Any CPU.Build.0 = Debug|Any CPU
5355
{6CE81AB3-399F-44CB-9DBE-9A8D62B07C8A}.Release|Any CPU.ActiveCfg = Release|Any CPU
5456
{6CE81AB3-399F-44CB-9DBE-9A8D62B07C8A}.Release|Any CPU.Build.0 = Release|Any CPU
57+
{9C883692-7F43-4E72-8610-AB1996BED8BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
58+
{9C883692-7F43-4E72-8610-AB1996BED8BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
59+
{9C883692-7F43-4E72-8610-AB1996BED8BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
60+
{9C883692-7F43-4E72-8610-AB1996BED8BC}.Release|Any CPU.Build.0 = Release|Any CPU
5561
EndGlobalSection
5662
GlobalSection(SolutionProperties) = preSolution
5763
HideSolutionNode = FALSE
@@ -62,6 +68,7 @@ Global
6268
{06E849E9-A8EA-410B-83BC-0366524C4953} = {898610F1-A6C1-422C-84C9-C1E386957F31}
6369
{2A341376-2409-422C-A7A9-1AE6E86F91D9} = {3F4DE3FA-2636-440C-ACCC-137BAD95BAC4}
6470
{6CE81AB3-399F-44CB-9DBE-9A8D62B07C8A} = {3F4DE3FA-2636-440C-ACCC-137BAD95BAC4}
71+
{9C883692-7F43-4E72-8610-AB1996BED8BC} = {5DBC44B8-5B92-4504-8B8F-91A1672251E6}
6572
EndGlobalSection
6673
GlobalSection(ExtensibilityGlobals) = postSolution
6774
SolutionGuid = {1B8CD55B-BEF0-42D1-936A-BC1FB5D02CE2}

docs/LumexUI.Docs.Client/Common/Constants.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@ public static class Constants
44
{
55
public static class GitHub
66
{
7-
public const string ComponentPath = "https://github.com/LumexUI/lumexui/tree/main/src/LumexUI/Components";
8-
public const string ComponentStylesPath = "https://github.com/LumexUI/lumexui/tree/main/src/LumexUI/Styles";
7+
public const string Path = "https://github.com/LumexUI/lumexui";
8+
public const string ComponentPath = $"{Path}/tree/main/src/LumexUI/Components";
9+
public const string ComponentStylesPath = $"{Path}/tree/main/src/LumexUI/Styles";
910
}
11+
12+
public static class Discord
13+
{
14+
public const string Path = "https://discord.gg/6BVRhjyTcX";
15+
}
1016
}

docs/LumexUI.Docs.Client/Common/Enums/ComponentStatus.cs renamed to docs/LumexUI.Docs.Client/Common/Enums/PageStatus.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
namespace LumexUI.Docs.Client.Common;
22

3-
public enum ComponentStatus
3+
public enum PageStatus
44
{
55
New,
66

77
Soon,
88

9-
Preview
9+
Preview,
10+
11+
Updated
1012
}

docs/LumexUI.Docs.Client/Common/Navigation/NavigationStore.cs

Lines changed: 25 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,44 +9,51 @@ public class NavigationStore
99
private static Navigation? _navigation;
1010

1111
private static NavigationCategory GettingStartedCategory =>
12-
new NavigationCategory( "Getting Started", Icons.Rounded.AutoStories )
12+
new NavigationCategory( "Getting started" )
1313
.Add( new( "Overview" ) )
1414
.Add( new( "Installation" ) );
1515

16-
private static NavigationCategory CustomizationCategory =>
17-
new NavigationCategory( "Customization", Icons.Rounded.DesignServices )
18-
.Add( new( "Theme" ) )
19-
.Add( new( "Layout" ) )
20-
.Add( new( "Colors" ) )
21-
.Add( new( "Customize Theme" ) );
16+
private static NavigationCategory ThemingCategory =>
17+
new NavigationCategory( "Theming" )
18+
.Add( new( "Design tokens", PageStatus.New ) )
19+
.Add( new( "Customization", PageStatus.Updated ) )
20+
.Add( new( "Dark mode", PageStatus.New ) );
2221

2322
private static NavigationCategory ComponentsCategory =>
24-
new NavigationCategory( "Components", Icons.Rounded.Joystick )
23+
new NavigationCategory( "Components" )
2524
.Add( new( nameof( LumexAccordion ) ) )
26-
.Add( new( nameof( LumexButton ) ) )
25+
.Add( new( nameof( LumexAlert ), PageStatus.New ) )
26+
.Add( new( nameof( LumexAvatar ), PageStatus.New ) )
27+
.Add( new( nameof( LumexBadge ), PageStatus.New ) )
28+
.Add( new( nameof( LumexButton ), PageStatus.Updated ) )
2729
.Add( new( nameof( LumexCard ) ) )
2830
.Add( new( nameof( LumexCheckbox ) ) )
2931
.Add( new( nameof( LumexCheckboxGroup ) ) )
32+
.Add( new( nameof( LumexChip ), PageStatus.New ) )
3033
.Add( new( nameof( LumexCollapse ) ) )
3134
.Add( new( nameof( LumexDataGrid<T> ) ) )
3235
.Add( new( nameof( LumexDivider ) ) )
33-
.Add( new( nameof( LumexDropdown ), ComponentStatus.New ) )
34-
.Add( new( nameof( LumexIcon ) ) )
36+
.Add( new( nameof( LumexDropdown ) ) )
3537
.Add( new( nameof( LumexLink ) ) )
3638
.Add( new( nameof( LumexListbox<T> ) ) )
3739
.Add( new( nameof( LumexNavbar ) ) )
3840
.Add( new( nameof( LumexNumbox<T> ) ) )
3941
.Add( new( nameof( LumexPopover ) ) )
4042
.Add( new( nameof( LumexRadioGroup<T> ) ) )
4143
.Add( new( nameof( LumexSelect<T> ) ) )
44+
.Add( new( nameof( LumexSkeleton ), PageStatus.New ) )
45+
.Add( new( nameof( LumexSpinner ), PageStatus.New ) )
4246
.Add( new( nameof( LumexSwitch ) ) )
43-
.Add( new( nameof( LumexTabs ), ComponentStatus.New ) )
44-
.Add( new( nameof( LumexTextbox ) ) );
47+
.Add( new( nameof( LumexTabs ) ) )
48+
.Add( new( nameof( LumexTextbox ) ) )
49+
.Add( new( nameof( LumexTooltip ), PageStatus.New ) );
4550

4651
private static NavigationCategory ComponentsApiCategory =>
47-
new NavigationCategory( "Components API", Icons.Rounded.Manufacturing )
52+
new NavigationCategory( "Components API" )
4853
.Add( new( nameof( LumexAccordion ) ) )
4954
.Add( new( nameof( LumexAccordionItem ) ) )
55+
.Add( new( nameof( LumexAvatar ) ) )
56+
.Add( new( nameof( LumexAvatarGroup ) ) )
5057
//.Add( nameof( LumexBooleanInputBase ) )
5158
.Add( new( nameof( LumexButton ) ) )
5259
.Add( new( nameof( LumexCard ) ) )
@@ -55,6 +62,7 @@ public class NavigationStore
5562
.Add( new( nameof( LumexCardHeader ) ) )
5663
.Add( new( nameof( LumexCheckbox ) ) )
5764
.Add( new( nameof( LumexCheckboxGroup ) ) )
65+
.Add( new( nameof( LumexChip ) ) )
5866
.Add( new( nameof( LumexCollapse ) ) )
5967
.Add( new( nameof( LumexComponent ) ) )
6068
//.Add( nameof( LumexComponentBase ) )
@@ -65,7 +73,6 @@ public class NavigationStore
6573
.Add( new( nameof( LumexDropdownMenu ) ) )
6674
//.Add( nameof( LumexInputBase<T> ) )
6775
//.Add( nameof( LumexInputFieldBase<T> ) )
68-
.Add( new( nameof( LumexIcon ) ) )
6976
.Add( new( nameof( LumexLink ) ) )
7077
.Add( new( nameof( LumexListbox<T> ) ) )
7178
.Add( new( nameof( LumexListboxItem<T> ) ) )
@@ -82,6 +89,8 @@ public class NavigationStore
8289
.Add( new( nameof( LumexPopoverTrigger ) ) )
8390
.Add( new( nameof( LumexSelect<T> ) ) )
8491
.Add( new( nameof( LumexSelectItem<T> ) ) )
92+
.Add( new( nameof( LumexSkeleton ) ) )
93+
.Add( new( nameof( LumexSpinner ) ) )
8594
.Add( new( nameof( LumexSwitch ) ) )
8695
.Add( new( nameof( LumexTab ) ) )
8796
.Add( new( nameof( LumexTabs ) ) )
@@ -92,7 +101,7 @@ public static Navigation GetNavigation()
92101
{
93102
_navigation ??= new Navigation()
94103
.Add( GettingStartedCategory )
95-
.Add( CustomizationCategory )
104+
.Add( ThemingCategory )
96105
.Add( ComponentsCategory )
97106
.Add( ComponentsApiCategory );
98107

docs/LumexUI.Docs.Client/Common/Navigation/Types.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@ public Navigation Add( NavigationCategory category )
1313
}
1414
}
1515

16-
public class NavigationCategory( string name, string icon )
16+
public class NavigationCategory( string name, string? icon = null )
1717
{
1818
private readonly List<NavigationItem> _items = [];
1919

2020
public string Name { get; } = name;
21-
public string Icon { get; } = icon;
21+
public string? Icon { get; } = icon;
2222
public IEnumerable<NavigationItem> Items => _items.AsEnumerable();
2323

2424
public NavigationCategory Add( NavigationItem item )
@@ -28,8 +28,8 @@ public NavigationCategory Add( NavigationItem item )
2828
}
2929
}
3030

31-
public class NavigationItem( string name, ComponentStatus? status = null )
31+
public class NavigationItem( string name, PageStatus? status = null )
3232
{
3333
public string Name { get; } = name;
34-
public ComponentStatus? Status { get; } = status;
34+
public PageStatus? Status { get; } = status;
3535
}

0 commit comments

Comments
 (0)