general.vue 803 B

123456789101112131415161718192021222324252627282930
  1. <script setup lang="ts">
  2. import type { SelectListItem } from '@vben/types';
  3. import { $t } from '@vben-core/locales';
  4. import { SUPPORT_LANGUAGES } from '@vben-core/preferences';
  5. import SelectItem from '../select-item.vue';
  6. import SwitchItem from '../switch-item.vue';
  7. defineOptions({
  8. name: 'PreferenceGeneralConfig',
  9. });
  10. const appLocale = defineModel<string>('appLocale');
  11. const appDynamicTitle = defineModel<boolean>('appDynamicTitle');
  12. const localeItems: SelectListItem[] = SUPPORT_LANGUAGES.map((item) => ({
  13. label: item.text,
  14. value: item.key,
  15. }));
  16. </script>
  17. <template>
  18. <SelectItem v-model="appLocale" :items="localeItems">
  19. {{ $t('preferences.language') }}
  20. </SelectItem>
  21. <SwitchItem v-model="appDynamicTitle">
  22. {{ $t('preferences.dynamic-title') }}
  23. </SwitchItem>
  24. </template>