summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWinnie Hellmann <winnie@gitlab.com>2018-05-10 17:54:41 +0200
committerWinnie Hellmann <winnie@gitlab.com>2018-05-10 17:54:41 +0200
commit1c33f84dd14a259c193655c30e6b7fedb0b01df8 (patch)
tree121f648337670afa04b3b5bf824f0a0fb15e2d1e
parent0eefbdb19e056bcaf38d981885b8b95624d5e178 (diff)
downloadgitlab-ce-1c33f84dd14a259c193655c30e6b7fedb0b01df8.tar.gz
Add "resolved by" to discussions
-rw-r--r--app/assets/javascripts/notes/components/note_body.vue2
-rw-r--r--app/assets/javascripts/notes/components/note_edited_text.vue3
-rw-r--r--app/assets/javascripts/notes/components/noteable_discussion.vue18
-rw-r--r--app/serializers/discussion_entity.rb1
4 files changed, 20 insertions, 4 deletions
diff --git a/app/assets/javascripts/notes/components/note_body.vue b/app/assets/javascripts/notes/components/note_body.vue
index 2464f95b3c6..2e153e1e96d 100644
--- a/app/assets/javascripts/notes/components/note_body.vue
+++ b/app/assets/javascripts/notes/components/note_body.vue
@@ -107,7 +107,7 @@ export default {
action-text="Edited"
/>
<note-awards-list
- v-if="note.award_emoji.length"
+ v-if="note.award_emoji && note.award_emoji.length"
:note-id="note.id"
:note-author-id="note.author.id"
:awards="note.award_emoji"
diff --git a/app/assets/javascripts/notes/components/note_edited_text.vue b/app/assets/javascripts/notes/components/note_edited_text.vue
index 4ddca918495..bcf63d357a2 100644
--- a/app/assets/javascripts/notes/components/note_edited_text.vue
+++ b/app/assets/javascripts/notes/components/note_edited_text.vue
@@ -13,7 +13,7 @@ export default {
},
editedAt: {
type: String,
- required: true,
+ required: false,
},
editedBy: {
type: Object,
@@ -33,6 +33,7 @@ export default {
<div :class="className">
{{ actionText }}
<time-ago-tooltip
+ v-if="editedAt"
:time="editedAt"
tooltip-placement="bottom"
/>
diff --git a/app/assets/javascripts/notes/components/noteable_discussion.vue b/app/assets/javascripts/notes/components/noteable_discussion.vue
index 6a921c9908a..c135f0bc960 100644
--- a/app/assets/javascripts/notes/components/noteable_discussion.vue
+++ b/app/assets/javascripts/notes/components/noteable_discussion.vue
@@ -274,7 +274,21 @@ Please check your network connection and try again.`;
:action-text-html="actionTextHtml"
/>
<note-edited-text
- v-if="lastUpdatedAt"
+ v-if="discussion.resolved && discussion.resolved_by_push"
+ :edited-at="discussion.resolved_at"
+ :edited-by="discussion.resolved_by"
+ action-text="Automatically resolved with a push"
+ class-name="discussion-headline-light js-discussion-headline"
+ />
+ <note-edited-text
+ v-if="discussion.resolved && !discussion.resolved_by_push"
+ :edited-at="discussion.resolved_at"
+ :edited-by="discussion.resolved_by"
+ action-text="Resolved"
+ class-name="discussion-headline-light js-discussion-headline"
+ />
+ <note-edited-text
+ v-if="lastUpdatedAt && !discussion.resolved"
:edited-at="lastUpdatedAt"
:edited-by="lastUpdatedBy"
action-text="Last updated"
@@ -282,7 +296,7 @@ Please check your network connection and try again.`;
/>
</div>
<div
- v-if="note.expanded || alwaysExpanded"
+ v-show="note.expanded || alwaysExpanded"
class="discussion-body">
<component
:is="wrapperComponent"
diff --git a/app/serializers/discussion_entity.rb b/app/serializers/discussion_entity.rb
index 4e1819aa3fc..cd919ca511d 100644
--- a/app/serializers/discussion_entity.rb
+++ b/app/serializers/discussion_entity.rb
@@ -25,6 +25,7 @@ class DiscussionEntity < Grape::Entity
expose :resolve_with_issue_path, if: -> (d, _) { d.resolvable? } do |discussion|
new_project_issue_path(discussion.project, merge_request_to_resolve_discussions_of: discussion.noteable.iid, discussion_to_resolve: discussion.id)
end
+ expose :resolved_by_push?, as: :resolved_by_push
expose :diff_file, using: DiffFileEntity, if: -> (discussion, _) { discussion.respond_to?(:diff_file) }