diff --git a/apps/web-ele/package.json b/apps/web-ele/package.json
index a02376ee8..587694005 100644
--- a/apps/web-ele/package.json
+++ b/apps/web-ele/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/web-ele",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://vben.pro",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/apps/web-naive/package.json b/apps/web-naive/package.json
index 5bd3b1a74..57857c892 100644
--- a/apps/web-naive/package.json
+++ b/apps/web-naive/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/web-naive",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://vben.pro",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/docs/package.json b/docs/package.json
index 2d56a8ba5..5ea22fd1c 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/docs",
- "version": "5.5.1",
+ "version": "5.5.2",
"private": true,
"scripts": {
"build": "vitepress build",
diff --git a/internal/lint-configs/commitlint-config/package.json b/internal/lint-configs/commitlint-config/package.json
index 01b43088c..d7e4c5180 100644
--- a/internal/lint-configs/commitlint-config/package.json
+++ b/internal/lint-configs/commitlint-config/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/commitlint-config",
- "version": "5.5.1",
+ "version": "5.5.2",
"private": true,
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
diff --git a/internal/lint-configs/stylelint-config/package.json b/internal/lint-configs/stylelint-config/package.json
index 64815741f..02491dd0f 100644
--- a/internal/lint-configs/stylelint-config/package.json
+++ b/internal/lint-configs/stylelint-config/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/stylelint-config",
- "version": "5.5.1",
+ "version": "5.5.2",
"private": true,
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
diff --git a/internal/node-utils/package.json b/internal/node-utils/package.json
index 9412656a9..b2a60da8c 100644
--- a/internal/node-utils/package.json
+++ b/internal/node-utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/node-utils",
- "version": "5.5.1",
+ "version": "5.5.2",
"private": true,
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
diff --git a/internal/tailwind-config/package.json b/internal/tailwind-config/package.json
index 26da63b48..0b64d1d53 100644
--- a/internal/tailwind-config/package.json
+++ b/internal/tailwind-config/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/tailwind-config",
- "version": "5.5.1",
+ "version": "5.5.2",
"private": true,
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
diff --git a/internal/tsconfig/package.json b/internal/tsconfig/package.json
index d935b671c..8ebfeebfd 100644
--- a/internal/tsconfig/package.json
+++ b/internal/tsconfig/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/tsconfig",
- "version": "5.5.1",
+ "version": "5.5.2",
"private": true,
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
diff --git a/internal/vite-config/package.json b/internal/vite-config/package.json
index 60955a1d4..6c589a1f1 100644
--- a/internal/vite-config/package.json
+++ b/internal/vite-config/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/vite-config",
- "version": "5.5.1",
+ "version": "5.5.2",
"private": true,
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
diff --git a/package.json b/package.json
index 8544ec69f..81a98c884 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "vben-admin-monorepo",
- "version": "5.5.1",
+ "version": "5.5.2",
"private": true,
"keywords": [
"monorepo",
diff --git a/packages/@core/base/design/package.json b/packages/@core/base/design/package.json
index 7b46ddd74..1d9888ca7 100644
--- a/packages/@core/base/design/package.json
+++ b/packages/@core/base/design/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/design",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/base/icons/package.json b/packages/@core/base/icons/package.json
index 754b74509..144814a04 100644
--- a/packages/@core/base/icons/package.json
+++ b/packages/@core/base/icons/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/icons",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/base/shared/package.json b/packages/@core/base/shared/package.json
index 20eeea450..c52c040cc 100644
--- a/packages/@core/base/shared/package.json
+++ b/packages/@core/base/shared/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/shared",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/base/typings/package.json b/packages/@core/base/typings/package.json
index 504e53ed8..c71539395 100644
--- a/packages/@core/base/typings/package.json
+++ b/packages/@core/base/typings/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/typings",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/base/typings/src/app.d.ts b/packages/@core/base/typings/src/app.d.ts
index f783c8b56..ae49c786e 100644
--- a/packages/@core/base/typings/src/app.d.ts
+++ b/packages/@core/base/typings/src/app.d.ts
@@ -1,5 +1,6 @@
type LayoutType =
| 'full-content'
+ | 'header-mixed-nav'
| 'header-nav'
| 'mixed-nav'
| 'sidebar-mixed-nav'
diff --git a/packages/@core/composables/package.json b/packages/@core/composables/package.json
index 736feefa2..49f972fe0 100644
--- a/packages/@core/composables/package.json
+++ b/packages/@core/composables/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/composables",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/preferences/__tests__/__snapshots__/config.test.ts.snap b/packages/@core/preferences/__tests__/__snapshots__/config.test.ts.snap
index 87f03de69..81df96821 100644
--- a/packages/@core/preferences/__tests__/__snapshots__/config.test.ts.snap
+++ b/packages/@core/preferences/__tests__/__snapshots__/config.test.ts.snap
@@ -71,7 +71,7 @@ exports[`defaultPreferences immutability test > should not modify the config obj
"collapsedShowTitle": false,
"enable": true,
"expandOnHover": true,
- "extraCollapse": true,
+ "extraCollapse": false,
"hidden": false,
"width": 224,
},
diff --git a/packages/@core/preferences/package.json b/packages/@core/preferences/package.json
index 24b522e21..26232bf56 100644
--- a/packages/@core/preferences/package.json
+++ b/packages/@core/preferences/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/preferences",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/preferences/src/config.ts b/packages/@core/preferences/src/config.ts
index 48073b64f..dcce14acb 100644
--- a/packages/@core/preferences/src/config.ts
+++ b/packages/@core/preferences/src/config.ts
@@ -71,7 +71,7 @@ const defaultPreferences: Preferences = {
collapsedShowTitle: false,
enable: true,
expandOnHover: true,
- extraCollapse: true,
+ extraCollapse: false,
hidden: false,
width: 224,
},
diff --git a/packages/@core/preferences/src/use-preferences.ts b/packages/@core/preferences/src/use-preferences.ts
index fc1e2de5f..ecd2bc74d 100644
--- a/packages/@core/preferences/src/use-preferences.ts
+++ b/packages/@core/preferences/src/use-preferences.ts
@@ -82,6 +82,10 @@ function usePreferences() {
() => appPreferences.value.layout === 'header-nav',
);
+ const isHeaderMixedNav = computed(
+ () => appPreferences.value.layout === 'header-mixed-nav',
+ );
+
/**
* @zh_CN 是否为混合导航模式
*/
@@ -93,7 +97,12 @@ function usePreferences() {
* @zh_CN 是否包含侧边导航模式
*/
const isSideMode = computed(() => {
- return isMixedNav.value || isSideMixedNav.value || isSideNav.value;
+ return (
+ isMixedNav.value ||
+ isSideMixedNav.value ||
+ isSideNav.value ||
+ isHeaderMixedNav.value
+ );
});
const sidebarCollapsed = computed(() => {
@@ -214,6 +223,7 @@ function usePreferences() {
globalSearchShortcutKey,
isDark,
isFullContent,
+ isHeaderMixedNav,
isHeaderNav,
isMixedNav,
isMobile,
diff --git a/packages/@core/ui-kit/form-ui/package.json b/packages/@core/ui-kit/form-ui/package.json
index 944fd49ef..a3f42ded6 100644
--- a/packages/@core/ui-kit/form-ui/package.json
+++ b/packages/@core/ui-kit/form-ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/form-ui",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/ui-kit/layout-ui/package.json b/packages/@core/ui-kit/layout-ui/package.json
index 7aa4a35b8..25bf67155 100644
--- a/packages/@core/ui-kit/layout-ui/package.json
+++ b/packages/@core/ui-kit/layout-ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/layout-ui",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/ui-kit/layout-ui/src/hooks/use-layout.ts b/packages/@core/ui-kit/layout-ui/src/hooks/use-layout.ts
index 354fcb442..7b758dc46 100644
--- a/packages/@core/ui-kit/layout-ui/src/hooks/use-layout.ts
+++ b/packages/@core/ui-kit/layout-ui/src/hooks/use-layout.ts
@@ -31,9 +31,17 @@ export function useLayout(props: VbenLayoutProps) {
*/
const isMixedNav = computed(() => currentLayout.value === 'mixed-nav');
+ /**
+ * 是否为头部混合模式
+ */
+ const isHeaderMixedNav = computed(
+ () => currentLayout.value === 'header-mixed-nav',
+ );
+
return {
currentLayout,
isFullContent,
+ isHeaderMixedNav,
isHeaderNav,
isMixedNav,
isSidebarMixedNav,
diff --git a/packages/@core/ui-kit/layout-ui/src/vben-layout.vue b/packages/@core/ui-kit/layout-ui/src/vben-layout.vue
index fe9b1d852..dee990b3c 100644
--- a/packages/@core/ui-kit/layout-ui/src/vben-layout.vue
+++ b/packages/@core/ui-kit/layout-ui/src/vben-layout.vue
@@ -87,6 +87,7 @@ const { y: mouseY } = useMouse({ target: contentRef, type: 'client' });
const {
currentLayout,
isFullContent,
+ isHeaderMixedNav,
isHeaderNav,
isMixedNav,
isSidebarMixedNav,
@@ -112,7 +113,9 @@ const getSideCollapseWidth = computed(() => {
const { sidebarCollapseShowTitle, sidebarMixedWidth, sideCollapseWidth } =
props;
- return sidebarCollapseShowTitle || isSidebarMixedNav.value
+ return sidebarCollapseShowTitle ||
+ isSidebarMixedNav.value ||
+ isHeaderMixedNav.value
? sidebarMixedWidth
: sideCollapseWidth;
});
@@ -145,12 +148,15 @@ const getSidebarWidth = computed(() => {
if (
!sidebarEnableState.value ||
- (sidebarHidden && !isSidebarMixedNav.value && !isMixedNav.value)
+ (sidebarHidden &&
+ !isSidebarMixedNav.value &&
+ !isMixedNav.value &&
+ !isHeaderMixedNav.value)
) {
return width;
}
- if (isSidebarMixedNav.value && !isMobile) {
+ if ((isHeaderMixedNav.value || isSidebarMixedNav.value) && !isMobile) {
width = sidebarMixedWidth;
} else if (sidebarCollapse.value) {
width = isMobile ? 0 : getSideCollapseWidth.value;
@@ -176,7 +182,8 @@ const isSideMode = computed(
() =>
currentLayout.value === 'mixed-nav' ||
currentLayout.value === 'sidebar-mixed-nav' ||
- currentLayout.value === 'sidebar-nav',
+ currentLayout.value === 'sidebar-nav' ||
+ currentLayout.value === 'header-mixed-nav',
);
/**
@@ -213,7 +220,7 @@ const mainStyle = computed(() => {
) {
// fixed模式下生效
const isSideNavEffective =
- isSidebarMixedNav.value &&
+ (isSidebarMixedNav.value || isHeaderMixedNav.value) &&
sidebarExpandOnHover.value &&
sidebarExtraVisible.value;
@@ -476,7 +483,7 @@ const idMainContent = ELEMENT_ID_MAIN_CONTENT;
:extra-width="sidebarExtraWidth"
:fixed-extra="sidebarExpandOnHover"
:header-height="isMixedNav ? 0 : headerHeight"
- :is-sidebar-mixed="isSidebarMixedNav"
+ :is-sidebar-mixed="isSidebarMixedNav || isHeaderMixedNav"
:margin-top="sidebarMarginTop"
:mixed-width="sidebarMixedWidth"
:show="showSidebar"
@@ -489,7 +496,7 @@ const idMainContent = ELEMENT_ID_MAIN_CONTENT;
-
+
diff --git a/packages/@core/ui-kit/menu-ui/package.json b/packages/@core/ui-kit/menu-ui/package.json
index 4c833cb8a..768c6e709 100644
--- a/packages/@core/ui-kit/menu-ui/package.json
+++ b/packages/@core/ui-kit/menu-ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/menu-ui",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/@core/ui-kit/shadcn-ui/package.json b/packages/@core/ui-kit/shadcn-ui/package.json
index cccaa690e..439725a25 100644
--- a/packages/@core/ui-kit/shadcn-ui/package.json
+++ b/packages/@core/ui-kit/shadcn-ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/shadcn-ui",
- "version": "5.5.1",
+ "version": "5.5.2",
"#main": "./dist/index.mjs",
"#module": "./dist/index.mjs",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
diff --git a/packages/@core/ui-kit/tabs-ui/package.json b/packages/@core/ui-kit/tabs-ui/package.json
index 7e98a8429..37970151e 100644
--- a/packages/@core/ui-kit/tabs-ui/package.json
+++ b/packages/@core/ui-kit/tabs-ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben-core/tabs-ui",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/constants/package.json b/packages/constants/package.json
index aeb733875..c9372a501 100644
--- a/packages/constants/package.json
+++ b/packages/constants/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/constants",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/effects/access/package.json b/packages/effects/access/package.json
index ca991275c..4fa518b1b 100644
--- a/packages/effects/access/package.json
+++ b/packages/effects/access/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/access",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/effects/common-ui/package.json b/packages/effects/common-ui/package.json
index 0fc53bece..dbaf628ed 100644
--- a/packages/effects/common-ui/package.json
+++ b/packages/effects/common-ui/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/common-ui",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/effects/hooks/package.json b/packages/effects/hooks/package.json
index a531cf9c6..2eb5708de 100644
--- a/packages/effects/hooks/package.json
+++ b/packages/effects/hooks/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/hooks",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/effects/layouts/package.json b/packages/effects/layouts/package.json
index f1eba82e1..ec2309052 100644
--- a/packages/effects/layouts/package.json
+++ b/packages/effects/layouts/package.json
@@ -1,6 +1,6 @@
{
"name": "@vben/layouts",
- "version": "5.5.1",
+ "version": "5.5.2",
"homepage": "https://github.com/vbenjs/vue-vben-admin",
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
"repository": {
diff --git a/packages/effects/layouts/src/basic/layout.vue b/packages/effects/layouts/src/basic/layout.vue
index abfb9add2..73f692f63 100644
--- a/packages/effects/layouts/src/basic/layout.vue
+++ b/packages/effects/layouts/src/basic/layout.vue
@@ -1,7 +1,7 @@