summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Knox <psimyn@gmail.com>2018-03-26 12:21:01 +1100
committerSimon Knox <psimyn@gmail.com>2018-03-26 12:21:01 +1100
commit24cc3e88d506ef9530615d9bc61307d318411a23 (patch)
treed3de2185a39e4acb0ce3d577fefe1ba8b8304805
parent63e427ac3bcf9a7bf0dc9e3ee840427d2bd4b59c (diff)
downloadgitlab-ce-vuex_note_modules.tar.gz
fix Vuex module structre for diffs and notesvuex_note_modules
match directory structure described in Vuex docs
-rw-r--r--app/assets/javascripts/diffs/store/index.js24
-rw-r--r--app/assets/javascripts/diffs/store/modules/index.js17
-rw-r--r--app/assets/javascripts/mr_notes/index.js16
-rw-r--r--app/assets/javascripts/mr_notes/stores/index.js23
-rw-r--r--app/assets/javascripts/mr_notes/stores/modules/index.js12
-rw-r--r--app/assets/javascripts/notes/index.js11
-rw-r--r--app/assets/javascripts/notes/stores/index.js21
-rw-r--r--app/assets/javascripts/notes/stores/modules/index.js22
8 files changed, 83 insertions, 63 deletions
diff --git a/app/assets/javascripts/diffs/store/index.js b/app/assets/javascripts/diffs/store/index.js
index a25851e2f79..e6aa8f5b12a 100644
--- a/app/assets/javascripts/diffs/store/index.js
+++ b/app/assets/javascripts/diffs/store/index.js
@@ -1,17 +1,11 @@
-import Cookies from 'js-cookie';
-import * as actions from './actions';
-import getters from './getters';
-import mutations from './mutations';
-import { INLINE_DIFF_VIEW_TYPE, DIFF_VIEW_COOKIE_NAME } from '../constants';
+import Vue from 'vue';
+import Vuex from 'vuex';
+import diffsModule from './modules';
-export default {
- state: {
- isLoading: true,
- endpoint: '',
- diffFiles: [],
- diffViewType: Cookies.get(DIFF_VIEW_COOKIE_NAME) || INLINE_DIFF_VIEW_TYPE,
+Vue.use(Vuex);
+
+export default new Vuex.Store({
+ modules: {
+ diffs: diffsModule,
},
- getters,
- actions,
- mutations,
-};
+});
diff --git a/app/assets/javascripts/diffs/store/modules/index.js b/app/assets/javascripts/diffs/store/modules/index.js
new file mode 100644
index 00000000000..5497145c6eb
--- /dev/null
+++ b/app/assets/javascripts/diffs/store/modules/index.js
@@ -0,0 +1,17 @@
+import Cookies from 'js-cookie';
+import * as actions from '../actions';
+import getters from '../getters';
+import mutations from '../mutations';
+import { INLINE_DIFF_VIEW_TYPE, DIFF_VIEW_COOKIE_NAME } from '../../constants';
+
+export default {
+ state: {
+ isLoading: true,
+ endpoint: '',
+ diffFiles: [],
+ diffViewType: Cookies.get(DIFF_VIEW_COOKIE_NAME) || INLINE_DIFF_VIEW_TYPE,
+ },
+ getters,
+ actions,
+ mutations,
+};
diff --git a/app/assets/javascripts/mr_notes/index.js b/app/assets/javascripts/mr_notes/index.js
index c09952364f4..2d2a37c26a5 100644
--- a/app/assets/javascripts/mr_notes/index.js
+++ b/app/assets/javascripts/mr_notes/index.js
@@ -1,23 +1,11 @@
import Vue from 'vue';
-import Vuex, { mapActions, mapState } from 'vuex';
+import { mapActions, mapState } from 'vuex';
import notesApp from '../notes/components/notes_app.vue';
import diffsApp from '../diffs/components/app.vue';
import discussionCounter from '../notes/components/discussion_counter.vue';
-import notesStoreConfig from '../notes/stores';
-import diffsStoreConfig from '../diffs/store';
-import mrPageStoreConfig from './stores';
+import store from './stores';
import MergeRequest from '../merge_request';
-Vue.use(Vuex);
-
-const store = new Vuex.Store({
- modules: {
- page: mrPageStoreConfig,
- notes: notesStoreConfig,
- diffs: diffsStoreConfig,
- },
-});
-
export default function initMrNotes() {
const mrShowNode = document.querySelector('.merge-request');
// eslint-disable-next-line no-new
diff --git a/app/assets/javascripts/mr_notes/stores/index.js b/app/assets/javascripts/mr_notes/stores/index.js
index 3284bc08c70..dd2019001db 100644
--- a/app/assets/javascripts/mr_notes/stores/index.js
+++ b/app/assets/javascripts/mr_notes/stores/index.js
@@ -1,12 +1,15 @@
-import actions from './actions';
-import getters from './getters';
-import mutations from './mutations';
+import Vue from 'vue';
+import Vuex from 'vuex';
+import notesModule from '~/notes/stores/modules';
+import diffsModule from '~/diffs/store/modules';
+import mrPageModule from './modules';
-export default {
- state: {
- activeTab: null,
+Vue.use(Vuex);
+
+export default new Vuex.Store({
+ modules: {
+ page: mrPageModule,
+ notes: notesModule,
+ diffs: diffsModule,
},
- actions,
- getters,
- mutations,
-};
+});
diff --git a/app/assets/javascripts/mr_notes/stores/modules/index.js b/app/assets/javascripts/mr_notes/stores/modules/index.js
new file mode 100644
index 00000000000..660081f76c8
--- /dev/null
+++ b/app/assets/javascripts/mr_notes/stores/modules/index.js
@@ -0,0 +1,12 @@
+import actions from '../actions';
+import getters from '../getters';
+import mutations from '../mutations';
+
+export default {
+ state: {
+ activeTab: null,
+ },
+ actions,
+ getters,
+ mutations,
+};
diff --git a/app/assets/javascripts/notes/index.js b/app/assets/javascripts/notes/index.js
index 66897e6a0db..aa100577fbe 100644
--- a/app/assets/javascripts/notes/index.js
+++ b/app/assets/javascripts/notes/index.js
@@ -1,15 +1,6 @@
import Vue from 'vue';
-import Vuex from 'vuex';
import notesApp from './components/notes_app.vue';
-import storeConfig from './stores';
-
-Vue.use(Vuex);
-
-const store = new Vuex.Store({
- modules: {
- notes: storeConfig,
- },
-});
+import store from './stores';
document.addEventListener(
'DOMContentLoaded',
diff --git a/app/assets/javascripts/notes/stores/index.js b/app/assets/javascripts/notes/stores/index.js
index f9805bc4d1e..1ed641a327e 100644
--- a/app/assets/javascripts/notes/stores/index.js
+++ b/app/assets/javascripts/notes/stores/index.js
@@ -1,22 +1,15 @@
+import Vue from 'vue';
+import Vuex from 'vuex';
import * as actions from './actions';
import * as getters from './getters';
import mutations from './mutations';
+import module from './modules';
-export default {
- state: {
- notes: [],
- targetNoteHash: null,
- lastFetchedAt: null,
+Vue.use(Vuex);
- // View layer
- isToggleStateButtonLoading: false,
-
- // holds endpoints and permissions provided through haml
- notesData: {},
- userData: {},
- noteableData: {},
- },
+export default new Vuex.Store({
+ state: module.state,
actions,
getters,
mutations,
-};
+});
diff --git a/app/assets/javascripts/notes/stores/modules/index.js b/app/assets/javascripts/notes/stores/modules/index.js
new file mode 100644
index 00000000000..0bbcb0e3615
--- /dev/null
+++ b/app/assets/javascripts/notes/stores/modules/index.js
@@ -0,0 +1,22 @@
+import * as actions from '../actions';
+import * as getters from '../getters';
+import mutations from '../mutations';
+
+export default {
+ state: {
+ notes: [],
+ targetNoteHash: null,
+ lastFetchedAt: null,
+
+ // View layer
+ isToggleStateButtonLoading: false,
+
+ // holds endpoints and permissions provided through haml
+ notesData: {},
+ userData: {},
+ noteableData: {},
+ },
+ actions,
+ getters,
+ mutations,
+};