import defaultSettings from '@/config' const { tabsBar, logo, layout, header, themeBar, style, themeColor } = defaultSettings const theme = JSON.parse(localStorage.getItem('eip-front-theme')) || '' const state = () => ({ tabsBar: theme.tabsBar || tabsBar, logo, collapse: false, layout: theme.layout || layout, style: theme.style || "custom_theme1", header: theme.header || header, themeColor: theme.themeColor || themeColor, device: 'desktop', themeBar, emailColor: false, messageColor: false, showAllRoutes: true, }) const getters = { collapse: (state) => state.collapse, device: (state) => state.device, header: (state) => state.header, layout: (state) => state.layout, style: (state) => state.style, logo: (state) => state.logo, tabsBar: (state) => state.tabsBar, themeBar: (state) => state.themeBar, themeColor: (state) => state.themeColor, } const mutations = { changeLayout: (state, layout) => { if (layout) state.layout = layout }, changeStyle: (state, style) => { if (style) state.style = style }, changeThemeColor: (state, themeColor) => { if (style) state.themeColor = themeColor }, changeHeader: (state, header) => { if (header) state.header = header }, changeTabsBar: (state, tabsBar) => { if (tabsBar) state.tabsBar = tabsBar }, changeCollapse: (state) => { state.collapse = !state.collapse }, foldSideBar: (state) => { state.collapse = true }, openSideBar: (state) => { state.collapse = false }, toggleDevice: (state, device) => { state.device = device }, changeEmailColor: (state, device) => { state.emailColor = device }, changeMessageColor: (state, device) => { state.messageColor = device }, changeshowAllRoutes: (state, device) => { state.showAllRoutes = device }, } const actions = { changeStyle({ commit }, style) { commit('changeStyle', style) }, changeLayout({ commit }, layout) { commit('changeLayout', layout) }, changeThemeColor({ commit }, themeColor) { commit('changeThemeColor', themeColor) }, changeHeader({ commit }, header) { commit('changeHeader', header) }, changeTabsBar({ commit }, tabsBar) { commit('changeTabsBar', tabsBar) }, changeCollapse({ commit }) { commit('changeCollapse') }, foldSideBar({ commit }) { commit('foldSideBar') }, openSideBar({ commit }) { commit('openSideBar') }, toggleDevice({ commit }, device) { commit('toggleDevice', device) }, } export default { state, getters, mutations, actions }