Merge branch '44939-epic-comment-thread-backports' into 'master'
Resolve "Follow-up from "Refactor discussions/notes code"" Closes #44939 See merge request gitlab-org/gitlab-ce!18190
This commit is contained in:
commit
52b232ca5d
|
@ -4,7 +4,8 @@ import $ from 'jquery';
|
|||
import _ from 'underscore';
|
||||
import Cookies from 'js-cookie';
|
||||
import { __ } from './locale';
|
||||
import { isInIssuePage, isInMRPage, isInEpicPage, hasVueMRDiscussionsCookie, updateTooltipTitle } from './lib/utils/common_utils';
|
||||
import { updateTooltipTitle } from './lib/utils/common_utils';
|
||||
import { isInVueNoteablePage } from './lib/utils/dom_utils';
|
||||
import flash from './flash';
|
||||
import axios from './lib/utils/axios_utils';
|
||||
|
||||
|
@ -243,7 +244,7 @@ class AwardsHandler {
|
|||
addAward(votesBlock, awardUrl, emoji, checkMutuality, callback) {
|
||||
const isMainAwardsBlock = votesBlock.closest('.js-noteable-awards').length;
|
||||
|
||||
if (this.isInVueNoteablePage() && !isMainAwardsBlock) {
|
||||
if (isInVueNoteablePage() && !isMainAwardsBlock) {
|
||||
const id = votesBlock.attr('id').replace('note_', '');
|
||||
|
||||
this.hideMenuElement($('.emoji-menu'));
|
||||
|
@ -295,16 +296,8 @@ class AwardsHandler {
|
|||
}
|
||||
}
|
||||
|
||||
isVueMRDiscussions() {
|
||||
return isInMRPage() && hasVueMRDiscussionsCookie() && !$('#diffs').is(':visible');
|
||||
}
|
||||
|
||||
isInVueNoteablePage() {
|
||||
return isInIssuePage() || isInEpicPage() || this.isVueMRDiscussions();
|
||||
}
|
||||
|
||||
getVotesBlock() {
|
||||
if (this.isInVueNoteablePage()) {
|
||||
if (isInVueNoteablePage()) {
|
||||
const $el = $('.js-add-award.is-active').closest('.note.timeline-entry');
|
||||
|
||||
if ($el.length) {
|
||||
|
|
|
@ -1,7 +1,12 @@
|
|||
/* eslint-disable import/prefer-default-export */
|
||||
import $ from 'jquery';
|
||||
import { isInIssuePage, isInMRPage, isInEpicPage, hasVueMRDiscussionsCookie } from './common_utils';
|
||||
|
||||
const isVueMRDiscussions = () => isInMRPage() && hasVueMRDiscussionsCookie() && !$('#diffs').is(':visible');
|
||||
|
||||
export const addClassIfElementExists = (element, className) => {
|
||||
if (element) {
|
||||
element.classList.add(className);
|
||||
}
|
||||
};
|
||||
|
||||
export const isInVueNoteablePage = () => isInIssuePage() || isInEpicPage() || isVueMRDiscussions();
|
||||
|
|
|
@ -13,8 +13,11 @@ export default function initMrNotes() {
|
|||
data() {
|
||||
const notesDataset = document.getElementById('js-vue-mr-discussions')
|
||||
.dataset;
|
||||
const noteableData = JSON.parse(notesDataset.noteableData);
|
||||
noteableData.noteableType = notesDataset.noteableType;
|
||||
|
||||
return {
|
||||
noteableData: JSON.parse(notesDataset.noteableData),
|
||||
noteableData,
|
||||
currentUserData: JSON.parse(notesDataset.currentUserData),
|
||||
notesData: JSON.parse(notesDataset.notesData),
|
||||
};
|
||||
|
|
|
@ -49,16 +49,7 @@ export default {
|
|||
computed: {
|
||||
...mapGetters(['notes', 'getNotesDataByProp', 'discussionCount']),
|
||||
noteableType() {
|
||||
// FIXME -- @fatihacet Get this from JSON data.
|
||||
const { ISSUE_NOTEABLE_TYPE, MERGE_REQUEST_NOTEABLE_TYPE, EPIC_NOTEABLE_TYPE } = constants;
|
||||
|
||||
if (this.noteableData.noteableType === EPIC_NOTEABLE_TYPE) {
|
||||
return EPIC_NOTEABLE_TYPE;
|
||||
}
|
||||
|
||||
return this.noteableData.merge_params
|
||||
? MERGE_REQUEST_NOTEABLE_TYPE
|
||||
: ISSUE_NOTEABLE_TYPE;
|
||||
return this.noteableData.noteableType;
|
||||
},
|
||||
allNotes() {
|
||||
if (this.isLoading) {
|
||||
|
|
|
@ -14,3 +14,9 @@ export const EPIC_NOTEABLE_TYPE = 'epic';
|
|||
export const MERGE_REQUEST_NOTEABLE_TYPE = 'merge_request';
|
||||
export const UNRESOLVE_NOTE_METHOD_NAME = 'delete';
|
||||
export const RESOLVE_NOTE_METHOD_NAME = 'post';
|
||||
|
||||
export const NOTEABLE_TYPE_MAPPING = {
|
||||
Issue: ISSUE_NOTEABLE_TYPE,
|
||||
MergeRequest: MERGE_REQUEST_NOTEABLE_TYPE,
|
||||
Epic: EPIC_NOTEABLE_TYPE,
|
||||
};
|
||||
|
|
|
@ -9,16 +9,7 @@ export default {
|
|||
},
|
||||
computed: {
|
||||
noteableType() {
|
||||
switch (this.note.noteable_type) {
|
||||
case 'MergeRequest':
|
||||
return constants.MERGE_REQUEST_NOTEABLE_TYPE;
|
||||
case 'Issue':
|
||||
return constants.ISSUE_NOTEABLE_TYPE;
|
||||
case 'Epic':
|
||||
return constants.EPIC_NOTEABLE_TYPE;
|
||||
default:
|
||||
return '';
|
||||
}
|
||||
return constants.NOTEABLE_TYPE_MAPPING[this.note.noteable_type];
|
||||
},
|
||||
},
|
||||
};
|
||||
|
|
|
@ -8,4 +8,5 @@
|
|||
%section.js-vue-notes-event
|
||||
#js-vue-notes{ data: { notes_data: notes_data(@issue),
|
||||
noteable_data: serialize_issuable(@issue),
|
||||
noteable_type: 'issue',
|
||||
current_user_data: UserSerializer.new.represent(current_user, only_path: true).to_json } }
|
||||
|
|
|
@ -80,6 +80,7 @@
|
|||
- if has_vue_discussions_cookie?
|
||||
#js-vue-mr-discussions{ data: { notes_data: notes_data(@merge_request),
|
||||
noteable_data: serialize_issuable(@merge_request),
|
||||
noteable_type: 'merge_request',
|
||||
current_user_data: UserSerializer.new.represent(current_user).to_json} }
|
||||
|
||||
#commits.commits.tab-pane
|
||||
|
|
|
@ -52,6 +52,7 @@ export const noteableDataMock = {
|
|||
updated_at: '2017-08-04T09:53:01.226Z',
|
||||
updated_by_id: 1,
|
||||
web_url: '/gitlab-org/gitlab-ce/issues/26',
|
||||
noteableType: 'issue',
|
||||
};
|
||||
|
||||
export const lastFetchedAt = '1501862675';
|
||||
|
|
Loading…
Reference in New Issue