diff options
author | Felipe Artur <felipefac@gmail.com> | 2018-05-10 14:16:05 -0300 |
---|---|---|
committer | Felipe Artur <felipefac@gmail.com> | 2018-05-10 14:16:05 -0300 |
commit | eda8818e4aba4b69d631e1496545274cb309eaec (patch) | |
tree | 70fb06e50359cd1bdc6df9f31508e60551a258e9 | |
parent | a23a2e091f91207a94386abcfacf43f2909463fe (diff) | |
parent | ed09d0c92944fe1e52b003cf48ec1dfab64e799c (diff) | |
download | gitlab-ce-eda8818e4aba4b69d631e1496545274cb309eaec.tar.gz |
Merge branch 'changes_tab_vue_refactoring' of gitlab.com:gitlab-org/gitlab-ce into changes_tab_vue_refactoring
5 files changed, 30 insertions, 6 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..2a6e8a17fe4 100644 --- a/app/assets/javascripts/notes/components/noteable_discussion.vue +++ b/app/assets/javascripts/notes/components/noteable_discussion.vue @@ -111,6 +111,13 @@ export default { newNotePath() { return this.getNoteableData.create_note_path; }, + lastNote() { + if (notes.length > 1) { + return notes[notes.length - 1]; + } + + return null; + }, lastUpdatedBy() { const { notes } = this.note; @@ -274,7 +281,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 +303,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/note_entity.rb b/app/serializers/note_entity.rb index fe7fcee1a58..1c45395358e 100644 --- a/app/serializers/note_entity.rb +++ b/app/serializers/note_entity.rb @@ -27,6 +27,8 @@ class NoteEntity < API::Entities::Note expose :resolved?, as: :resolved expose :resolvable?, as: :resolvable expose :resolved_by, using: NoteUserEntity + expose :resolved_at + expose :resolved_by_push?, as: :resolved_by_push expose :system_note_icon_name, if: -> (note, _) { note.system? } do |note| SystemNoteHelper.system_note_icon_name(note) diff --git a/spec/features/merge_request/user_posts_notes_spec.rb b/spec/features/merge_request/user_posts_notes_spec.rb index 8184a8c925a..8984e237e1e 100644 --- a/spec/features/merge_request/user_posts_notes_spec.rb +++ b/spec/features/merge_request/user_posts_notes_spec.rb @@ -132,8 +132,8 @@ describe 'Merge request > User posts notes', :js do end page.within("#note_#{note.id}") do - is_expected.to have_css('.note_edited_ago') - expect(find('.note_edited_ago').text) + is_expected.to have_css('.edited-text time') + expect(find('.edited-text time').text) .to match(/less than a minute ago/) end end |