gitlab-org--gitlab-foss/app/serializers/concerns/diff_file_conflict_type.rb

25 lines
521 B
Ruby

# frozen_string_literal: true
module DiffFileConflictType
extend ActiveSupport::Concern
include Gitlab::Utils::StrongMemoize
included do
expose :conflict_type do |diff_file, options|
conflict_file = conflict_file(options, diff_file)
next unless conflict_file
conflict_file.conflict_type(diff_file)
end
end
private
def conflict_file(options, diff_file)
strong_memoize(:conflict_file) do
options[:conflicts] && options[:conflicts][diff_file.new_path]
end
end
end