2024-05-19 21:20:42 +08:00
|
|
|
<script setup lang="ts">
|
2024-06-01 23:15:29 +08:00
|
|
|
import type { LayoutHeaderModeType, SelectListItem } from '@vben/types';
|
2024-05-19 21:20:42 +08:00
|
|
|
|
|
|
|
import { $t } from '@vben/locales';
|
|
|
|
|
|
|
|
import SelectItem from '../select-item.vue';
|
|
|
|
import SwitchItem from '../switch-item.vue';
|
|
|
|
|
|
|
|
defineOptions({
|
|
|
|
name: 'PreferenceBreadcrumbConfig',
|
|
|
|
});
|
|
|
|
|
|
|
|
defineProps<{ disabled: boolean }>();
|
|
|
|
|
2024-06-09 12:53:38 +08:00
|
|
|
const headerEnable = defineModel<boolean>('headerEnable');
|
2024-06-01 23:15:29 +08:00
|
|
|
const headerMode = defineModel<LayoutHeaderModeType>('headerMode');
|
2024-05-19 21:20:42 +08:00
|
|
|
|
|
|
|
const localeItems: SelectListItem[] = [
|
|
|
|
{
|
|
|
|
label: $t('preference.header-mode-static'),
|
|
|
|
value: 'static',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: $t('preference.header-mode-fixed'),
|
|
|
|
value: 'fixed',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: $t('preference.header-mode-auto'),
|
|
|
|
value: 'auto',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: $t('preference.header-mode-auto-scroll'),
|
|
|
|
value: 'auto-scroll',
|
|
|
|
},
|
|
|
|
];
|
|
|
|
</script>
|
|
|
|
|
|
|
|
<template>
|
2024-06-09 12:53:38 +08:00
|
|
|
<SwitchItem v-model="headerEnable" :disabled="disabled">
|
2024-05-19 21:20:42 +08:00
|
|
|
{{ $t('preference.header-visible') }}
|
|
|
|
</SwitchItem>
|
|
|
|
<SelectItem
|
|
|
|
v-model="headerMode"
|
|
|
|
:items="localeItems"
|
2024-06-09 12:53:38 +08:00
|
|
|
:disabled="!headerEnable"
|
2024-05-19 21:20:42 +08:00
|
|
|
>
|
|
|
|
{{ $t('preference.mode') }}
|
|
|
|
</SelectItem>
|
|
|
|
</template>
|