mirror of
https://github.com/go-gitea/gitea.git
synced 2026-05-23 05:42:33 +09:00
Follow-up to #37078. - Use Unicode Control Pictures](U+2400-U+2421) to render C0 control characters - Make it work in diff view too - Replace escape warning emoji with SVG - Align escape warning button with code lines --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
92 lines
5.5 KiB
Handlebars
92 lines
5.5 KiB
Handlebars
{{$diffBlobExcerptData := .DiffBlobExcerptData}}
|
|
{{$canCreateComment := and ctx.RootData.SignedUserID $diffBlobExcerptData.PullIssueIndex}}
|
|
{{if $.IsSplitStyle}}
|
|
{{range $k, $line := $.section.Lines}}
|
|
<tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}} line-expanded" data-line-type="{{.GetHTMLDiffLineType}}">
|
|
{{if eq .GetType 4}}
|
|
<td class="lines-num lines-num-old">{{$line.RenderBlobExcerptButtons $.FileNameHash $diffBlobExcerptData}}</td>
|
|
<td colspan="7" class="lines-code lines-code-old">
|
|
{{- $inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale -}}
|
|
{{- template "repo/diff/section_code" dict "diff" $inlineDiff -}}
|
|
</td>
|
|
{{else}}
|
|
{{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}}
|
|
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$.FileNameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
|
|
<td class="lines-escape lines-escape-old">{{if $line.LeftIdx}}{{ctx.RenderUtils.RenderUnicodeEscapeToggleButton $inlineDiff.EscapeStatus}}{{end}}</td>
|
|
<td class="lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="tw-font-mono" data-type-marker=""></span>{{end}}</td>
|
|
<td class="lines-code lines-code-old">
|
|
{{/* ATTENTION: BLOB-EXCERPT-COMMENT-RIGHT: here it intentionally use "right" side to comment, because the backend code depends on the assumption that the comment only happens on right side*/}}
|
|
{{- if and $canCreateComment $line.RightIdx -}}
|
|
<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-right{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="right" data-idx="{{$line.RightIdx}}">
|
|
{{- svg "octicon-plus" -}}
|
|
</button>
|
|
{{- end -}}
|
|
{{- if $line.LeftIdx -}}
|
|
{{- template "repo/diff/section_code" dict "diff" $inlineDiff -}}
|
|
{{- else -}}
|
|
<code class="code-inner"></code>
|
|
{{- end -}}
|
|
</td>
|
|
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$.FileNameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
|
|
<td class="lines-escape lines-escape-new">{{if and $line.RightIdx}}{{ctx.RenderUtils.RenderUnicodeEscapeToggleButton $inlineDiff.EscapeStatus}}{{end}}</td>
|
|
<td class="lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="tw-font-mono" data-type-marker=""></span>{{end}}</td>
|
|
<td class="lines-code lines-code-new">
|
|
{{- if and $canCreateComment $line.RightIdx -}}
|
|
<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-right{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="right" data-idx="{{$line.RightIdx}}">
|
|
{{- svg "octicon-plus" -}}
|
|
</button>
|
|
{{- end -}}
|
|
{{- if $line.RightIdx -}}
|
|
{{- template "repo/diff/section_code" dict "diff" $inlineDiff -}}
|
|
{{- else -}}
|
|
<code class="code-inner"></code>
|
|
{{- end -}}
|
|
</td>
|
|
{{end}}
|
|
</tr>
|
|
{{if $line.Comments}}
|
|
<tr class="add-comment" data-line-type="{{.GetHTMLDiffLineType}}">
|
|
<td class="add-comment-left" colspan="4">
|
|
{{if eq $line.GetCommentSide "previous"}}
|
|
{{template "repo/diff/conversation" dict "." $ "comments" $line.Comments}}
|
|
{{end}}
|
|
</td>
|
|
<td class="add-comment-right" colspan="4">
|
|
{{if eq $line.GetCommentSide "proposed"}}
|
|
{{template "repo/diff/conversation" dict "." $ "comments" $line.Comments}}
|
|
{{end}}
|
|
</td>
|
|
</tr>
|
|
{{end}}
|
|
{{end}}
|
|
{{else}}
|
|
{{range $k, $line := $.section.Lines}}
|
|
<tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}} line-expanded" data-line-type="{{.GetHTMLDiffLineType}}">
|
|
{{if eq .GetType 4}}
|
|
<td colspan="2" class="lines-num">{{$line.RenderBlobExcerptButtons $.FileNameHash $diffBlobExcerptData}}</td>
|
|
{{else}}
|
|
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$.FileNameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
|
|
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$.FileNameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
|
|
{{end}}
|
|
{{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}}
|
|
<td class="lines-escape">{{ctx.RenderUtils.RenderUnicodeEscapeToggleButton $inlineDiff.EscapeStatus}}</td>
|
|
<td class="lines-type-marker"><span class="tw-font-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
|
|
<td class="lines-code{{if (not $line.RightIdx)}} lines-code-old{{end}}">
|
|
{{- if and $canCreateComment -}}
|
|
<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-{{if $line.RightIdx}}right{{else}}left{{end}}{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="{{if $line.RightIdx}}right{{else}}left{{end}}" data-idx="{{if $line.RightIdx}}{{$line.RightIdx}}{{else}}{{$line.LeftIdx}}{{end}}">
|
|
{{- svg "octicon-plus" -}}
|
|
</button>
|
|
{{- end -}}
|
|
<code class="code-inner {{if $inlineDiff.EscapeStatus.Escaped}}has-escaped{{end}}">{{$inlineDiff.Content}}</code>
|
|
</td>
|
|
</tr>
|
|
{{if $line.Comments}}
|
|
<tr class="add-comment" data-line-type="{{.GetHTMLDiffLineType}}">
|
|
<td class="add-comment-left add-comment-right" colspan="5">
|
|
{{template "repo/diff/conversation" dict "." $ "comments" $line.Comments}}
|
|
</td>
|
|
</tr>
|
|
{{end}}
|
|
{{end}}
|
|
{{end}}
|