1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import { $themeConfig } from '../theme.config';
- import store from '@/stores';
- export default {
- init() {
- // set default styles
- let val: any = localStorage.getItem('theme'); // light, dark, system
- val = val || $themeConfig.theme;
- store.dispatch('toggleTheme', val);
- val = localStorage.getItem('menu'); // vertical, collapsible-vertical, horizontal
- val = val || $themeConfig.menu;
- store.dispatch('toggleMenu', val);
- val = localStorage.getItem('superMenu'); // vertical, collapsible-vertical, horizontal
- val = val || $themeConfig.superMenu;
- store.dispatch('toggleSuperMenu', val);
- val = localStorage.getItem('layout'); // full, boxed-layout
- val = val || $themeConfig.layout;
- store.dispatch('toggleLayout', val);
- val = localStorage.getItem('i18n_locale'); // en, da, de, el, es, fr, hu, it, ja, pl, pt, ru, sv, tr, zh
- val = val || $themeConfig.locale;
- const list = store.getters.languageList;
- const item = list.find((item: any) => item.code === val);
- if (item) {
- this.toggleLanguage(item);
- }
- val = localStorage.getItem('rtlClass'); // rtl, ltr
- val = val || $themeConfig.rtlClass;
- store.dispatch('toggleRTL', val);
- val = localStorage.getItem('animation'); // animate__fadeIn, animate__fadeInDown, animate__fadeInUp, animate__fadeInLeft, animate__fadeInRight, animate__slideInDown, animate__slideInLeft, animate__slideInRight, animate__zoomIn
- val = val || $themeConfig.animation;
- store.dispatch('toggleAnimation', val);
- val = localStorage.getItem('navbar'); // navbar-sticky, navbar-floating, navbar-static
- val = val || $themeConfig.navbar;
- store.dispatch('toggleNavbar', val);
- val = localStorage.getItem('semidark');
- val = val === 'true' ? true : $themeConfig.semidark;
- store.dispatch('toggleSemidark', val);
- },
- toggleLanguage(item: any) {
- /* const store = useStore(); */
- let lang: any = null;
- if (item) {
- lang = item;
- } else {
- let code = store.state.locale || null;
- if (!code) {
- code = localStorage.getItem('i18n_locale');
- }
- item = store.getters.languageList.find((d: any) => d.code === code);
- if (item) {
- lang = item;
- }
- }
- if (!lang) {
- lang = store.getters.languageList.find((d: any) => d.code === 'zh');
- }
- store.dispatch('toggleLocale', lang.code);
- return lang;
- },
- changeAnimation(type = 'add') {
- /* const store = useStore(); */
- if (store.state.animation) {
- const eleanimation: any = document.querySelector('.animation');
- if (type === 'add') {
- eleanimation?.classList.add('animate__animated');
- eleanimation?.classList.add(store.state.animation);
- } else {
- eleanimation?.classList.remove('animate__animated');
- eleanimation?.classList.remove(store.state.animation);
- }
- }
- },
- };
|