2017-08-17 22:00:37 +05:30
|
|
|
- environment = local_assigns.fetch(:environment, nil)
|
2016-06-02 11:05:42 +05:30
|
|
|
- show_whitespace_toggle = local_assigns.fetch(:show_whitespace_toggle, true)
|
2016-11-03 12:29:30 +05:30
|
|
|
- can_create_note = !@diff_notes_disabled && can?(current_user, :create_note, diffs.project)
|
2019-03-02 22:35:43 +05:30
|
|
|
- diff_page_context = local_assigns.fetch(:diff_page_context, nil)
|
2020-10-24 23:57:45 +05:30
|
|
|
- load_diff_files_async = Feature.enabled?(:async_commit_diff_files, @project) && diff_page_context == "is-commit"
|
2021-03-11 19:13:27 +05:30
|
|
|
- paginate_diffs = local_assigns.fetch(:paginate_diffs, false) && !load_diff_files_async && Feature.enabled?(:paginate_commit_view, @project, type: :development)
|
|
|
|
- diff_files = conditionally_paginate_diff_files(diffs, paginate: paginate_diffs)
|
2015-09-25 12:07:36 +05:30
|
|
|
|
2019-02-15 15:39:39 +05:30
|
|
|
.content-block.oneline-block.files-changed.diff-files-changed.js-diff-files-changed
|
2017-09-10 17:25:29 +05:30
|
|
|
.files-changed-inner
|
2021-01-03 14:25:43 +05:30
|
|
|
.inline-parallel-buttons.d-none.d-md-block
|
2017-09-10 17:25:29 +05:30
|
|
|
- if !diffs_expanded? && diff_files.any? { |diff_file| diff_file.collapsed? }
|
2021-01-29 00:20:46 +05:30
|
|
|
= link_to _('Expand all'), url_for(safe_params.merge(expanded: 1, format: nil)), class: 'gl-button btn btn-default'
|
2017-09-10 17:25:29 +05:30
|
|
|
- if show_whitespace_toggle
|
|
|
|
- if current_controller?(:commit)
|
2018-11-08 19:23:39 +05:30
|
|
|
= commit_diff_whitespace_link(diffs.project, @commit, class: 'd-none d-sm-inline-block')
|
2017-09-10 17:25:29 +05:30
|
|
|
- elsif current_controller?('projects/merge_requests/diffs')
|
2018-11-08 19:23:39 +05:30
|
|
|
= diff_merge_request_whitespace_link(diffs.project, @merge_request, class: 'd-none d-sm-inline-block')
|
2017-09-10 17:25:29 +05:30
|
|
|
- elsif current_controller?(:compare)
|
2018-11-08 19:23:39 +05:30
|
|
|
= diff_compare_whitespace_link(diffs.project, params[:from], params[:to], class: 'd-none d-sm-inline-block')
|
2020-07-28 23:09:34 +05:30
|
|
|
- elsif current_controller?(:wikis)
|
|
|
|
= toggle_whitespace_link(url_for(params_with_whitespace), class: 'd-none d-sm-inline-block')
|
2017-09-10 17:25:29 +05:30
|
|
|
.btn-group
|
|
|
|
= inline_diff_btn
|
|
|
|
= parallel_diff_btn
|
|
|
|
= render 'projects/diffs/stats', diff_files: diff_files
|
2015-09-11 14:41:01 +05:30
|
|
|
|
2019-12-21 20:55:43 +05:30
|
|
|
- if render_overflow_warning?(diffs)
|
2017-08-17 22:00:37 +05:30
|
|
|
= render 'projects/diffs/warning', diff_files: diffs
|
2015-04-26 12:48:37 +05:30
|
|
|
|
2016-11-03 12:29:30 +05:30
|
|
|
.files{ data: { can_create_note: can_create_note } }
|
2020-10-24 23:57:45 +05:30
|
|
|
- if load_diff_files_async
|
|
|
|
- url = url_for(safe_params.merge(action: 'diff_files'))
|
|
|
|
.js-diffs-batch{ data: { diff_files_path: url } }
|
|
|
|
.text-center
|
|
|
|
%span.spinner.spinner-md
|
|
|
|
- else
|
|
|
|
= render partial: 'projects/diffs/file', collection: diff_files, as: :diff_file, locals: { project: diffs.project, environment: environment, diff_page_context: diff_page_context }
|
2021-03-11 19:13:27 +05:30
|
|
|
|
|
|
|
- if paginate_diffs
|
|
|
|
= paginate(diff_files, theme: "gitlab")
|