Vben
2021-02-26 fcee7d4eb71471dd40567c8d7c97302eeee80697
提交 | 用户 | age
46e087 1 /**
V 2  * Application configuration
3  */
4
fcee7d 5 import type { ProjectConfig } from '/#/config';
2f6253 6
7 import { PROJ_CFG_KEY } from '/@/enums/cacheEnum';
8
9 import projectSetting from '/@/settings/projectSetting';
8a9ca4 10 import { getLocal } from '/@/utils/cache/persistent';
3d1681 11 import { updateHeaderBgColor, updateSidebarBgColor } from '/@/logics/theme/updateBackground';
V 12 import { updateColorWeak } from '/@/logics/theme/updateColorWeak';
13 import { updateGrayMode } from '/@/logics/theme/updateGrayMode';
14 import { changeTheme } from '/@/logics/theme';
2f6253 15
16 import { appStore } from '/@/store/modules/app';
190112 17 import { deepMerge } from '/@/utils';
3d1681 18 import { primaryColor } from '../../build/config/themeConfig';
2f6253 19
4ff6b7 20 // Initial project configuration
46e087 21 export function initAppConfigStore() {
2f6253 22   let projCfg: ProjectConfig = getLocal(PROJ_CFG_KEY) as ProjectConfig;
26b610 23   projCfg = deepMerge(projectSetting, projCfg || {});
2f6253 24   try {
26b610 25     const {
V 26       colorWeak,
27       grayMode,
3d1681 28       themeColor,
26b610 29       headerSetting: { bgColor: headerBgColor } = {},
V 30       menuSetting: { bgColor } = {},
31     } = projCfg;
3d1681 32     if (themeColor && themeColor !== primaryColor) {
V 33       changeTheme(themeColor);
34     }
7692ff 35     headerBgColor && updateHeaderBgColor(headerBgColor);
0692b4 36     bgColor && updateSidebarBgColor(bgColor);
2f6253 37     grayMode && updateGrayMode(grayMode);
38     colorWeak && updateColorWeak(colorWeak);
39   } catch (error) {
40     console.log(error);
41   }
42   appStore.commitProjectConfigState(projCfg);
43 }