mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-22 19:16:39 +10:00
54 lines
877 B
Ruby
54 lines
877 B
Ruby
module NoteOnDiff
|
|
extend ActiveSupport::Concern
|
|
|
|
NUMBER_OF_TRUNCATED_DIFF_LINES = 16
|
|
|
|
included do
|
|
delegate :blob, :highlighted_diff_lines, to: :diff_file, allow_nil: true
|
|
end
|
|
|
|
def diff_note?
|
|
true
|
|
end
|
|
|
|
def diff_file
|
|
raise NotImplementedError
|
|
end
|
|
|
|
def diff_line
|
|
raise NotImplementedError
|
|
end
|
|
|
|
def for_line?(line)
|
|
raise NotImplementedError
|
|
end
|
|
|
|
def diff_attributes
|
|
raise NotImplementedError
|
|
end
|
|
|
|
def can_be_award_emoji?
|
|
false
|
|
end
|
|
|
|
def truncated_diff_lines
|
|
prev_match_line = nil
|
|
prev_lines = []
|
|
|
|
highlighted_diff_lines.each do |line|
|
|
if line.meta?
|
|
prev_lines.clear
|
|
prev_match_line = line
|
|
else
|
|
prev_lines << line
|
|
|
|
break if for_line?(line)
|
|
|
|
prev_lines.shift if prev_lines.length >= NUMBER_OF_TRUNCATED_DIFF_LINES
|
|
end
|
|
end
|
|
|
|
prev_lines
|
|
end
|
|
end
|