diff options
| author | Zephyrrus <[email protected]> | 2020-07-10 01:17:00 +0300 |
|---|---|---|
| committer | GitHub <[email protected]> | 2020-07-10 01:17:00 +0300 |
| commit | a721681944e9eb06742e5b3f71c71aed9c1c117d (patch) | |
| tree | 93ff9fd13a0434d91fb1ae7ca0da48d6929c4d00 /src/site/store/alert.js | |
| parent | feat: backend pagination for albums (diff) | |
| parent | refactor: finish refactoring all the components to use vuex (diff) | |
| download | host.fuwn.me-a721681944e9eb06742e5b3f71c71aed9c1c117d.tar.xz host.fuwn.me-a721681944e9eb06742e5b3f71c71aed9c1c117d.zip | |
Merge pull request #1 from Zephyrrus/feature/store_refactor
Feature/store refactor
Diffstat (limited to 'src/site/store/alert.js')
| -rw-r--r-- | src/site/store/alert.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/site/store/alert.js b/src/site/store/alert.js new file mode 100644 index 0000000..580dcc8 --- /dev/null +++ b/src/site/store/alert.js @@ -0,0 +1,33 @@ +import AlertTypes from '~/constants/alertTypes'; + +const getDefaultState = () => ({ + message: null, + type: null, + snackbar: false, +}); + +export const state = getDefaultState; + +export const actions = { + set({ commit }, data) { + // Only exists for backwards compatibility, remove one day + if (data.error === true) data.type = AlertTypes.ERROR; + if (data.text !== undefined) data.message = data.text; + + commit('set', data); + }, + clear({ commit }) { + commit('clear'); + }, +}; + +export const mutations = { + set(state, { message, type, snackbar }) { + state.message = message; + state.type = type; + state.snackbar = snackbar || false; + }, + clear(state) { + Object.assign(state, getDefaultState()); + }, +}; |