2015-09-01 19:07:02 -04:00
{{ if .DiffNotAvailable }}
2020-06-22 21:02:27 +02:00
<div class="diff-detail-box diff-box sticky">
2018-08-14 19:49:33 +02:00
<div>
<div class="ui right">
2021-02-13 05:35:43 +01:00
{{ template "repo/diff/whitespace_dropdown" . }}
2019-10-15 12:44:36 +02:00
{{ template "repo/diff/options_dropdown" . }}
2019-01-23 19:58:38 +01:00
{{ if and .PageIsPullFiles $ .SignedUserID ( not .IsArchived ) }}
2018-08-14 19:49:33 +02:00
{{ template "repo/diff/new_review" . }}
{{ end }}
</div>
</div>
</div>
2022-06-27 22:58:46 +02:00
<h4> {{ .locale .Tr "repo.diff.data_not_available" }} </h4>
2015-09-01 19:07:02 -04:00
{{ else }}
2019-10-21 09:51:24 +02:00
<div>
2023-02-13 17:59:59 +00:00
<div class="diff-detail-box diff-box sticky gt-df gt-sb gt-ac gt-fw">
<div class="gt-df gt-ac gt-fw">
<a class="diff-toggle-file-tree-button muted gt-df gt-ac">
2022-10-14 11:43:25 +02:00
{{ / * the icon meaning is reversed here , "octicon-sidebar-collapse" means show the file tree * / }}
{{ svg "octicon-sidebar-collapse" 2 0 "icon hide" }}
{{ svg "octicon-sidebar-expand" 2 0 "icon" }}
</a>
2023-02-13 17:59:59 +00:00
<div class="diff-detail-stats gt-df gt-ac gt-ml-3">
{{ svg "octicon-diff" 1 6 "gt-mr-2" }} {{ .locale .Tr "repo.diff.stats_desc" .Diff .NumFiles .Diff .TotalAddition .Diff .TotalDeletion | Str2html }}
2022-10-14 11:43:25 +02:00
</div>
2020-10-31 13:17:32 +01:00
</div>
2023-02-21 21:36:53 +08:00
<div class="diff-detail-actions gt-df gt-ac gt-w-100">
2022-05-07 20:28:10 +02:00
{{ if and .PageIsPullFiles $ .SignedUserID ( not .IsArchived ) }}
2023-02-13 17:59:59 +00:00
<progress id="viewed-files-summary" class="gt-mr-2" value=" {{ .Diff .NumViewedFiles }} " max=" {{ .Diff .NumFiles }} "></progress>
2023-02-21 21:36:53 +08:00
<label for="viewed-files-summary" id="viewed-files-summary-label" class="gt-mr-3 gt-f1" data-text-changed-template=" {{ .locale .Tr "repo.pulls.viewed_files_label" }} ">
2022-06-27 22:58:46 +02:00
{{ .locale .Tr "repo.pulls.viewed_files_label" .Diff .NumViewedFiles .Diff .NumFiles }}
2022-05-07 20:28:10 +02:00
</label>
{{ end }}
2021-02-13 05:35:43 +01:00
{{ template "repo/diff/whitespace_dropdown" . }}
2019-10-15 12:44:36 +02:00
{{ template "repo/diff/options_dropdown" . }}
2019-01-23 19:58:38 +01:00
{{ if and .PageIsPullFiles $ .SignedUserID ( not .IsArchived ) }}
2018-08-06 07:43:22 +03:00
{{ template "repo/diff/new_review" . }}
{{ end }}
2015-12-07 23:30:52 +01:00
</div>
</div>
2022-09-27 07:22:19 +02:00
<script id="diff-data-script">
(() => {
const diffData = {
files: [ {{ range $ i , $ file : = .Diff .Files }} { Name:" {{ $ file .Name }} ",NameHash:" {{ $ file .NameHash }} ",Type: {{ $ file .Type }} ,IsBin: {{ $ file .IsBin }} ,Addition: {{ $ file .Addition }} ,Deletion: {{ $ file .Deletion }}} , {{ end }} ],
isIncomplete: {{ .Diff .IsIncomplete }} ,
tooManyFilesMessage: " {{ $ .locale .Tr "repo.diff.too_many_files" }} ",
binaryFileMessage: " {{ $ .locale .Tr "repo.diff.bin" }} ",
showMoreMessage: " {{ .locale .Tr "repo.diff.show_more" }} ",
statisticsMessage: " {{ .locale .Tr "repo.diff.stats_desc_file" }} ",
fileTreeIsVisible: false,
fileListIsVisible: false,
isLoadingNewData: false,
diffEnd: {{ .Diff .End }} ,
link: " {{ $ .Link }} "
};
if(window.config.pageData.diffFileInfo) {
// Page is already loaded - add the data to our existing data
window.config.pageData.diffFileInfo.files.push(...diffData.files);
window.config.pageData.diffFileInfo.isIncomplete = diffData.isIncomplete;
window.config.pageData.diffFileInfo.diffEnd = diffData.diffEnd;
window.config.pageData.diffFileInfo.link = diffData.link;
} else {
// new load of page - populate initial data
window.config.pageData.diffFileInfo = diffData;
}
})();
</script>
2022-10-01 16:26:38 +02:00
<div id="diff-file-list"></div>
2022-09-27 07:22:19 +02:00
<div id="diff-container">
2023-02-19 12:06:14 +08:00
<div id="diff-file-tree" class="gt-hidden"></div>
2022-09-27 07:22:19 +02:00
<div id="diff-file-boxes" class="sixteen wide column">
{{ range $ i , $ file : = .Diff .Files }}
{{ / * notice : the in dex of Diff .Files should not be used for element ID , because the in dex will be restarted from 0 when doing load-more for PRs with a lot of files * / }}
2023-02-19 20:56:07 -07:00
{{ $ blobBase : = call $ .GetBlobByPathForCommit $ .BeforeCommit $ file .OldName }}
2022-09-27 07:22:19 +02:00
{{ $ blobHead : = call $ .GetBlobByPathForCommit $ .HeadCommit $ file .Name }}
{{ $ isImage : = or ( call $ .IsBlobAnImage $ blobBase ) ( call $ .IsBlobAnImage $ blobHead ) }}
{{ $ isCsv : = ( call $ .IsCsvFile $ file ) }}
{{ $ showFileViewToggle : = or $ isImage ( and ( not $ file .IsIncomplete ) $ isCsv ) }}
2023-02-02 13:39:55 +08:00
{{ $ isExpandable : = or ( gt $ file .Addition 0 ) ( gt $ file .Deletion 0 ) $ file .IsBin }}
2023-02-13 17:59:59 +00:00
<div class="diff-file-box diff-box file-content {{ TabSizeClass $ .Editorconfig $ file .Name }} gt-mt-3" id="diff- {{ $ file .NameHash }} " data-old-filename=" {{ $ file .OldName }} " data-new-filename=" {{ $ file .Name }} " {{ if or ( $ file .ShouldBeHidden ) ( not $ isExpandable ) }} data-folded="true" {{ end }} >
<h4 class="diff-file-header sticky-2nd-row ui top attached normal header gt-df gt-ac gt-sb">
2023-03-06 23:44:04 +08:00
<div class="diff-file-name gt-df gt-ac gt-mr-3">
2023-02-13 17:59:59 +00:00
<a role="button" class="fold-file muted gt-mr-2" {{ if not $ isExpandable }} style="visibility: hidden" {{ end }} >
2023-02-02 13:39:55 +08:00
{{ if $ file .ShouldBeHidden }}
{{ svg "octicon-chevron-right" 1 8 }}
{{ else }}
{{ svg "octicon-chevron-down" 1 8 }}
{{ end }}
</a>
2023-02-13 17:59:59 +00:00
<div class="gt-bold gt-df gt-ac gt-mono">
2022-09-27 07:22:19 +02:00
{{ if $ file .IsBin }}
2023-02-13 17:59:59 +00:00
<span class="gt-ml-1 gt-mr-3">
2022-09-27 07:22:19 +02:00
{{ $ .locale .Tr "repo.diff.bin" }}
</span>
{{ else }}
{{ template "repo/diff/stats" dict "file" . "root" $ }}
{{ end }}
</div>
2023-03-06 23:44:04 +08:00
<span class="file gt-mono"><a class="muted file-link" title=" {{ if $ file .IsRenamed }} {{ $ file .OldName }} → {{ end }} {{ $ file .Name }} " href="#diff- {{ $ file .NameHash }} "> {{ if $ file .IsRenamed }} {{ $ file .OldName }} → {{ end }} {{ $ file .Name }} </a> {{ if .IsLFSFile }} ( {{ $ .locale .Tr "repo.stored_lfs" }} ) {{ end }} </span>
2022-09-27 07:22:19 +02:00
{{ if $ file .IsGenerated }}
2023-02-13 17:59:59 +00:00
<span class="ui label gt-ml-3"> {{ $ .locale .Tr "repo.diff.generated" }} </span>
2022-09-27 07:22:19 +02:00
{{ end }}
{{ if $ file .IsVendored }}
2023-02-13 17:59:59 +00:00
<span class="ui label gt-ml-3"> {{ $ .locale .Tr "repo.diff.vendored" }} </span>
2021-10-15 17:05:33 +01:00
{{ end }}
</div>
2023-02-13 17:59:59 +00:00
<div class="diff-file-header-actions gt-df gt-ac">
2022-09-27 07:22:19 +02:00
{{ if $ showFileViewToggle }}
<div class="ui compact icon buttons">
<span class="ui tiny basic button tooltip file-view-toggle" data-toggle-selector="#diff-source- {{ $ file .NameHash }} " data-content=" {{ $ .locale .Tr "repo.file_view_source" }} " data-position="bottom center"> {{ svg "octicon-code" }} </span>
<span class="ui tiny basic button tooltip file-view-toggle active" data-toggle-selector="#diff-rendered- {{ $ file .NameHash }} " data-content=" {{ $ .locale .Tr "repo.file_view_rendered" }} " data-position="bottom center"> {{ svg "octicon-file" }} </span>
</div>
2021-10-15 17:05:33 +01:00
{{ end }}
2022-09-27 07:22:19 +02:00
{{ if $ file .IsProtected }}
<span class="ui basic label"> {{ $ .locale .Tr "repo.diff.protected" }} </span>
{{ end }}
{{ if not ( or $ file .IsIncomplete $ file .IsBin $ file .IsSubmodule ) }}
<a class="ui basic tiny button unescape-button"> {{ $ .locale .Tr "repo.unescape_control_characters" }} </a>
2023-02-19 12:06:14 +08:00
<a class="ui basic tiny button escape-button gt-hidden"> {{ $ .locale .Tr "repo.escape_control_characters" }} </a>
2022-09-27 07:22:19 +02:00
{{ end }}
{{ if and ( not $ file .IsSubmodule ) ( not $ .PageIsWiki ) }}
{{ if $ file .IsDeleted }}
<a class="ui basic tiny button" rel="nofollow" href=" {{ $ .BeforeSourcePath }} / {{ PathEscapeSegments .Name }} "> {{ $ .locale .Tr "repo.diff.view_file" }} </a>
{{ else }}
<a class="ui basic tiny button" rel="nofollow" href=" {{ $ .SourcePath }} / {{ PathEscapeSegments .Name }} "> {{ $ .locale .Tr "repo.diff.view_file" }} </a>
{{ end }}
{{ end }}
{{ if and $ .IsSigned $ .PageIsPullFiles ( not $ .IsArchived ) }}
{{ if $ file .HasChangedSinceLastReview }}
<span class="changed-since-last-review unselectable"> {{ $ .locale .Tr "repo.pulls.has_changed_since_last_review" }} </span>
{{ end }}
<label data-link=" {{ $ .Issue .Link }} /viewed-files" data-headcommit=" {{ $ .PullHeadCommitID }} " class="viewed-file-form unselectable {{ if $ file .IsViewed }} viewed-file-checked-form {{ end }} ">
<input type="checkbox" name=" {{ $ file .GetDiffFileName }} " autocomplete="off" {{ if $ file .IsViewed }} checked {{ end }} > {{ $ .locale .Tr "repo.pulls.has_viewed_file" }}
</label>
{{ end }}
</div>
</h4>
<div class="diff-file-body ui attached unstackable table segment" {{ if $ file .IsViewed }} data-folded="true" {{ end }} >
2023-02-19 12:06:14 +08:00
<div id="diff-source- {{ $ file .NameHash }} " class="file-body file-code unicode-escaped code-diff {{ if $ .IsSplitStyle }} code-diff-split {{ else }} code-diff-unified {{ end }} {{ if $ showFileViewToggle }} gt-hidden {{ end }} ">
2022-09-27 07:22:19 +02:00
{{ if or $ file .IsIncomplete $ file .IsBin }}
<div class="diff-file-body binary" style="padding: 5px 10px;">
{{ if $ file .IsIncomplete }}
{{ if $ file .IsIncompleteLineTooLong }}
{{ $ .locale .Tr "repo.diff.file_suppressed_line_too_long" }}
{{ else }}
{{ $ .locale .Tr "repo.diff.file_suppressed" }}
2023-01-13 05:50:32 +00:00
<a class="ui basic tiny button diff-load-button" data-href=" {{ $ .Link }} ?file-only=true&files= {{ $ file .Name }} &files= {{ $ file .OldName }} "> {{ $ .locale .Tr "repo.diff.load" }} </a>
2022-09-27 07:22:19 +02:00
{{ end }}
{{ else }}
{{ $ .locale .Tr "repo.diff.bin_not_shown" }}
{{ end }}
</div>
2021-06-05 14:32:19 +02:00
{{ else }}
2023-02-07 02:09:18 +08:00
<table class="chroma" data-new-comment-url=" {{ $ .Issue .Link }} /files/reviews/new_comment" data-path=" {{ $ file .Name }} ">
2022-09-27 07:22:19 +02:00
{{ if $ .IsSplitStyle }}
{{ template "repo/diff/section_split" dict "file" . "root" $ }}
{{ else }}
{{ template "repo/diff/section_unified" dict "file" . "root" $ }}
{{ end }}
</table>
2021-06-05 14:32:19 +02:00
{{ end }}
2022-09-27 07:22:19 +02:00
</div>
{{ if $ showFileViewToggle }}
<div id="diff-rendered- {{ $ file .NameHash }} " class="file-body file-code {{ if $ .IsSplitStyle }} code-diff-split {{ else }} code-diff-unified {{ end }} ">
2023-02-13 17:59:59 +00:00
<table class="chroma gt-w-100">
2022-09-27 07:22:19 +02:00
{{ if $ isImage }}
{{ template "repo/diff/image_diff" dict "file" . "root" $ "blobBase" $ blobBase "blobHead" $ blobHead }}
{{ else }}
{{ template "repo/diff/csv_diff" dict "file" . "root" $ "blobBase" $ blobBase "blobHead" $ blobHead }}
{{ end }}
</table>
</div>
{{ end }}
2020-10-31 23:15:11 +01:00
</div>
2022-09-27 07:22:19 +02:00
</div>
{{ end }}
2016-06-29 12:11:00 -03:00
2022-09-27 07:22:19 +02:00
{{ if .Diff .IsIncomplete }}
2023-02-13 17:59:59 +00:00
<div class="diff-file-box diff-box file-content gt-mt-3" id="diff-incomplete">
<h4 class="ui top attached normal header gt-df gt-ac gt-sb">
2022-09-27 07:22:19 +02:00
{{ $ .locale .Tr "repo.diff.too_many_files" }}
<a class="ui basic tiny button" id="diff-show-more-files" data-href=" {{ $ .Link }} ?skip-to= {{ .Diff .End }} &file-only=true"> {{ .locale .Tr "repo.diff.show_more" }} </a>
</h4>
</div>
{{ end }}
2021-10-15 17:05:33 +01:00
</div>
</div>
2016-06-29 12:11:00 -03:00
2019-10-21 09:51:24 +02:00
{{ if not $ .Repository .IsArchived }}
2023-02-19 12:06:14 +08:00
<div class="gt-hidden" id="edit-content-form">
2021-01-08 22:49:55 +01:00
<div class="ui comment form">
<div class="ui top attached tabular menu">
2022-06-27 22:58:46 +02:00
<a class="active write item"> {{ $ .locale .Tr "write" }} </a>
2023-02-07 02:09:18 +08:00
<a class="preview item" data-url=" {{ $ .Repository .Link }} /markdown" data-context=" {{ $ .RepoLink }} "> {{ $ .locale .Tr "preview" }} </a>
2019-10-21 09:51:24 +02:00
</div>
2021-01-08 22:49:55 +01:00
<div class="ui bottom attached active write tab segment">
2022-05-20 10:26:04 +08:00
<textarea class="review-textarea js-quick-submit" tabindex="1" name="content"></textarea>
2021-01-08 22:49:55 +01:00
</div>
2021-05-07 10:43:41 +02:00
<div class="ui bottom attached tab preview segment markup">
2022-06-27 22:58:46 +02:00
{{ $ .locale .Tr "loading" }}
2021-01-08 22:49:55 +01:00
</div>
<div class="text right edit buttons">
2022-06-27 22:58:46 +02:00
<div class="ui basic primary cancel button" tabindex="3"> {{ .locale .Tr "repo.issues.cancel" }} </div>
<div class="ui green save button" tabindex="2"> {{ .locale .Tr "repo.issues.save" }} </div>
2019-10-21 09:51:24 +02:00
</div>
2021-01-08 22:49:55 +01:00
</div>
</div>
{{ end }}
2018-08-06 07:43:22 +03:00
2021-01-21 14:51:17 +01:00
{{ template "repo/issue/view_content/reference_issue_dialog" . }}
2019-10-21 09:51:24 +02:00
</div>
2015-09-01 19:07:02 -04:00
{{ end }}