summaryrefslogtreecommitdiff
path: root/app/serializers/merge_request_user_entity.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2021-02-18 10:34:06 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2021-02-18 10:34:06 +0000
commit859a6fb938bb9ee2a317c46dfa4fcc1af49608f0 (patch)
treed7f2700abe6b4ffcb2dcfc80631b2d87d0609239 /app/serializers/merge_request_user_entity.rb
parent446d496a6d000c73a304be52587cd9bbc7493136 (diff)
downloadgitlab-ce-859a6fb938bb9ee2a317c46dfa4fcc1af49608f0.tar.gz
Add latest changes from gitlab-org/gitlab@13-9-stable-eev13.9.0-rc42
Diffstat (limited to 'app/serializers/merge_request_user_entity.rb')
-rw-r--r--app/serializers/merge_request_user_entity.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/app/serializers/merge_request_user_entity.rb b/app/serializers/merge_request_user_entity.rb
index 604c9cabd50..edb7e10bac5 100644
--- a/app/serializers/merge_request_user_entity.rb
+++ b/app/serializers/merge_request_user_entity.rb
@@ -1,9 +1,22 @@
# frozen_string_literal: true
class MergeRequestUserEntity < ::API::Entities::UserBasic
+ include UserStatusTooltip
+ include RequestAwareEntity
+
expose :can_merge do |reviewer, options|
options[:merge_request]&.can_be_merged_by?(reviewer)
end
+
+ expose :can_update_merge_request do |reviewer, options|
+ request.current_user&.can?(:update_merge_request, options[:merge_request])
+ end
+
+ expose :reviewed, if: -> (_, options) { options[:merge_request] && options[:merge_request].allows_reviewers? } do |reviewer, options|
+ reviewer = options[:merge_request].find_reviewer(reviewer)
+
+ reviewer&.reviewed?
+ end
end
MergeRequestUserEntity.prepend_if_ee('EE::MergeRequestUserEntity')