ahaos f32a7105c3 !68 修复升级依赖带来的问题
* Merge remote-tracking branch 'origin/dev' into dev
* 升级依赖
* Merge remote-tracking branch 'origin/ts' into ts
* 升级依赖
* Merge branch 'dev' of gitee.com:JavaLionLi/plus-ui into ts
* 升级依赖
* !61 fix: 删除重复环境变量ElUploadInstance
* fix: 删除重复环境变量ElUploadInstance
2023-12-13 10:35:55 +00:00

73 lines
1.7 KiB
TypeScript

import zhCN from 'element-plus/es/locale/lang/zh-cn';
import enUS from 'element-plus/es/locale/lang/en';
export const useAppStore = defineStore('app', () => {
const sidebarStatus = useStorage('sidebarStatus', '1');
const sidebar = reactive({
opened: sidebarStatus.value ? !!+sidebarStatus.value : true,
withoutAnimation: false,
hide: false
});
const device = ref<string>('desktop');
const size = useStorage<'large' | 'default' | 'small'>('size', 'default');
// 语言
const language = useStorage('language', 'zh_CN');
const languageObj: any = {
en_US: enUS,
zh_CN: zhCN
};
const locale = computed(() => {
return languageObj[language.value];
});
const toggleSideBar = (withoutAnimation: boolean) => {
if (sidebar.hide) {
return false;
}
sidebar.opened = !sidebar.opened;
sidebar.withoutAnimation = withoutAnimation;
if (sidebar.opened) {
sidebarStatus.value = '1';
} else {
sidebarStatus.value = '0';
}
};
const closeSideBar = ({ withoutAnimation }: any): void => {
sidebarStatus.value = '0';
sidebar.opened = false;
sidebar.withoutAnimation = withoutAnimation;
};
const toggleDevice = (d: string): void => {
device.value = d;
};
const setSize = (s: 'large' | 'default' | 'small'): void => {
size.value = s;
};
const toggleSideBarHide = (status: boolean): void => {
sidebar.hide = status;
};
const changeLanguage = (val: string): void => {
language.value = val;
};
return {
device,
sidebar,
language,
locale,
size,
changeLanguage,
toggleSideBar,
closeSideBar,
toggleDevice,
setSize,
toggleSideBarHide
};
});
export default useAppStore;