| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- import type { ProjectConfig } from '@jeesite/types/config';
- import { computed } from 'vue';
- import { useAppStore } from '@jeesite/core/store/modules/app';
- import { ContentEnum, ThemeEnum } from '@jeesite/core/enums/appEnum';
- type RootSetting = Omit<ProjectConfig, 'locale' | 'headerSetting' | 'menuSetting' | 'multiTabsSetting'>;
- export function useRootSetting() {
- const appStore = useAppStore();
- 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 getTableSize = computed(() => appStore.getProjectConfig.tableSize);
- const getShowDarkModeToggle = computed(() => appStore.getProjectConfig.showDarkModeToggle);
- const getDarkMode = computed(() => appStore.getDarkMode);
- const getLayoutContentMode = computed(() =>
- appStore.getProjectConfig.contentMode === ContentEnum.FULL ? ContentEnum.FULL : ContentEnum.FIXED,
- );
- 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,
- getTableSize,
- getThemeColor,
- getDarkMode,
- setDarkMode,
- getShowDarkModeToggle,
- };
- }
|