summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/error_tracking/store/index.js
blob: d9206bc8d7c52090f3004d7a5f6cbf5d84552a3d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import Vue from 'vue';
import Vuex from 'vuex';

import * as actions from './actions';
import mutations from './mutations';

import * as listActions from './list/actions';
import listMutations from './list/mutations';
import listState from './list/state';

import * as detailsActions from './details/actions';
import detailsMutations from './details/mutations';
import detailsState from './details/state';
import * as detailsGetters from './details/getters';

Vue.use(Vuex);

export const createStore = () =>
  new Vuex.Store({
    modules: {
      list: {
        namespaced: true,
        state: listState(),
        actions: { ...actions, ...listActions },
        mutations: { ...mutations, ...listMutations },
      },
      details: {
        namespaced: true,
        state: detailsState(),
        actions: { ...actions, ...detailsActions },
        mutations: { ...mutations, ...detailsMutations },
        getters: detailsGetters,
      },
    },
  });

export default createStore();