mirror of
https://github.com/thomiceli/opengist.git
synced 2024-12-24 13:12:39 +00:00
111 lines
7.6 KiB
HTML
111 lines
7.6 KiB
HTML
|
{{ template "header" .}}
|
||
|
{{ template "gist_header" .}}
|
||
|
{{ if ne (len .commits) 0 }}
|
||
|
|
||
|
<div>
|
||
|
{{ range $commit := .commits }}
|
||
|
<div class="pb-8">
|
||
|
<div class="flex">
|
||
|
<h3 class="text-sm py-2 flex-auto"><svg xmlns="http://www.w3.org/2000/svg" class="h-3 w-3 mr-1 inline" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">
|
||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M13 5l7 7-7 7M5 5l7 7-7 7" />
|
||
|
</svg><span class="font-bold">{{ $commit.Author }}</span> revised this gist <span class="moment-timestamp font-bold">{{ $commit.Timestamp }}</span>. <a class="underline" href="/{{ $.gist.User.Username }}/{{ $.gist.Uuid }}/rev/{{ $commit.Hash }}">Go to revision</a></h3>
|
||
|
{{ if ne $commit.Changed "" }}
|
||
|
<p class="text-sm float-right py-2">
|
||
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5 inline-flex">
|
||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z" />
|
||
|
</svg>
|
||
|
{{ $commit.Changed }}
|
||
|
{{ end }}
|
||
|
</p>
|
||
|
</div>
|
||
|
<div class="grid gap-y-4">
|
||
|
{{ if ne (len $commit.Files) 0 }}
|
||
|
{{ range $file := $commit.Files }}
|
||
|
<div class="rounded-md border border-1 border-gray-700 overflow-auto">
|
||
|
<div class="border-b-1 border-gray-700 bg-gray-800 my-auto">
|
||
|
<p class="ml-4 mt-2 inline-flex">
|
||
|
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 flex text-slate-300" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">
|
||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M10 20l4-16m4 4l4 4-4 4M6 16l-4-4 4-4" />
|
||
|
</svg>
|
||
|
{{ if eq $file.Filename $file.OldFilename }}
|
||
|
<span class="flex text-sm ml-2 text-slate-300">{{ $file.Filename }}</span>
|
||
|
{{ else }}
|
||
|
{{ if eq $file.OldFilename "/dev/null" }}
|
||
|
<span class="flex text-sm ml-2 text-slate-300">{{ $file.Filename }}<span class="italic text-gray-400 ml-1">(file created)</span></span>
|
||
|
{{ else if eq $file.Filename "/dev/null" }}
|
||
|
<span class="flex text-sm ml-2 text-slate-300">{{ $file.OldFilename }} <span class="italic text-gray-400 ml-1">(file deleted)</span></span>
|
||
|
{{ else }}
|
||
|
<span class="flex text-sm ml-2 text-slate-300">{{ $file.OldFilename }} <span class="italic text-gray-400 mx-1">renamed to</span> {{ $file.Filename }}</span>
|
||
|
{{ end }}
|
||
|
{{ end }}
|
||
|
</p>
|
||
|
</div>
|
||
|
<div class="code overflow-auto">
|
||
|
{{ if eq $file.Content "" }}
|
||
|
<p class="m-2 ml-4 text-sm">
|
||
|
File renamed without changes.
|
||
|
</p>
|
||
|
{{ else }}
|
||
|
<table class="table-code w-full whitespace-pre" data-filename="{{ $file.Filename }}" style="font-size: 0.8em; border-spacing: 0">
|
||
|
<tbody>
|
||
|
{{ $left := 0 }}
|
||
|
{{ $right := 0 }}
|
||
|
{{ range $line := split $file.Content "\n" }}
|
||
|
{{ if ne $line "" }}{{ if ne (index $line 0) 92 }}
|
||
|
|
||
|
{{ if eq (index $line 0) 64 }}
|
||
|
{{ $left = toInt (index (splitGit (index (split $line "-") 1)) 0) }}
|
||
|
{{ $right = toInt (index (splitGit (index (split $line "+") 1)) 0) }}
|
||
|
{{ end }}
|
||
|
<tr class="{{ if eq (index $line 0) 64 }}gray-diff{{ end }}{{ if eq (index $line 0) 43 }}green-diff{{ end }}{{ if eq (index $line 0) 45 }}red-diff{{ end }}" >
|
||
|
{{ if eq (index $line 0) 64 }}
|
||
|
<td colspan="2" class="select-none py-3"></td>
|
||
|
{{ else }}
|
||
|
{{ if eq (index $line 0) 43 }}
|
||
|
<td class="select-none line-num px-2"></td>
|
||
|
<td class="select-none line-num px-2">{{ $right }}</td>
|
||
|
{{ $right = inc $right }}
|
||
|
{{ else if eq (index $line 0) 45 }}
|
||
|
<td class="select-none line-num px-2">{{ $left }}</td>
|
||
|
<td class="select-none line-num px-2"></td>
|
||
|
{{ $left = inc $left }}
|
||
|
{{ else if eq (index $line 0) 32 }}
|
||
|
<td class="select-none line-num px-2">{{ $left }}</td>
|
||
|
<td class="select-none line-num px-2">{{ $right }}</td>
|
||
|
{{ $left = inc $left }}
|
||
|
{{ $right = inc $right }}
|
||
|
{{ end }}
|
||
|
{{ end }}
|
||
|
<td class="select-none" style="width: 2%;">{{ if ne (index $line 0) 64 }}{{ slice $line 0 1 }}{{ end }}</td>
|
||
|
<td>{{ if ne (index $line 0) 64 }}{{ slice $line 1 }}{{ else }}{{ $line }}{{ end }}</td>
|
||
|
</tr>
|
||
|
{{end}}
|
||
|
{{end}}{{end}}
|
||
|
</tbody>
|
||
|
</table>
|
||
|
{{ end }}
|
||
|
</div>
|
||
|
</div>
|
||
|
{{end}}
|
||
|
{{else}}
|
||
|
<p class="text-left text-sm text-slate-300 italic">No changes</p>
|
||
|
{{end}}
|
||
|
</div>
|
||
|
</div>
|
||
|
{{end}}
|
||
|
</div>
|
||
|
<div class="flex justify-center space-x-2">
|
||
|
{{ template "pagination" . }}
|
||
|
</div>
|
||
|
{{ else }}
|
||
|
<div class="text-center">
|
||
|
<svg xmlns="http://www.w3.org/2000/svg" class="mx-auto h-12 w-12 text-slate-400" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">
|
||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M14 10l-2 1m0 0l-2-1m2 1v2.5M20 7l-2 1m2-1l-2-1m2 1v2.5M14 4l-2-1-2 1M4 7l2-1M4 7l2 1M4 7v2.5M12 21l-2-1m2 1l2-1m-2 1v-2.5M6 18l-2-1v-2.5M18 18l2-1v-2.5" />
|
||
|
</svg>
|
||
|
<h3 class="mt-2 text-sm font-medium text-slate-300">No revisions to show</h3>
|
||
|
</div>
|
||
|
{{ end }}
|
||
|
|
||
|
{{ template "gist_footer" .}}
|
||
|
{{ template "footer" .}}
|