summaryrefslogtreecommitdiff
path: root/app/views/projects/notes/discussions/_diff.html.haml
blob: d46aab000c37560c75b28b38eacfa00218d9ae0d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
- diff = note.diff
- if diff
  .diff-file
    .diff-header
      %span
        - if diff.deleted_file
          = diff.old_path
        - else
          = diff.new_path
          - if diff.a_mode && diff.b_mode && diff.a_mode != diff.b_mode
            %span.file-mode= "#{diff.a_mode} → #{diff.b_mode}"
    .diff-content.code.js-syntax-highlight
      %table
        - note.truncated_diff_lines.each do |line|
          - type = line.type
          - line_code = generate_line_code(note.file_path, line)
          %tr.line_holder{ id: line_code, class: "#{type}" }
            - if type == "match"
              %td.old_line.diff-line-num= "..."
              %td.new_line.diff-line-num= "..."
              %td.line_content.match= line.text
            - else
              %td.old_line.diff-line-num{ data: { linenumber: type == "new" ? " ".html_safe : line.old_pos } }
              %td.new_line.diff-line-num{ data: { linenumber: type == "old" ? " ".html_safe : line.new_pos } }
              %td.line_content{ class: ['noteable_line', type, line_code], line_code: line_code }= diff_line_content(line.text, type)

              - if line_code == note.line_code
                = render "projects/notes/diff_notes_with_reply", notes: discussion_notes