Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/serializers/group_group_link_entity.rb')
-rw-r--r--app/serializers/group_group_link_entity.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/app/serializers/group_group_link_entity.rb b/app/serializers/group_group_link_entity.rb
new file mode 100644
index 00000000000..7a51e1a9316
--- /dev/null
+++ b/app/serializers/group_group_link_entity.rb
@@ -0,0 +1,26 @@
+# frozen_string_literal: true
+
+class GroupGroupLinkEntity < Grape::Entity
+ expose :id
+ expose :created_at
+ expose :expires_at do |group_link|
+ group_link.expires_at&.to_time
+ end
+
+ expose :access_level do
+ expose :human_access, as: :string_value
+ expose :group_access, as: :integer_value
+ end
+
+ expose :shared_with_group do
+ expose :avatar_url do |group_link|
+ group_link.shared_with_group.avatar_url(only_path: false)
+ end
+
+ expose :web_url do |group_link|
+ group_link.shared_with_group.web_url
+ end
+
+ expose :shared_with_group, merge: true, using: GroupBasicEntity
+ end
+end