forked from tangled.org/core
Monorepo for Tangled — https://tangled.org
at packages 3.1 kB view raw
1{{ define "repo/pulls/fragments/pullStack" }} 2 <p class="text-sm font-bold p-2 dark:text-white">STACK</p> 3 {{ block "pullList" (list .Stack $) }} {{ end }} 4 5 {{ if gt (len .AbandonedPulls) 0 }} 6 <p class="text-sm font-bold p-2 dark:text-white">ABANDONED PULLS</p> 7 {{ block "pullList" (list .AbandonedPulls $) }} {{ end }} 8 {{ end }} 9{{ end }} 10 11{{ define "summarizedHeader" }} 12 <div class="flex text-sm items-center justify-between w-full"> 13 <div class="flex items-center gap-2 min-w-0 flex-1 pr-2"> 14 <div class="flex-shrink-0"> 15 {{ block "summarizedPullState" . }} {{ end }} 16 </div> 17 <span class="truncate text-sm text-gray-800 dark:text-gray-200"> 18 <span class="text-gray-500 dark:text-gray-400">#{{ .PullId }}</span> 19 {{ .Title }} 20 </span> 21 </div> 22 23 <div class="flex-shrink-0"> 24 {{ $latestRound := .LastRoundNumber }} 25 {{ $lastSubmission := index .Submissions $latestRound }} 26 {{ $commentCount := len $lastSubmission.Comments }} 27 <span> 28 <div class="inline-flex items-center gap-2"> 29 {{ i "message-square" "w-3 h-3 md:hidden" }} 30 {{ $commentCount }} 31 <span class="hidden md:inline">comment{{if ne $commentCount 1}}s{{end}}</span> 32 </div> 33 </span> 34 <span class="mx-2 before:content-['·'] before:select-none"></span> 35 <span> 36 <span class="hidden md:inline">round</span> 37 <span class="font-mono">#{{ $latestRound }}</span> 38 </span> 39 </div> 40 </div> 41{{ end }} 42 43{{ define "summarizedPullState" }} 44 {{ $fgColor := "text-gray-600 dark:text-gray-300" }} 45 {{ $icon := "ban" }} 46 47 {{ if .State.IsOpen }} 48 {{ $fgColor = "text-green-600 dark:text-green-500" }} 49 {{ $icon = "git-pull-request" }} 50 {{ else if .State.IsMerged }} 51 {{ $fgColor = "text-purple-600 dark:text-purple-500" }} 52 {{ $icon = "git-merge" }} 53 {{ else if .State.IsDeleted }} 54 {{ $fgColor = "text-red-600 dark:text-red-500" }} 55 {{ $icon = "git-pull-request-closed" }} 56 {{ end }} 57 58 {{ $style := printf "w-4 h-4 %s" $fgColor }} 59 60 {{ i $icon $style }} 61{{ end }} 62 63{{ define "pullList" }} 64 {{ $list := index . 0 }} 65 {{ $root := index . 1 }} 66 <div class="grid grid-cols-1 rounded border border-gray-200 dark:border-gray-700 divide-y divide-gray-200 dark:divide-gray-700"> 67 {{ range $pull := $list }} 68 {{ $isCurrent := false }} 69 {{ with $root.Pull }} 70 {{ $isCurrent = eq $pull.PullId $root.Pull.PullId }} 71 {{ end }} 72 <a href="/{{ $root.RepoInfo.FullName }}/pulls/{{ $pull.PullId }}" class="no-underline hover:no-underline hover:bg-gray-100/25 hover:dark:bg-gray-700/25"> 73 <div class="flex gap-2 items-center px-2 {{ if $isCurrent }}bg-gray-100/50 dark:bg-gray-700/50{{ end }}"> 74 {{ if $isCurrent }} 75 <div class="flex-shrink-0"> 76 {{ i "arrow-right" "w-4 h-4" }} 77 </div> 78 {{ end }} 79 <div class="{{ if not $isCurrent }} pl-6 {{ end }} flex-grow min-w-0 w-full py-2"> 80 {{ block "summarizedHeader" $pull }} {{ end }} 81 </div> 82 </div> 83 </a> 84 {{ end }} 85 </div> 86{{ end }}