12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- import type { ProjectConfig } from '/#/config';
- import { computed } from 'vue';
- import { useAppStore } from '/@/store/modules/app';
- import { useVentStore } from '/@/store/modules/vent';
- import { ContentEnum, ThemeEnum } from '/@/enums/appEnum';
- type RootSetting = Omit<ProjectConfig, 'locale' | 'headerSetting' | 'menuSetting' | 'multiTabsSetting'>;
- export function useRootSetting() {
- const appStore = useAppStore();
-
- const ventStore = useVentStore(); //通风项目初始设置
- const getPageLoading = computed(() => appStore.getPageLoading);
- const getOpenKeepAlive = computed(() => appStore.getProjectConfig.openKeepAlive);
- const getSettingButtonPosition = computed(() => appStore.getProjectConfig.settingButtonPosition);
- const getCanEmbedIFramePage = computed(() => appStore.getProjectConfig.canEmbedIFramePage);
- const getPermissionMode = computed(() => appStore.getProjectConfig.permissionMode);
- const getShowLogo = computed(() => appStore.getProjectConfig.showLogo);
- const getContentMode = computed(() => appStore.getProjectConfig.contentMode);
- const getUseOpenBackTop = computed(() => appStore.getProjectConfig.useOpenBackTop);
- const getShowSettingButton = computed(() => appStore.getProjectConfig.showSettingButton);
- const getUseErrorHandle = computed(() => appStore.getProjectConfig.useErrorHandle);
- const getShowFooter = computed(() => appStore.getProjectConfig.showFooter);
- const getShowBreadCrumb = computed(() => appStore.getProjectConfig.showBreadCrumb);
- const getThemeColor = computed(() => appStore.getProjectConfig.themeColor);
- const getShowBreadCrumbIcon = computed(() => appStore.getProjectConfig.showBreadCrumbIcon);
- const getFullContent = computed(() => appStore.getProjectConfig.fullContent);
- const getColorWeak = computed(() => appStore.getProjectConfig.colorWeak);
- const getGrayMode = computed(() => appStore.getProjectConfig.grayMode);
- const getLockTime = computed(() => appStore.getProjectConfig.lockTime);
- const getShowDarkModeToggle = computed(() => appStore.getProjectConfig.showDarkModeToggle);
- const getDarkMode = computed(() => appStore.getDarkMode);
- const getLayoutContentMode = computed(() => (appStore.getProjectConfig.contentMode === ContentEnum.FULL ? ContentEnum.FULL : ContentEnum.FIXED));
-
- //通风项目
- ventStore.setAllTableHeaderColumns();
- function setRootSetting(setting: Partial<RootSetting>) {
- appStore.setProjectConfig(setting);
- }
- function setDarkMode(mode: ThemeEnum) {
- appStore.setDarkMode(mode);
- }
- return {
- setRootSetting,
- getSettingButtonPosition,
- getFullContent,
- getColorWeak,
- getGrayMode,
- getLayoutContentMode,
- getPageLoading,
- getOpenKeepAlive,
- getCanEmbedIFramePage,
- getPermissionMode,
- getShowLogo,
- getUseErrorHandle,
- getShowBreadCrumb,
- getShowBreadCrumbIcon,
- getUseOpenBackTop,
- getShowSettingButton,
- getShowFooter,
- getContentMode,
- getLockTime,
- getThemeColor,
- getDarkMode,
- setDarkMode,
- getShowDarkModeToggle,
- };
- }
|