diff options
Diffstat (limited to 'app/assets/javascripts/vue_merge_request_widget/stores/mr_widget_store.js')
-rw-r--r-- | app/assets/javascripts/vue_merge_request_widget/stores/mr_widget_store.js | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/app/assets/javascripts/vue_merge_request_widget/stores/mr_widget_store.js b/app/assets/javascripts/vue_merge_request_widget/stores/mr_widget_store.js index f57b638dd81..9f85140bab8 100644 --- a/app/assets/javascripts/vue_merge_request_widget/stores/mr_widget_store.js +++ b/app/assets/javascripts/vue_merge_request_widget/stores/mr_widget_store.js @@ -1,6 +1,6 @@ import { format } from 'timeago.js'; import getStateKey from 'ee_else_ce/vue_merge_request_widget/stores/get_state_key'; -import mrEventHub from '~/merge_request/eventhub'; +import { statusBoxState } from '~/issuable/components/status_box.vue'; import { formatDate } from '../../lib/utils/datetime_utility'; import { MTWPS_MERGE_STRATEGY, MT_MERGE_STRATEGY, MWPS_MERGE_STRATEGY } from '../constants'; import { stateKey } from './state_maps'; @@ -23,6 +23,8 @@ export default class MergeRequestStore { setData(data, isRebased) { this.initApprovals(); + this.updateStatusState(data.state); + if (isRebased) { this.sha = data.diff_head_sha; } @@ -156,16 +158,14 @@ export default class MergeRequestStore { this.canRevertInCurrentMR = currentUser.can_revert_on_current_merge_request || false; this.setState(); - - if (!window.gon?.features?.mergeRequestWidgetGraphql) { - this.emitUpdatedState(); - } } setGraphqlData(project) { const { mergeRequest } = project; const pipeline = mergeRequest.headPipeline; + this.updateStatusState(mergeRequest.state); + this.projectArchived = project.archived; this.onlyAllowMergeIfPipelineSucceeds = project.onlyAllowMergeIfPipelineSucceeds; @@ -190,10 +190,15 @@ export default class MergeRequestStore { this.workInProgress = mergeRequest.workInProgress; this.mergeRequestState = mergeRequest.state; - this.emitUpdatedState(); this.setState(); } + updateStatusState(state) { + if (this.mergeRequestState !== state && statusBoxState.updateStatus) { + statusBoxState.updateStatus(); + } + } + setState() { if (this.mergeOngoing) { this.state = 'merging'; @@ -216,12 +221,6 @@ export default class MergeRequestStore { } } - emitUpdatedState() { - mrEventHub.$emit('mr.state.updated', { - state: this.mergeRequestState, - }); - } - setPaths(data) { // Paths are set on the first load of the page and not auto-refreshed this.squashBeforeMergeHelpPath = data.squash_before_merge_help_path; |