diff options
Diffstat (limited to 'app/serializers')
-rw-r--r-- | app/serializers/blob_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/board_simple_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/build_details_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/cluster_basic_entity.rb | 10 | ||||
-rw-r--r-- | app/serializers/current_board_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/deployment_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/discussion_serializer.rb | 2 | ||||
-rw-r--r-- | app/serializers/environment_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/issuable_sidebar_basic_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/issue_board_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/issue_entity.rb | 9 | ||||
-rw-r--r-- | app/serializers/issue_sidebar_basic_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/issue_sidebar_extras_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/merge_request_poll_widget_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/merge_request_widget_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/pipeline_details_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/pipeline_serializer.rb | 2 | ||||
-rw-r--r-- | app/serializers/project_mirror_entity.rb | 2 | ||||
-rw-r--r-- | app/serializers/user_preference_entity.rb | 2 |
19 files changed, 52 insertions, 1 deletions
diff --git a/app/serializers/blob_entity.rb b/app/serializers/blob_entity.rb index 3ac61481dea..a54af899ba2 100644 --- a/app/serializers/blob_entity.rb +++ b/app/serializers/blob_entity.rb @@ -15,3 +15,5 @@ class BlobEntity < Grape::Entity project_blob_path(request.project, File.join(request.ref, blob.path)) end end + +BlobEntity.prepend_if_ee('EE::BlobEntity') diff --git a/app/serializers/board_simple_entity.rb b/app/serializers/board_simple_entity.rb index 029d3808e75..a3c16a0b5c7 100644 --- a/app/serializers/board_simple_entity.rb +++ b/app/serializers/board_simple_entity.rb @@ -4,3 +4,5 @@ class BoardSimpleEntity < Grape::Entity expose :id expose :name end + +BoardSimpleEntity.prepend_if_ee('EE::BoardSimpleEntity') diff --git a/app/serializers/build_details_entity.rb b/app/serializers/build_details_entity.rb index 67e44ee9d10..0c754157267 100644 --- a/app/serializers/build_details_entity.rb +++ b/app/serializers/build_details_entity.rb @@ -1,6 +1,8 @@ # frozen_string_literal: true class BuildDetailsEntity < JobEntity + prepend_if_ee('::EE::BuildDetailEntity') # rubocop: disable Cop/InjectEnterpriseEditionModule + expose :coverage, :erased_at, :duration expose :tag_list, as: :tags expose :has_trace?, as: :has_trace diff --git a/app/serializers/cluster_basic_entity.rb b/app/serializers/cluster_basic_entity.rb new file mode 100644 index 00000000000..d104f2c8bbd --- /dev/null +++ b/app/serializers/cluster_basic_entity.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +class ClusterBasicEntity < Grape::Entity + include RequestAwareEntity + + expose :name + expose :path, if: -> (cluster) { can?(request.current_user, :read_cluster, cluster) } do |cluster| + cluster.present(current_user: request.current_user).show_path + end +end diff --git a/app/serializers/current_board_entity.rb b/app/serializers/current_board_entity.rb index 371151532f8..f9d6691dc84 100644 --- a/app/serializers/current_board_entity.rb +++ b/app/serializers/current_board_entity.rb @@ -4,3 +4,5 @@ class CurrentBoardEntity < Grape::Entity expose :id expose :name end + +CurrentBoardEntity.prepend_if_ee('EE::CurrentBoardEntity') diff --git a/app/serializers/deployment_entity.rb b/app/serializers/deployment_entity.rb index 94a827658f0..e6421315b34 100644 --- a/app/serializers/deployment_entity.rb +++ b/app/serializers/deployment_entity.rb @@ -38,6 +38,8 @@ class DeploymentEntity < Grape::Entity expose :manual_actions, using: JobEntity, if: -> (*) { include_details? && can_create_deployment? } expose :scheduled_actions, using: JobEntity, if: -> (*) { include_details? && can_create_deployment? } + expose :cluster, using: ClusterBasicEntity + private def include_details? diff --git a/app/serializers/discussion_serializer.rb b/app/serializers/discussion_serializer.rb index 8bb7e93c033..7e7148b046e 100644 --- a/app/serializers/discussion_serializer.rb +++ b/app/serializers/discussion_serializer.rb @@ -17,3 +17,5 @@ class DiscussionSerializer < BaseSerializer opts.merge(additional_opts) end end + +DiscussionSerializer.prepend_if_ee('EE::DiscussionSerializer') diff --git a/app/serializers/environment_entity.rb b/app/serializers/environment_entity.rb index 8258135da4e..bffd9de4978 100644 --- a/app/serializers/environment_entity.rb +++ b/app/serializers/environment_entity.rb @@ -66,3 +66,5 @@ class EnvironmentEntity < Grape::Entity deployment_platform.cluster end end + +EnvironmentEntity.prepend_if_ee('::EE::EnvironmentEntity') diff --git a/app/serializers/issuable_sidebar_basic_entity.rb b/app/serializers/issuable_sidebar_basic_entity.rb index 058c707ef9d..498cfe5930d 100644 --- a/app/serializers/issuable_sidebar_basic_entity.rb +++ b/app/serializers/issuable_sidebar_basic_entity.rb @@ -109,3 +109,5 @@ class IssuableSidebarBasicEntity < Grape::Entity request.current_user end end + +IssuableSidebarBasicEntity.prepend_if_ee('EE::IssuableSidebarBasicEntity') diff --git a/app/serializers/issue_board_entity.rb b/app/serializers/issue_board_entity.rb index 2e1d7fb3f87..b8f799a7456 100644 --- a/app/serializers/issue_board_entity.rb +++ b/app/serializers/issue_board_entity.rb @@ -50,3 +50,5 @@ class IssueBoardEntity < Grape::Entity project_labels_path(issue.project, format: :json, include_ancestor_groups: true) end end + +IssueBoardEntity.prepend_if_ee('EE::IssueBoardEntity') diff --git a/app/serializers/issue_entity.rb b/app/serializers/issue_entity.rb index 82139855760..a3d0298a495 100644 --- a/app/serializers/issue_entity.rb +++ b/app/serializers/issue_entity.rb @@ -2,6 +2,7 @@ class IssueEntity < IssuableEntity include TimeTrackableEntity + prepend_if_ee('::EE::IssueEntity') # rubocop: disable Cop/InjectEnterpriseEditionModule expose :state expose :milestone_id @@ -19,11 +20,17 @@ class IssueEntity < IssuableEntity expose :project_id expose :moved_to_id do |issue| - if issue.moved_to_id.present? && can?(request.current_user, :read_issue, issue.moved_to) + if issue.moved? && can?(request.current_user, :read_issue, issue.moved_to) issue.moved_to_id end end + expose :duplicated_to_id do |issue| + if issue.duplicated? && can?(request.current_user, :read_issue, issue.duplicated_to) + issue.duplicated_to_id + end + end + expose :web_url do |issue| project_issue_path(issue.project, issue) end diff --git a/app/serializers/issue_sidebar_basic_entity.rb b/app/serializers/issue_sidebar_basic_entity.rb index 723875809ec..165dc462cfe 100644 --- a/app/serializers/issue_sidebar_basic_entity.rb +++ b/app/serializers/issue_sidebar_basic_entity.rb @@ -4,3 +4,5 @@ class IssueSidebarBasicEntity < IssuableSidebarBasicEntity expose :due_date expose :confidential end + +IssueSidebarBasicEntity.prepend_if_ee('EE::IssueSidebarBasicEntity') diff --git a/app/serializers/issue_sidebar_extras_entity.rb b/app/serializers/issue_sidebar_extras_entity.rb index dee891a50b7..ea2a49baa41 100644 --- a/app/serializers/issue_sidebar_extras_entity.rb +++ b/app/serializers/issue_sidebar_extras_entity.rb @@ -2,3 +2,5 @@ class IssueSidebarExtrasEntity < IssuableSidebarExtrasEntity end + +IssueSidebarExtrasEntity.prepend_if_ee('EE::IssueSidebarExtrasEntity') diff --git a/app/serializers/merge_request_poll_widget_entity.rb b/app/serializers/merge_request_poll_widget_entity.rb index cd33ffa702a..854349e8507 100644 --- a/app/serializers/merge_request_poll_widget_entity.rb +++ b/app/serializers/merge_request_poll_widget_entity.rb @@ -130,3 +130,5 @@ class MergeRequestPollWidgetEntity < IssuableEntity @presenters[merge_request] ||= MergeRequestPresenter.new(merge_request, current_user: current_user) # rubocop: disable CodeReuse/Presenter end end + +MergeRequestPollWidgetEntity.prepend_if_ee('EE::MergeRequestPollWidgetEntity') diff --git a/app/serializers/merge_request_widget_entity.rb b/app/serializers/merge_request_widget_entity.rb index 2f2c42a7387..eda7a36c2ee 100644 --- a/app/serializers/merge_request_widget_entity.rb +++ b/app/serializers/merge_request_widget_entity.rb @@ -79,3 +79,5 @@ class MergeRequestWidgetEntity < Grape::Entity @presenters[merge_request] ||= MergeRequestPresenter.new(merge_request, current_user: current_user) # rubocop: disable CodeReuse/Presenter end end + +MergeRequestWidgetEntity.prepend_if_ee('EE::MergeRequestWidgetEntity') diff --git a/app/serializers/pipeline_details_entity.rb b/app/serializers/pipeline_details_entity.rb index dfef4364965..808e87c3fcf 100644 --- a/app/serializers/pipeline_details_entity.rb +++ b/app/serializers/pipeline_details_entity.rb @@ -11,3 +11,5 @@ class PipelineDetailsEntity < PipelineEntity expose :scheduled_actions, using: BuildActionEntity end end + +PipelineDetailsEntity.prepend_if_ee('EE::PipelineDetailsEntity') diff --git a/app/serializers/pipeline_serializer.rb b/app/serializers/pipeline_serializer.rb index 95d73c6422d..eaaeaf040a2 100644 --- a/app/serializers/pipeline_serializer.rb +++ b/app/serializers/pipeline_serializer.rb @@ -58,3 +58,5 @@ class PipelineSerializer < BaseSerializer ] end end + +PipelineSerializer.prepend_if_ee('EE::PipelineSerializer') diff --git a/app/serializers/project_mirror_entity.rb b/app/serializers/project_mirror_entity.rb index c13cc3276a7..2efd820d893 100644 --- a/app/serializers/project_mirror_entity.rb +++ b/app/serializers/project_mirror_entity.rb @@ -1,6 +1,8 @@ # frozen_string_literal: true class ProjectMirrorEntity < Grape::Entity + prepend_if_ee('::EE::ProjectMirrorEntity') # rubocop: disable Cop/InjectEnterpriseEditionModule + expose :id expose :remote_mirrors_attributes, using: RemoteMirrorEntity do |project| diff --git a/app/serializers/user_preference_entity.rb b/app/serializers/user_preference_entity.rb index b99f80424db..4a5dda1e364 100644 --- a/app/serializers/user_preference_entity.rb +++ b/app/serializers/user_preference_entity.rb @@ -12,3 +12,5 @@ class UserPreferenceEntity < Grape::Entity UserPreference::NOTES_FILTERS[:all_notes] end end + +UserPreferenceEntity.prepend_if_ee('EE::UserPreferenceEntity') |