Add basic draft saving
This commit is contained in:
parent
83189d9d41
commit
1aa0901471
3 changed files with 88 additions and 3 deletions
35
src/modules/drafts.js
Normal file
35
src/modules/drafts.js
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
|
||||
export const defaultState = {
|
||||
drafts: {}
|
||||
}
|
||||
|
||||
export const mutations = {
|
||||
addOrSaveDraft (state, { draft }) {
|
||||
state.drafts[draft.id] = draft
|
||||
}
|
||||
}
|
||||
|
||||
export const actions = {
|
||||
addOrSaveDraft (store, { draft }) {
|
||||
const id = draft.id || (new Date().getTime()).toString()
|
||||
store.commit('addOrSaveDraft', { draft: { ...draft, id } })
|
||||
return id
|
||||
}
|
||||
}
|
||||
|
||||
export const getters = {
|
||||
draftsByTypeAndRefId (state) {
|
||||
return (type, refId) => {
|
||||
return Object.values(state.drafts).filter(draft => draft.type === type && draft.refId === refId)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const drafts = {
|
||||
state: defaultState,
|
||||
mutations,
|
||||
getters,
|
||||
actions
|
||||
}
|
||||
|
||||
export default drafts
|
||||
Loading…
Add table
Add a link
Reference in a new issue