|
@@ -1,17 +1,23 @@
|
|
|
<script setup lang="ts">
|
|
|
+import type { LayoutType } from '@vben/types';
|
|
|
+
|
|
|
import { $t } from '@vben/locales';
|
|
|
|
|
|
import NumberFieldItem from '../number-field-item.vue';
|
|
|
import SwitchItem from '../switch-item.vue';
|
|
|
|
|
|
-defineProps<{ disabled: boolean }>();
|
|
|
+defineProps<{ currentLayout?: LayoutType; disabled: boolean }>();
|
|
|
|
|
|
const sidebarEnable = defineModel<boolean>('sidebarEnable');
|
|
|
const sidebarWidth = defineModel<number>('sidebarWidth');
|
|
|
const sidebarCollapsedShowTitle = defineModel<boolean>(
|
|
|
'sidebarCollapsedShowTitle',
|
|
|
);
|
|
|
+const sidebarAutoActivateChild = defineModel<boolean>(
|
|
|
+ 'sidebarAutoActivateChild',
|
|
|
+);
|
|
|
const sidebarCollapsed = defineModel<boolean>('sidebarCollapsed');
|
|
|
+const sidebarExpandOnHover = defineModel<boolean>('sidebarExpandOnHover');
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
@@ -21,12 +27,28 @@ const sidebarCollapsed = defineModel<boolean>('sidebarCollapsed');
|
|
|
<SwitchItem v-model="sidebarCollapsed" :disabled="!sidebarEnable || disabled">
|
|
|
{{ $t('preferences.sidebar.collapsed') }}
|
|
|
</SwitchItem>
|
|
|
+ <SwitchItem
|
|
|
+ v-model="sidebarExpandOnHover"
|
|
|
+ :disabled="!sidebarEnable || disabled || !sidebarCollapsed"
|
|
|
+ :tip="$t('preferences.sidebar.expandOnHoverTip')"
|
|
|
+ >
|
|
|
+ {{ $t('preferences.sidebar.expandOnHover') }}
|
|
|
+ </SwitchItem>
|
|
|
<SwitchItem
|
|
|
v-model="sidebarCollapsedShowTitle"
|
|
|
:disabled="!sidebarEnable || disabled || !sidebarCollapsed"
|
|
|
>
|
|
|
{{ $t('preferences.sidebar.collapsedShowTitle') }}
|
|
|
</SwitchItem>
|
|
|
+ <SwitchItem
|
|
|
+ v-model="sidebarAutoActivateChild"
|
|
|
+ :disabled="
|
|
|
+ !sidebarEnable || currentLayout !== 'sidebar-mixed-nav' || disabled
|
|
|
+ "
|
|
|
+ :tip="$t('preferences.sidebar.autoActivateChildTip')"
|
|
|
+ >
|
|
|
+ {{ $t('preferences.sidebar.autoActivateChild') }}
|
|
|
+ </SwitchItem>
|
|
|
<NumberFieldItem
|
|
|
v-model="sidebarWidth"
|
|
|
:disabled="!sidebarEnable || disabled"
|