debian-mirror-gitlab/lib/atlassian/jira_connect/serializers/branch_entity.rb
2020-11-24 15:15:51 +05:30

32 lines
904 B
Ruby

# frozen_string_literal: true
module Atlassian
module JiraConnect
module Serializers
class BranchEntity < BaseEntity
expose :id do |branch|
Digest::SHA256.hexdigest(branch.name)
end
expose :issueKeys do |branch|
JiraIssueKeyExtractor.new(branch.name).issue_keys
end
expose :name
expose :lastCommit, using: JiraConnect::Serializers::CommitEntity do |branch, options|
options[:project].commit(branch.dereferenced_target)
end
expose :url do |branch, options|
project_commits_url(options[:project], branch.name)
end
expose :createPullRequestUrl do |branch, options|
project_new_merge_request_url(
options[:project],
merge_request: {
source_branch: branch.name
}
)
end
end
end
end
end