From e30d680b42eff52d9eb2a79ff7ed40bd8bb88d21 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Wed, 14 Apr 2021 21:09:09 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .../components/preview_item.vue | 14 +- .../notes/components/comment_form.vue | 128 +++++++++++------- .../notes/components/notes_app.vue | 7 + .../javascripts/notes/stores/getters.js | 27 +++- .../components/feature_highlight.scss | 9 ++ .../8225-allow-add-discussion-to-review.yml | 5 + .../img/mr_review_new_comment_v13_11.png | Bin 0 -> 32192 bytes doc/user/discussions/img/review_preview.png | Bin 27664 -> 0 bytes .../discussions/img/review_preview_v13_11.png | Bin 0 -> 28261 bytes doc/user/discussions/index.md | 18 ++- doc/user/permissions.md | 2 + locale/gitlab.pot | 8 +- .../merge_request/batch_comments_spec.rb | 121 +++++++++++------ .../components/preview_item_spec.js | 12 ++ .../notes/components/comment_form_spec.js | 67 ++++++++- .../notes/components/notes_app_spec.js | 32 +++++ spec/frontend/notes/mock_data.js | 10 ++ spec/frontend/notes/stores/getters_spec.js | 69 ++++++++-- 18 files changed, 410 insertions(+), 119 deletions(-) create mode 100644 app/assets/stylesheets/components/feature_highlight.scss create mode 100644 changelogs/unreleased/8225-allow-add-discussion-to-review.yml create mode 100644 doc/user/discussions/img/mr_review_new_comment_v13_11.png delete mode 100644 doc/user/discussions/img/review_preview.png create mode 100644 doc/user/discussions/img/review_preview_v13_11.png diff --git a/app/assets/javascripts/batch_comments/components/preview_item.vue b/app/assets/javascripts/batch_comments/components/preview_item.vue index 756bcfdb3d0..753608cf6f7 100644 --- a/app/assets/javascripts/batch_comments/components/preview_item.vue +++ b/app/assets/javascripts/batch_comments/components/preview_item.vue @@ -41,13 +41,17 @@ export default { titleText() { const file = this.discussion ? this.discussion.diff_file : this.draft; - if (file) { + if (file?.file_path) { return file.file_path; } - return sprintf(__("%{authorsName}'s thread"), { - authorsName: this.discussion.notes.find((note) => !note.system).author.name, - }); + if (this.discussion) { + return sprintf(__("%{authorsName}'s thread"), { + authorsName: this.discussion.notes.find((note) => !note.system).author.name, + }); + } + + return __('Your new comment'); }, linePosition() { if (this.position?.position_type === IMAGE_DIFF_POSITION_TYPE) { @@ -94,7 +98,7 @@ export default { - + {{ titleText }} + {{ issueActionButtonTitle }} diff --git a/app/assets/javascripts/notes/components/notes_app.vue b/app/assets/javascripts/notes/components/notes_app.vue index 58cfd150659..433f75a752d 100644 --- a/app/assets/javascripts/notes/components/notes_app.vue +++ b/app/assets/javascripts/notes/components/notes_app.vue @@ -3,8 +3,10 @@ import { mapGetters, mapActions } from 'vuex'; import highlightCurrentUser from '~/behaviors/markdown/highlight_current_user'; import { __ } from '~/locale'; import initUserPopovers from '~/user_popovers'; +import TimelineEntryItem from '~/vue_shared/components/notes/timeline_entry_item.vue'; import OrderedLayout from '~/vue_shared/components/ordered_layout.vue'; import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; +import draftNote from '../../batch_comments/components/draft_note.vue'; import { deprecatedCreateFlash as Flash } from '../../flash'; import { getLocationHash, doesHashExistInUrl } from '../../lib/utils/url_utility'; import placeholderNote from '../../vue_shared/components/notes/placeholder_note.vue'; @@ -32,6 +34,8 @@ export default { discussionFilterNote, OrderedLayout, SidebarSubscription, + draftNote, + TimelineEntryItem, }, mixins: [glFeatureFlagsMixin()], props: { @@ -276,6 +280,9 @@ export default {