Remove state modifications from boards components

This is part of refactoring issue boards to Vuex (&1278 (closed)) and needs to happen after https://gitlab.com/gitlab-org/gitlab-ce/issues/61622.

Mutation of a store state should only happen in the store itself, so the following places need to be wrapped in store methods:

$ grep -Eir 'store\.(.*) = ' {ee/,}app/assets/javascripts/boards/components
ee/app/assets/javascripts/boards/components/boards_list_selector/index.js:          this.store.state[this.listType] = data;
ee/app/assets/javascripts/boards/components/boards_list_selector/index.js:        this.store.state.lists = _.sortBy(this.store.state.lists, 'position');
ee/app/assets/javascripts/boards/components/boards_selector.vue:    boardsStore.state.assignees = [];
ee/app/assets/javascripts/boards/components/boards_selector.vue:    boardsStore.state.milestones = [];
ee/app/assets/javascripts/boards/components/board_form.vue:      boardsStore.state.currentPage = '';
app/assets/javascripts/boards/components/sidebar/remove_issue.vue:      boardsStore.detail.issue = {};
app/assets/javascripts/boards/components/board_blank_state.vue:      boardsStore.state.lists = _.sortBy(boardsStore.state.lists, 'position');
app/assets/javascripts/boards/components/board_card.vue:          boardsStore.detail.list = this.list;
app/assets/javascripts/boards/components/board_list.vue:        boardsStore.moving.list = card.list;
app/assets/javascripts/boards/components/board_list.vue:        boardsStore.moving.issue = boardsStore.moving.list.findIssue(+e.item.dataset.issueId);
app/assets/javascripts/boards/components/new_list_dropdown.js:          boardsStore.state.lists = _.sortBy(boardsStore.state.lists, 'position');
app/assets/javascripts/boards/components/board_new_issue.vue:          boardsStore.detail.issue = issue;
app/assets/javascripts/boards/components/board_new_issue.vue:          boardsStore.detail.list = this.list;
app/assets/javascripts/boards/components/issue_card_inner.vue:      boardsStore.filter.path = filterPath.join('&');
app/assets/javascripts/boards/components/modal/filters.js:    this.store.path = '';
  • ee/app/assets/javascripts/boards/components/boards_list_selector/index.js
    • https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/13203
    • https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/13204
  • ee/app/assets/javascripts/boards/components/boards_selector.vue
    • https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/13207
    • https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/13209
  • ee/app/assets/javascripts/boards/components/board_form.vue
    • https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/13243
  • app/assets/javascripts/boards/components/sidebar/remove_issue.vue
    • https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/28825
  • app/assets/javascripts/boards/components/board_blank_state.vue
    • https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/28827
  • app/assets/javascripts/boards/components/board_card.vue
    • https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/29063
  • app/assets/javascripts/boards/components/board_list.vue
    • https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/29076
  • app/assets/javascripts/boards/components/new_list_dropdown.js
    • https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/29077
  • app/assets/javascripts/boards/components/board_new_issue.vue
    • https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/29063
    • https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/29071
  • app/assets/javascripts/boards/components/issue_card_inner.vue
    • https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/29083
  • app/assets/javascripts/boards/components/modal/filters.js
    • This uses a different store (app/assets/javascripts/boards/stores/modal_store.js), so I would consider it out of scope here.

Example

- boardsStore.detail.issue = {};
+ boardsStore.clearIssue();

(https://gitlab.com/gitlab-org/gitlab-ce/blob/922fae29ca100e7f7f30fcb62541305994430779/app/assets/javascripts/boards/components/sidebar/remove_issue.vue#L51)

Edited Jun 03, 2019 by Inactive Account
Assignee Loading
Time tracking Loading