Multiple GitGraph improvements: Exclude PR heads, Add branch/PR links, Show only certain branches, (#12766)
* Multiple GitGraph improvements. Add backend support for excluding PRs, selecting branches and files. Fix #10327 Signed-off-by: Andrew Thornton <art27@cantab.net> * as per @silverwind Signed-off-by: Andrew Thornton <art27@cantab.net> * as per @silverwind Signed-off-by: Andrew Thornton <art27@cantab.net> * Only show refs in dropdown we display on the graph Signed-off-by: Andrew Thornton <art27@cantab.net> * as per @silverwind Signed-off-by: Andrew Thornton <art27@cantab.net> * use flexbox for ui header Signed-off-by: Andrew Thornton <art27@cantab.net> * Move Hide Pull Request button to the dropdown Signed-off-by: Andrew Thornton <art27@cantab.net> * Add SHA and user pictures Signed-off-by: Andrew Thornton <art27@cantab.net> * fix test Signed-off-by: Andrew Thornton <art27@cantab.net> * fix test 2 Signed-off-by: Andrew Thornton <art27@cantab.net> * fixes * async * more tweaks * use tabs in tmpl Signed-off-by: Andrew Thornton <art27@cantab.net> * remove commented thing Signed-off-by: Andrew Thornton <art27@cantab.net> * fix linting Signed-off-by: Andrew Thornton <art27@cantab.net> * Update web_src/js/features/gitgraph.js Co-authored-by: silverwind <me@silverwind.io> * graph tweaks * more tweaks * add title Signed-off-by: Andrew Thornton <art27@cantab.net> * fix loading indicator z-index and position Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: Lauris BH <lauris@nix.lv>tokarchuk/v1.17
parent
d4e0b28655
commit
c05a8abc76
@ -0,0 +1,80 @@ |
|||||||
|
<div id="rev-container"> |
||||||
|
<ul id="rev-list"> |
||||||
|
{{ range $commitI, $commit := .Graph.Commits }} |
||||||
|
<li id="commit-{{$commit.Rev}}" data-flow="{{$commit.Flow}}"> |
||||||
|
{{ if $commit.OnlyRelation }} |
||||||
|
<span /> |
||||||
|
{{ else }} |
||||||
|
<span class="sha" id="{{$commit.ShortRev}}"> |
||||||
|
{{$class := "ui sha label"}} |
||||||
|
{{if $commit.Commit.Signature}} |
||||||
|
{{$class = (printf "%s%s" $class " isSigned")}} |
||||||
|
{{if $commit.Verification.Verified}} |
||||||
|
{{if eq $commit.Verification.TrustStatus "trusted"}} |
||||||
|
{{$class = (printf "%s%s" $class " isVerified")}} |
||||||
|
{{else if eq $commit.Verification.TrustStatus "untrusted"}} |
||||||
|
{{$class = (printf "%s%s" $class " isVerifiedUntrusted")}} |
||||||
|
{{else}} |
||||||
|
{{$class = (printf "%s%s" $class " isVerifiedUnmatched")}} |
||||||
|
{{end}} |
||||||
|
{{else if $commit.Verification.Warning}} |
||||||
|
{{$class = (printf "%s%s" $class " isWarning")}} |
||||||
|
{{end}} |
||||||
|
{{end}} |
||||||
|
<a href="{{AppSubUrl}}/{{$.Username}}/{{$.Reponame}}/commit/{{$commit.Rev}}" rel="nofollow" class="{{$class}}"> |
||||||
|
<span class="shortsha">{{ShortSha $commit.Commit.ID.String}}</span> |
||||||
|
{{- if $commit.Commit.Signature -}} |
||||||
|
<span class="shortsha-pad"></span>{{template "repo/shabox_badge" dict "root" $ "verification" $commit.Verification}} |
||||||
|
{{- end -}} |
||||||
|
</a> |
||||||
|
</span> |
||||||
|
<span class="message df ac mr-2">{{RenderCommitMessage $commit.Subject $.RepoLink $.Repository.ComposeMetas}}</span> |
||||||
|
<span class="tags df ac"> |
||||||
|
{{range $commit.Refs}} |
||||||
|
{{$refGroup := .RefGroup}} |
||||||
|
{{if eq $refGroup "pull"}} |
||||||
|
{{if $.HidePRRefs}} |
||||||
|
{{if (containGeneric $.SelectedBranches .Name) }} |
||||||
|
<a class="ui labelled icon button basic tiny" href="{{$.RepoLink}}/pulls/{{.ShortName|PathEscape}}"> |
||||||
|
{{svg "octicon-git-pull-request" 16 "mr-2"}}#{{.ShortName}} |
||||||
|
</a> |
||||||
|
{{end}} |
||||||
|
{{else}} |
||||||
|
<a class="ui labelled icon button basic tiny" href="{{$.RepoLink}}/pulls/{{.ShortName|PathEscape}}"> |
||||||
|
{{svg "octicon-git-pull-request" 16 "mr-2"}}#{{.ShortName}} |
||||||
|
</a> |
||||||
|
{{end}} |
||||||
|
{{else if eq $refGroup "tags"}} |
||||||
|
<a class="ui labelled icon button basic tiny" href="{{$.RepoLink}}/src/tag/{{.ShortName|PathEscape}}"> |
||||||
|
{{svg "octicon-tag" 16 "mr-2"}}{{.ShortName}} |
||||||
|
</a> |
||||||
|
{{else if eq $refGroup "remotes"}} |
||||||
|
<a class="ui labelled icon button basic tiny" href="{{$.RepoLink}}/src/commit/{{$commit.Rev}}"> |
||||||
|
{{svg "octicon-cross-reference" 16 "mr-2"}}{{.ShortName}} |
||||||
|
</a> |
||||||
|
{{else if eq $refGroup "heads"}} |
||||||
|
<a class="ui labelled icon button basic tiny" href="{{$.RepoLink}}/src/branch/{{.ShortName|PathEscape}}"> |
||||||
|
{{svg "octicon-git-branch" 16 "mr-2"}}{{.ShortName}} |
||||||
|
</a> |
||||||
|
{{else}} |
||||||
|
<!-- Unknown ref type {{.Name}} --> |
||||||
|
{{end}} |
||||||
|
{{end}} |
||||||
|
</span> |
||||||
|
<span class="author df ac mr-2"> |
||||||
|
{{$userName := $commit.Commit.Author.Name}} |
||||||
|
{{if $commit.User}} |
||||||
|
{{if $commit.User.FullName}} |
||||||
|
{{$userName = $commit.User.FullName}} |
||||||
|
{{end}} |
||||||
|
<img class="ui avatar image" src="{{$commit.User.RelAvatarLink}}" alt=""/><a href="{{AppSubUrl}}/{{$commit.User.Name}}">{{$userName}}</a> |
||||||
|
{{else}} |
||||||
|
<img class="ui avatar image" src="{{AvatarLink $commit.Commit.Author.Email}}" alt=""/>{{$userName}} |
||||||
|
{{end}} |
||||||
|
</span> |
||||||
|
<span class="time df ac">{{$commit.Date}}</span> |
||||||
|
{{ end }} |
||||||
|
</li> |
||||||
|
{{ end }} |
||||||
|
</ul> |
||||||
|
</div> |
@ -0,0 +1,7 @@ |
|||||||
|
<div> |
||||||
|
{{template "repo/graph/svgcontainer" .}} |
||||||
|
{{template "repo/graph/commits" .}} |
||||||
|
<div id="pagination"> |
||||||
|
{{template "base/paginate" .}} |
||||||
|
</div> |
||||||
|
</div> |
@ -0,0 +1,24 @@ |
|||||||
|
<div id="rel-container"> |
||||||
|
<svg viewbox="{{Mul .Graph.MinColumn 5}} {{Mul .Graph.MinRow 12}} {{Add (Mul .Graph.Width 5) 5}} {{Mul .Graph.Height 12}}" width="{{Add (Mul .Graph.Width 10) 10}}px"> |
||||||
|
{{range $flowid, $flow := .Graph.Flows}} |
||||||
|
<g id="flow-{{$flow.ID}}" class="flow-group flow-color-{{$flow.ColorNumber}} flow-color-16-{{$flow.Color16}}" data-flow="{{$flow.ID}}" data-color="{{$flow.ColorNumber}}"> |
||||||
|
<path d="{{range $i, $glyph := $flow.Glyphs -}} |
||||||
|
{{- if or (eq $glyph.Glyph '*') (eq $glyph.Glyph '|') -}} |
||||||
|
M {{Add (Mul $glyph.Column 5) 5}} {{Add (Mul $glyph.Row 12) 0}} v 12 {{/* */ -}} |
||||||
|
{{- else if eq $glyph.Glyph '/' -}} |
||||||
|
M {{Add (Mul $glyph.Column 5) 10}} {{Add (Mul $glyph.Row 12) 0}} l -10 12 {{/* */ -}} |
||||||
|
{{- else if eq $glyph.Glyph '\\' -}} |
||||||
|
M {{Add (Mul $glyph.Column 5) 0}} {{Add (Mul $glyph.Row 12) 0}} l 10 12 {{/* */ -}} |
||||||
|
{{- else if or (eq $glyph.Glyph '-') (eq $glyph.Glyph '.') -}} |
||||||
|
M {{Add (Mul $glyph.Column 5) 0}} {{Add (Mul $glyph.Row 12) 12}} h 5 {{/* */ -}} |
||||||
|
{{- else if eq $glyph.Glyph '_' -}} |
||||||
|
M {{Add (Mul $glyph.Column 5) 0}} {{Add (Mul $glyph.Row 12) 12}} h 10 {{/* */ -}} |
||||||
|
{{- end -}} |
||||||
|
{{- end}}" stroke-width="1" fill="none" id="flow-{{$flow.ID}}-path" stroke-linecap="round"/> |
||||||
|
{{range $flow.Commits}} |
||||||
|
<circle class="flow-commit" cx="{{Add (Mul .Column 5) 5}}" cy="{{Add (Mul .Row 12) 6}}" r="2.5" stroke="none" id="flow-commit-{{.Rev}}" data-rev="{{.Rev}}"/> |
||||||
|
{{end}} |
||||||
|
</g> |
||||||
|
{{end}} |
||||||
|
</svg> |
||||||
|
</div> |
Loading…
Reference in new issue