From 9b066a49f04517855486579c02b80a70bb0aa7f2 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sat, 15 Nov 2025 14:56:07 +0800 Subject: [PATCH 1/4] chore(Tools): remove pack/watch scripts --- tools/delete-bin.cmd | 21 --------------------- tools/pack.bat | 7 ------- tools/watch.bat | 7 ------- 3 files changed, 35 deletions(-) delete mode 100644 tools/delete-bin.cmd delete mode 100644 tools/pack.bat delete mode 100644 tools/watch.bat diff --git a/tools/delete-bin.cmd b/tools/delete-bin.cmd deleted file mode 100644 index 5da11085839..00000000000 --- a/tools/delete-bin.cmd +++ /dev/null @@ -1,21 +0,0 @@ -@ECHO off -cls -cd .. - -ECHO Deleting all BIN and OBJ folders... -ECHO. - -FOR /d /r . %%d in (bin,obj) DO ( - IF EXIST "%%d" ( - ECHO %%d | FIND /I "\node_modules\" > Nul && ( - ECHO.Skipping: %%d - ) || ( - ECHO.Deleting: %%d - rd /s/q "%%d" - ) - ) -) - -ECHO. -ECHO.BIN and OBJ folders have been successfully deleted. Press any key to exit. -pause > nul diff --git a/tools/pack.bat b/tools/pack.bat deleted file mode 100644 index 3c32b7b2918..00000000000 --- a/tools/pack.bat +++ /dev/null @@ -1,7 +0,0 @@ -@echo off -setlocal enabledelayedexpansion - -cd ../src/BootstrapBlazor -dotnet pack -c Release - -endlocal diff --git a/tools/watch.bat b/tools/watch.bat deleted file mode 100644 index d1a3a0545b9..00000000000 --- a/tools/watch.bat +++ /dev/null @@ -1,7 +0,0 @@ -@echo off -setlocal enabledelayedexpansion - -cd ../src/BootstrapBlazor.Server -dotnet watch run - -endlocal From 60ac051360dcaba76006923ed570e33f0685d694 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sat, 15 Nov 2025 14:56:18 +0800 Subject: [PATCH 2/4] chore: bump version net10 --- tools/Benchmarks/UnitTest.Benchmarks.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/Benchmarks/UnitTest.Benchmarks.csproj b/tools/Benchmarks/UnitTest.Benchmarks.csproj index c5874c22fe5..c9a25643ca0 100644 --- a/tools/Benchmarks/UnitTest.Benchmarks.csproj +++ b/tools/Benchmarks/UnitTest.Benchmarks.csproj @@ -2,13 +2,13 @@ Exe - net9.0 + net10.0 enable enable - + From 2a6e6ee23d5f09600603c7e8039cd748acf7b4b2 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sat, 15 Nov 2025 15:12:34 +0800 Subject: [PATCH 3/4] =?UTF-8?q?chore:=20=E6=9B=B4=E6=96=B0=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/BootstrapBlazor/Components/Menu/MenuLink.razor | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/BootstrapBlazor/Components/Menu/MenuLink.razor b/src/BootstrapBlazor/Components/Menu/MenuLink.razor index 8dd32a2469e..9e3730214af 100644 --- a/src/BootstrapBlazor/Components/Menu/MenuLink.razor +++ b/src/BootstrapBlazor/Components/Menu/MenuLink.razor @@ -1,4 +1,4 @@ -@namespace BootstrapBlazor.Components +@namespace BootstrapBlazor.Components @inherits BootstrapComponentBase @if (Item.IsDisabled) @@ -11,7 +11,7 @@ else { -
+ From 23bf8006179548b5f259444d2bdfde82e8d43b66 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sat, 15 Nov 2025 15:12:43 +0800 Subject: [PATCH 4/4] =?UTF-8?q?refactor:=20=E9=87=8D=E6=9E=84=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/Menu/Menu.razor.scss | 347 +++++++++--------- 1 file changed, 176 insertions(+), 171 deletions(-) diff --git a/src/BootstrapBlazor/Components/Menu/Menu.razor.scss b/src/BootstrapBlazor/Components/Menu/Menu.razor.scss index 806ce93ad75..b429b98fa7f 100644 --- a/src/BootstrapBlazor/Components/Menu/Menu.razor.scss +++ b/src/BootstrapBlazor/Components/Menu/Menu.razor.scss @@ -1,4 +1,4 @@ -@use "../../wwwroot/scss/variables" as *; +@use "../../wwwroot/scss/variables" as *; .menu { --bb-menu-nav-pading: #{$bb-menu-nav-pading}; @@ -12,163 +12,168 @@ --bs-nav-link-color: var(--bs-body-color); } -.menu .nav { - padding: var(--bb-menu-nav-pading); - border-bottom: var(--bb-menu-nav-border-bottom); -} - -.menu > .nav > li { - position: relative; - border-bottom: 2px solid transparent; -} - -.menu > .nav > li:has(.active):after { - width: 100%; - left: 0; -} - -.menu > .nav > li:after { - content: ""; - position: absolute; - background-color: var(--bb-menu-bar-bg); - left: 50%; - height: 2px; - width: 0; - transition: width .3s linear, left .3s linear; -} - -.menu .nav .nav-link, .cascade .dropdown-item { - padding: 0.5rem 1rem; - user-select: none; - white-space: nowrap; - position: relative; -} - -.menu .nav .nav-link.active, .menu .nav .nav-link:not(.disabled):hover { - color: var(--bb-menu-active-color); -} - -.menu .nav .dropdown-menu, .cascade .dropdown-menu { - overflow: unset; - max-height: unset; - margin-block-start: 10px; -} - -.menu .nav .dropdown-menu .nav-link:not(.disabled):hover, .menu .nav .dropdown-menu .nav-link.active, .menu .submenu .nav-link.active, .menu .submenu .nav-link:not(.disabled):hover, .cascade .dropdown-item:not(.disabled):hover, .cascade .dropdown-item.active, .cascade .nav .nav-link:not(.disabled):hover, .cascade .nav .nav-link.active { - background-color: var(--bb-menu-item-hover-bg); - color: var(--bb-menu-item-hover-color); -} - -.menu .nav .sub-menu, .cascade .has-leaf .sub-menu { - display: none; - background-color: var(--bb-menu-sub-bg); - white-space: nowrap; - border: solid 1px var(--bs-border-color); - border-radius: var(--bs-border-radius); - padding: 0.5rem 0; - position: absolute; - left: 100%; - top: -9px; - box-shadow: 0 2px 12px 0 rgba(0,0,0,.1); -} - -.menu .nav .dropdown-menu, .menu .nav .sub-menu, .cascade .sub-menu { - min-width: var(--bb-menu-min-width); -} - -.menu .nav .nav-link:hover > .sub-menu, .cascade .dropdown-item:hover > .sub-menu { - display: block; -} - -.menu .nav-item:hover > .nav-link > .sub-menu { - left: calc(100% + 20px); - top: -15px; -} - -.menu .has-leaf > .nav-link-right { - transition: transform .3s linear; - position: absolute; - right: 10px; - top: 10px; -} - -.menu .nav .sub-menu .has-leaf > .nav-link-right { - right: 12px; - top: 10px; -} - -.menu .has-leaf:hover > .nav-link-right { - transform: rotate(-90deg); -} - -.menu .menu-text { - overflow: hidden; - vertical-align: top; - display: inline-block; - opacity: 1; - transition: opacity .3s linear; -} - -.menu .nav .nav-link .menu-text { - margin-left: 4px; -} - -.menu .nav .dropdown-toggle[aria-expanded="true"] + .dropdown-menu-arrow, -.cascade .show .dropdown-menu-arrow { - display: block; -} - -.menu .nav .dropdown .dropdown-menu-arrow { - left: calc(50% - 6px); -} - -.menu .nav-link { - display: flex; - align-items: center; - line-height: 21px; - transition: background-color .3s linear, color .3s linear; -} - -.menu .nav-link > div { - white-space: nowrap; -} - -.menu .widget > .badge:not(:first-child) { - margin-left: 4px; -} - -.menu.is-vertical { - padding: 0 .5rem; - border: none; -} - -.menu .submenu { - margin: 0; - padding: 0; - list-style: none; -} - -.menu .submenu li { - margin-block-start: 2px; -} - -.menu .submenu .nav-link { - border-radius: var(--bs-border-radius); - padding: .5rem; -} - -.menu .submenu .nav-link .arrow { - transition: transform .3s linear; -} - -.menu .submenu .nav-link[aria-expanded="true"] > .arrow { - transform: rotate(-90deg); -} - -.menu .submenu .nav-link .menu-text, -.menu .submenu .nav-link .widget { - margin: 0 4px; -} + .menu .nav { + padding: var(--bb-menu-nav-pading); + border-bottom: var(--bb-menu-nav-border-bottom); + } + + .menu > .nav > li { + position: relative; + border-bottom: 2px solid transparent; + } + + .menu > .nav > li:has(.active):after { + width: 100%; + left: 0; + } + + .menu > .nav > li:after { + content: ""; + position: absolute; + background-color: var(--bb-menu-bar-bg); + left: 50%; + height: 2px; + width: 0; + transition: width .3s linear, left .3s linear; + } + + .menu .nav .nav-link, .cascade .dropdown-item { + padding: 0.5rem 1rem; + user-select: none; + white-space: nowrap; + position: relative; + } + + .menu .nav .nav-link.active, .menu .nav .nav-link:not(.disabled):hover { + color: var(--bb-menu-active-color); + } + + .menu .nav .dropdown-menu, .cascade .dropdown-menu { + overflow: unset; + max-height: unset; + margin-block-start: 10px; + } + + .menu .nav .dropdown-menu .nav-link:not(.disabled):hover, .menu .nav .dropdown-menu .nav-link.active, .menu .submenu .nav-link.active, .menu .submenu .nav-link:not(.disabled):hover, .cascade .dropdown-item:not(.disabled):hover, .cascade .dropdown-item.active, .cascade .nav .nav-link:not(.disabled):hover, .cascade .nav .nav-link.active { + background-color: var(--bb-menu-item-hover-bg); + color: var(--bb-menu-item-hover-color); + } + + .menu .nav .sub-menu, .cascade .has-leaf .sub-menu { + display: none; + background-color: var(--bb-menu-sub-bg); + white-space: nowrap; + border: solid 1px var(--bs-border-color); + border-radius: var(--bs-border-radius); + padding: 0.5rem 0; + position: absolute; + left: 100%; + top: -9px; + box-shadow: 0 2px 12px 0 rgba(0,0,0,.1); + } + + .menu .nav .dropdown-menu, .menu .nav .sub-menu, .cascade .sub-menu { + min-width: var(--bb-menu-min-width); + } + + .menu .nav .nav-link:hover > .sub-menu, .cascade .dropdown-item:hover > .sub-menu { + display: block; + } + + .menu .nav-item:hover > .nav-link > .sub-menu { + left: calc(100% + 20px); + top: -15px; + } + + .menu .has-leaf > .nav-link-right { + transition: transform .3s linear; + position: absolute; + right: 10px; + top: 10px; + } + + .menu .nav .sub-menu .has-leaf > .nav-link-right { + right: 12px; + top: 10px; + } + + .menu .has-leaf:hover > .nav-link-right { + transform: rotate(-90deg); + } + + .menu .menu-text { + overflow: hidden; + vertical-align: top; + display: inline-block; + opacity: 1; + transition: opacity .3s linear; + } + + .menu .nav .nav-link .menu-text { + margin-left: 4px; + } + + .menu .nav .dropdown-toggle[aria-expanded="true"] + .dropdown-menu-arrow, + .cascade .show .dropdown-menu-arrow { + display: block; + } + + .menu .nav .dropdown .dropdown-menu-arrow { + left: calc(50% - 6px); + } + + .menu .nav-link { + display: flex; + align-items: center; + line-height: 21px; + transition: background-color .3s linear, color .3s linear; + } + + .menu .nav-link > .submenu-link { + flex: 1 1 auto; + min-width: 0; + width: 1%; + white-space: nowrap; + overflow: hidden; + margin-inline-end: .5rem; + } + + .menu .widget > .badge:not(:first-child) { + margin-left: 4px; + } + + .menu.is-vertical { + padding: 0 .5rem; + border: none; + } + + .menu .submenu { + margin: 0; + padding: 0; + list-style: none; + } + + .menu .submenu li { + margin-block-start: 2px; + } + + .menu .submenu .nav-link { + border-radius: var(--bs-border-radius); + padding: .5rem; + } + + .menu .submenu .nav-link .arrow { + transition: transform .3s linear; + } + + .menu .submenu .nav-link[aria-expanded="true"] > .arrow { + transform: rotate(-90deg); + } + + .menu .submenu .nav-link .menu-text, + .menu .submenu .nav-link .widget { + margin: 0 4px; + } .cascade .dropdown-menu { right: 0; @@ -189,18 +194,18 @@ right: 0; } -.menu.is-bottom .nav { - flex-wrap: nowrap; - justify-content: space-around; - border-bottom: none; - border-top: 1px solid var(--bs-gray-400); -} + .menu.is-bottom .nav { + flex-wrap: nowrap; + justify-content: space-around; + border-bottom: none; + border-top: 1px solid var(--bs-gray-400); + } -.menu.is-bottom .nav .dropdown-toggle[aria-expanded="true"] + .dropdown-menu-arrow { - display: none; -} + .menu.is-bottom .nav .dropdown-toggle[aria-expanded="true"] + .dropdown-menu-arrow { + display: none; + } -.menu.is-bottom > .nav > li:after, -.menu.is-bottom .dropdown-menu-arrow:after { - content: none; -} + .menu.is-bottom > .nav > li:after, + .menu.is-bottom .dropdown-menu-arrow:after { + content: none; + }