| 1 | {{define "repo" }}{{if .Error}}<section><h1>{{.Query.Get "repo" }}</h1>{{template "alert" .Error}}</section> |
| 2 | {{else}}{{$repo := asMap .Event}}{{$view := repoView .Query}}{{if eq $view "home" }}<section id="readme" > |
| 3 | {{if .Readme}}{{.Readme}}{{else}}<h1>{{str (index $repo "identifier" )}}</h1><p>This repository has no README at its default branch.</p>{{end}} |
| 4 | </section> |
| 5 | {{else if or (eq $view "tree" ) (eq $view "file" )}}<table id="split" ><tbody><tr><td id="tree" ><header><a href="{{repoURL .Query " tree" " "}}" >{{str (index $repo "identifier" )}}/</a>{{range $index, $crumb := repoBreadcrumbs .Query}}{{if $index}}{{if $crumb.URL}}<a href="{{$crumb.URL}}" >{{$crumb.Label}}</a>{{else}}<b>{{$crumb.Label}}</b>{{end}}/{{end}}{{end}}</header> |
| 6 | {{template "repoTree" .}}</td> |
| 7 | <td id="preview" >{{if eq $view "file" }}<header>{{.Query.Get "path" }} <a fx-ignore href="/repo/raw?owner={{urlquery (.Query.Get " owner")}}&repo={{urlquery (.Query.Get " repo")}}&ref={{urlquery (.Query.Get " ref")}}&path={{urlquery (.Query.Get " path")}}" >raw</a></header> |
| 8 | {{if index $repo "binary" }}<p>This is a binary file. Download it to view its contents.</p> |
| 9 | {{else if index $repo "content" }}{{sourceHTML .Event}} |
| 10 | {{else}}<p>This file is empty.</p> |
| 11 | {{end}}{{else}}<p>select a file to preview</p>{{end}}</td></tr></tbody></table> |
| 12 | {{else if eq $view "history" }}<section> |
| 13 | <table id="rows" > |
| 14 | <tbody> |
| 15 | {{range index $repo "commits" }}{{$commit := asMap .}}<tr><td>{{str (index $commit "author" )}}</td><td><a href="{{repoCommitURL $.Query (str (index $commit " oid"))}}" >{{str (index $commit "subject" )}}</a></td><td>{{shortID (index $commit "oid" )}} {{short (index $commit "time" )}}</td></tr> |
| 16 | {{else}}<tr><td colspan="3" >No commits.</td></tr> |
| 17 | {{end}}</tbody> |
| 18 | </table> |
| 19 | <p id="pages" >{{if .Query.Get "offset" }}<a href="{{repoURL .Query " history" " "}}" >first page</a> {{end}}{{if hasNextOffset (index $repo "next_offset" )}}<a href="{{browsePageURL " /repo" .Query " offset" (index $repo " next_offset")}}" >next page</a>{{end}}</p> |
| 20 | </section> |
| 21 | {{else if eq $view "commit" }}<section> |
| 22 | <h1>Commit <code>{{shortID (index $repo "commit" )}}</code></h1> |
| 23 | <p><a href="{{repoURL .Query " tree" " "}}" >browse files at this commit</a> | <a href="{{repoURL .Query " history" " "}}" >history</a></p> |
| 24 | </section> |
| 25 | {{diffHTML .Event}} |
| 26 | {{else if eq $view "activity" }}<section> |
| 27 | {{with index $repo "events" }}<ol id="events" > |
| 28 | {{range .}}<li>{{template "nostrEvent" .}}</li> |
| 29 | {{end}}</ol> |
| 30 | {{else}}<p>No repository activity.</p> |
| 31 | {{end}}</section> |
| 32 | {{else if or (eq $view "issues" ) (eq $view "prs" ) (eq $view "issue" ) (eq $view "pr" )}}{{template "collaboration" .}} |
| 33 | {{end}}{{end}}{{end}} |
| 34 | |
| 35 | {{define "repoTree" }}{{$repo := asMap .Event}}{{$entries := index $repo "entries" }}{{if .Tree}}{{$entries = .Tree}}{{end}}<ul> |
| 36 | {{range $e := $entries}}{{$entry := asMap $e}}<li>{{if eq (str (index $entry "type" )) "tree" }}<a href="{{repoURL $.Query " tree" (str (index $entry " path"))}}" >{{str (index $entry "name" )}}/</a>{{else if eq (str (index $entry "type" )) "commit" }}{{str (index $entry "name" )}} <span>(submodule)</span>{{else}}<a href="{{repoURL $.Query " file" (str (index $entry " path"))}}" {{if eq (str (index $entry "path" )) ($.Query.Get "path" )}} aria-current="page" {{end}}>{{str (index $entry "name" )}}</a>{{end}}</li> |
| 37 | {{else}}<li><span>no published files here</span></li> |
| 38 | {{end}}</ul> |
| 39 | <p id="pages" >{{if .Query.Get "offset" }}<a href="{{repoURL .Query " tree" (.Query.Get " path")}}" >first page</a> {{end}}{{if hasNextOffset (index $repo "next_offset" )}}<a href="{{browsePageURL " /repo" .Query " offset" (index $repo " next_offset")}}" >more</a>{{end}}</p> |
| 40 | {{end}} |