|
@@ -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]
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|