import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) export default new Vuex.Store({ modules: {}, state: { specialContainerClass: '', showFilter: true, showModal: false, showNewContentBlockModal: false, contentBlockPosition: {}, scrollPosition: 0, moduleSlug: 'mein-neues-umfeld', updateContentBlocks: false }, getters: {}, actions: { hideFilter({commit}) { commit('setFilter', false) }, showFilter({commit}) { commit('setFilter', true) }, setSpecialContainerClass({commit}, payload) { commit('setSpecialContainerClass', payload); }, hideModal({commit}) { document.body.classList.remove('no-scroll'); // won't get at the body any other way commit('setModal', false); }, resetContentBlock({commit}) { commit('setContentBlockPosition', {}); }, addContentBlock({commit, dispatch}, payload) { commit('setContentBlockPosition', payload); dispatch('showModal', 'new-content-block-wizard'); }, showModal({commit}, payload) { document.body.classList.add('no-scroll'); // won't get at the body any other way commit('setModal', payload); }, updateContentBlocks({commit}) { commit('updateContentBlocks', true); }, resetUpdateContentBlocksFlag({commit}) { commit('updateContentBlocks', false); } }, mutations: { setFilter(state, payload) { state.showFilter = payload; }, setModal(state, payload) { state.showModal = payload; }, setSpecialContainerClass(state, payload) { state.specialContainerClass = payload; }, setScrollPosition(state, payload) { state.scrollPosition = payload; }, setNewContentBlock(state, payload) { state.newContentBlock = payload; }, updateContentBlocks(state, payload) { state.updateContentBlocks = payload; }, setContentBlockPosition(state, payload) { state.contentBlockPosition = payload; } } })