41 lines
966 B
JavaScript
41 lines
966 B
JavaScript
|
import debounce from 'lodash/debounce'
|
||
|
|
||
|
export default {
|
||
|
namespaced: true,
|
||
|
state: {
|
||
|
subtitleShown: false,
|
||
|
subtitleStyle: '',
|
||
|
subtitleIcon: false,
|
||
|
subtitleText: '',
|
||
|
subtitleStatic: 'Welcome'
|
||
|
},
|
||
|
getters: {},
|
||
|
mutations: {
|
||
|
subtitleChange (state, opts) {
|
||
|
state.subtitleShown = (opts.shown === true)
|
||
|
state.subtitleStyle = opts.style || ''
|
||
|
state.subtitleIcon = opts.icon || false
|
||
|
state.subtitleText = opts.msg || ''
|
||
|
},
|
||
|
subtitleStatic (state, text) {
|
||
|
state.subtitleText = text
|
||
|
state.subtitleStatic = text
|
||
|
}
|
||
|
},
|
||
|
actions: {
|
||
|
alert ({ commit, dispatch }, opts) {
|
||
|
opts.shown = true
|
||
|
commit('subtitleChange', opts)
|
||
|
dispatch('alertDismiss')
|
||
|
},
|
||
|
alertDismiss: debounce(({ commit, state }) => {
|
||
|
let opts = {
|
||
|
shown: false,
|
||
|
style: state.subtitleStyle,
|
||
|
msg: state.subtitleStatic
|
||
|
}
|
||
|
commit('subtitleChange', opts)
|
||
|
}, 5000)
|
||
|
}
|
||
|
}
|