debian-mirror-gitlab/app/serializers/linked_issue_entity.rb

47 lines
852 B
Ruby
Raw Normal View History

2020-11-24 15:15:51 +05:30
# frozen_string_literal: true
class LinkedIssueEntity < Grape::Entity
include RequestAwareEntity
2022-07-23 23:45:48 +05:30
format_with(:upcase) do |item|
item.try(:upcase)
end
2020-11-24 15:15:51 +05:30
expose :id, :confidential, :title
expose :assignees, using: UserEntity
expose :state
expose :milestone, using: API::Entities::Milestone
expose :weight
expose :reference do |link|
link.to_reference(issuable.project)
end
expose :path do |link|
2022-07-16 23:28:13 +05:30
Gitlab::UrlBuilder.build(link, only_path: true)
2020-11-24 15:15:51 +05:30
end
2022-07-23 23:45:48 +05:30
expose :issue_type,
as: :type,
format_with: :upcase,
documentation: { type: "String", desc: "One of #{::WorkItems::Type.base_types.keys.map(&:upcase)}" }
2020-11-24 15:15:51 +05:30
expose :relation_path
expose :due_date, :created_at, :closed_at
private
def current_user
request.current_user
end
def issuable
request.issuable
end
end