add gallery store
This commit is contained in:
@@ -4,6 +4,7 @@ import Vuex from 'vuex'
|
|||||||
import nodes from './nodes'
|
import nodes from './nodes'
|
||||||
import library from './modules/library'
|
import library from './modules/library'
|
||||||
import kit from './modules/kit'
|
import kit from './modules/kit'
|
||||||
|
import gallery from './modules/gallery'
|
||||||
import pages from './modules/pages'
|
import pages from './modules/pages'
|
||||||
|
|
||||||
Vue.use(Vuex)
|
Vue.use(Vuex)
|
||||||
@@ -13,6 +14,7 @@ export default new Vuex.Store({
|
|||||||
modules: {
|
modules: {
|
||||||
library,
|
library,
|
||||||
kit,
|
kit,
|
||||||
|
gallery,
|
||||||
pages
|
pages
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -0,0 +1,40 @@
|
|||||||
|
export default {
|
||||||
|
state: {
|
||||||
|
creation: undefined
|
||||||
|
},
|
||||||
|
|
||||||
|
mutations: {
|
||||||
|
'SET_CREATION' (state, id) {
|
||||||
|
state.creation = id
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
actions: {
|
||||||
|
async 'INIT_GALLERY' ({ state, commit, dispatch, getters }) {
|
||||||
|
const ids = await dispatch('GET_ALL_NODES_IDS', { variant: 'creation', dataLevel: 'full' })
|
||||||
|
dispatch('OPEN_CREATION', ids[ids.length - 1])
|
||||||
|
return dispatch('GET_NODES', { ids, dataLevel: 'full' })
|
||||||
|
},
|
||||||
|
|
||||||
|
async 'OPEN_CREATION' ({ state, commit, dispatch }, id) {
|
||||||
|
commit('SET_CREATION', id)
|
||||||
|
commit('ADD_HISTORY_ENTRIES', [id])
|
||||||
|
return dispatch('GET_NODE', { id, dataLevel: 'full' })
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
getters: {
|
||||||
|
creations: (state, getters, rootState) => {
|
||||||
|
const ids = rootState.ids.creation
|
||||||
|
if (ids === undefined) return
|
||||||
|
const nodes = ids.map(id => rootState.nodes[id])
|
||||||
|
if (nodes.some(node => node === undefined)) return
|
||||||
|
return nodes
|
||||||
|
},
|
||||||
|
|
||||||
|
creation: (state, getters, rootState) => {
|
||||||
|
if (state.creation === undefined || state.creation === null) return state.creation
|
||||||
|
return rootState.nodes[state.creation]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user