index.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import Vue from 'vue'
  2. import Vuex from 'vuex'
  3. import anchor from './modules/anchor'
  4. import editor from './modules/editor'
  5. import editorCodeblock from './modules/editor-codeblock'
  6. import editorFile from './modules/editor-file'
  7. import editorVideo from './modules/editor-video'
  8. import modalCreatePage from './modules/modal-create-page'
  9. import modalCreateUser from './modules/modal-create-user'
  10. import modalDeleteUser from './modules/modal-delete-user'
  11. import modalDeletePage from './modules/modal-delete-page'
  12. import modalDiscardPage from './modules/modal-discard-page'
  13. import modalMovePage from './modules/modal-move-page'
  14. import modalProfile2fa from './modules/modal-profile-2fa'
  15. import modalUpgradeSystem from './modules/modal-upgrade-system'
  16. import navigator from './modules/navigator'
  17. import pageLoader from './modules/page-loader'
  18. Vue.use(Vuex)
  19. export default new Vuex.Store({
  20. state: {
  21. loading: false
  22. },
  23. mutations: {
  24. loadingChange: (state, loadingState) => { state.loading = loadingState }
  25. },
  26. actions: {
  27. alert({ dispatch }, opts) { dispatch('navigator/alert', opts) },
  28. startLoading({ commit }) { commit('loadingChange', true) },
  29. stopLoading({ commit }) { commit('loadingChange', false) }
  30. },
  31. getters: {},
  32. modules: {
  33. anchor,
  34. editor,
  35. editorCodeblock,
  36. editorFile,
  37. editorVideo,
  38. modalCreatePage,
  39. modalCreateUser,
  40. modalDeletePage,
  41. modalDeleteUser,
  42. modalDiscardPage,
  43. modalMovePage,
  44. modalProfile2fa,
  45. modalUpgradeSystem,
  46. navigator,
  47. pageLoader
  48. }
  49. })