appview/pages: use consistent time component #290

merged
opened by uncenter.dev targeting master from uncenter.dev/core: feat/datetime-on-hover

Creates a new template fragment, repo/fragments/time, that is a component based on the

I haven't been able to test this everywhere because I've still not get local dev-ing all under control. I also plan to make this work for the new duration times in the pipeline -TODO.

+2 -2
appview/pages/templates/knot.html
··· 26 26 </dd> 27 27 28 28 <dt class="font-bold">opened</dt> 29 - <dd>{{ .Registration.Created | timeFmt }}</dd> 29 + <dd>{{ template "repo/fragments/time" .Registration.Created }}</dd> 30 30 31 31 {{ if .Registration.Registered }} 32 32 <dt class="font-bold">registered</dt> 33 - <dd>{{ .Registration.Registered | timeFmt }}</dd> 33 + <dd>{{ template "repo/fragments/time" .Registration.Registered }}</dd> 34 34 {{ else }} 35 35 <dt class="font-bold">status</dt> 36 36 <dd class="text-yellow-800 dark:text-yellow-200 bg-yellow-100 dark:bg-yellow-900 rounded px-2 py-1 inline-block">
+2 -2
appview/pages/templates/knots.html
··· 44 44 </a> 45 45 </div> 46 46 <p class="text-sm text-gray-500 dark:text-gray-400">owned by {{ .ByDid }}</p> 47 - <p class="text-sm text-gray-500 dark:text-gray-400">registered {{ .Registered | timeFmt }}</p> 47 + <p class="text-sm text-gray-500 dark:text-gray-400">registered {{ template "repo/fragments/time" .Registered }}</p> 48 48 </div> 49 49 </div> 50 50 {{ end }} ··· 70 70 </div> 71 71 </div> 72 72 <p class="text-sm text-gray-500 dark:text-gray-400">opened by {{ .ByDid }}</p> 73 - <p class="text-sm text-gray-500 dark:text-gray-400">created {{ .Created | timeFmt }}</p> 73 + <p class="text-sm text-gray-500 dark:text-gray-400">created {{ template "repo/fragments/time" .Created }}</p> 74 74 </div> 75 75 <div class="flex gap-2 items-center"> 76 76 <button
+2 -2
appview/pages/templates/repo/branches.html
··· 59 59 </td> 60 60 <td class="py-3 whitespace-nowrap text-gray-500 dark:text-gray-400"> 61 61 {{ if .Commit }} 62 - {{ .Commit.Committer.When | timeFmt }} 62 + {{ template "repo/fragments/time" .Commit.Committer.When }} 63 63 {{ end }} 64 64 </td> 65 65 </tr> ··· 98 98 </a> 99 99 </span> 100 100 <div class="inline-block px-1 select-none after:content-['·']"></div> 101 - <span>{{ .Commit.Committer.When | timeFmt }}</span> 101 + {{ template "repo/fragments/time" .Commit.Committer.When }} 102 102 </div> 103 103 {{ end }} 104 104 </div>
+1 -1
appview/pages/templates/repo/commit.html
··· 34 34 <a href="mailto:{{ $commit.Author.Email }}" class="no-underline hover:underline text-gray-500 dark:text-gray-300">{{ $commit.Author.Name }}</a> 35 35 {{ end }} 36 36 <span class="px-1 select-none before:content-['\00B7']"></span> 37 - {{ timeFmt $commit.Author.When }} 37 + {{ template "repo/fragments/time" $commit.Author.When }} 38 38 <span class="px-1 select-none before:content-['\00B7']"></span> 39 39 </p> 40 40
+1 -1
appview/pages/templates/repo/compare/new.html
··· 19 19 <a href="/{{ $.RepoInfo.FullName }}/compare?head={{ $br.Name | urlquery }}" class="no-underline hover:no-underline"> 20 20 <div class="flex items-center justify-between p-2"> 21 21 {{ $br.Name }} 22 - <time class="text-gray-500 dark:text-gray-400">{{ timeFmt $br.Commit.Committer.When }}</time> 22 + <div class="text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" $br.Commit.Committer.When }}</div> 23 23 </div> 24 24 </a> 25 25 {{ end }}
+1 -1
appview/pages/templates/repo/empty.html
··· 17 17 <a href="/{{ $.RepoInfo.FullName }}/tree/{{$br.Name | urlquery }}" class="no-underline hover:no-underline"> 18 18 <div class="flex items-center justify-between p-2"> 19 19 {{ $br.Name }} 20 - <time class="text-gray-500 dark:text-gray-400">{{ timeFmt $br.Commit.Committer.When }}</time> 20 + <div class="text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" $br.Commit.Committer.When }}</div> 21 21 </div> 22 22 </a> 23 23 {{ end }}
+2 -2
appview/pages/templates/repo/fragments/artifact.html
··· 10 10 </div> 11 11 12 12 <div id="right-side" class="text-gray-500 dark:text-gray-400 flex items-center flex-shrink-0 gap-2 text-sm"> 13 - <span title="{{ longTimeFmt .Artifact.CreatedAt }}" class="hidden md:inline">{{ timeFmt .Artifact.CreatedAt }}</span> 14 - <span title="{{ longTimeFmt .Artifact.CreatedAt }}" class=" md:hidden">{{ shortTimeFmt .Artifact.CreatedAt }}</span> 13 + <span class="hidden md:inline">{{ template "repo/fragments/time" .Artifact.CreatedAt }}</span> 14 + <span class=" md:hidden">{{ template "repo/fragments/shortTime" .Artifact.CreatedAt }}</span> 15 15 16 16 <span class="select-none after:content-['·'] hidden md:inline"></span> 17 17 <span class="truncate max-w-[100px] hidden md:inline">{{ .Artifact.MimeType }}</span>
+5 -9
appview/pages/templates/repo/index.html
··· 149 149 </a> 150 150 151 151 {{ if .LastCommit }} 152 - <time class="text-xs text-gray-500 dark:text-gray-400" 153 - >{{ timeFmt .LastCommit.When }}</time 154 - > 152 + <div class="text-xs text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" .LastCommit.When }}</div> 155 153 {{ end }} 156 154 </div> 157 155 </div> ··· 172 170 </a> 173 171 174 172 {{ if .LastCommit }} 175 - <time class="text-xs text-gray-500 dark:text-gray-400" 176 - >{{ timeFmt .LastCommit.When }}</time 177 - > 173 + <div class="text-xs text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" .LastCommit.When }}</div> 178 174 {{ end }} 179 175 </div> 180 176 </div> ··· 273 269 > 274 270 </span> 275 271 <div class="inline-block px-1 select-none after:content-['·']"></div> 276 - <span>{{ timeFmt .Committer.When }}</span> 272 + {{ template "repo/fragments/time" .Committer.When }} 277 273 278 274 <!-- tags/branches --> 279 275 {{ $tagsForCommit := index $.TagMap .Hash.String }} ··· 320 316 </a> 321 317 {{ if .Commit }} 322 318 <span class="px-1 text-gray-500 dark:text-gray-400 select-none after:content-['·']"></span> 323 - <time class="text-xs text-gray-500 dark:text-gray-400">{{ timeFmt .Commit.Committer.When }}</time> 319 + <div class="text-xs text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" .Commit.Committer.When }}</div> 324 320 {{ end }} 325 321 {{ if .IsDefault }} 326 322 <span class="px-1 text-gray-500 dark:text-gray-400 select-none after:content-['·']"></span> ··· 366 362 </div> 367 363 <div> 368 364 {{ with .Tag }} 369 - <time class="text-xs text-gray-500 dark:text-gray-400">{{ timeFmt .Tagger.When }}</time> 365 + <div class="text-xs text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" .Tagger.When }}</div> 370 366 {{ end }} 371 367 {{ if eq $idx 0 }} 372 368 {{ with .Tag }}<span class="px-1 text-gray-500 dark:text-gray-400 select-none after:content-['·']"></span>{{ end }}
+1 -1
appview/pages/templates/repo/issues/fragments/editIssueComment.html
··· 19 19 href="#{{ .CommentId }}" 20 20 class="text-gray-500 hover:text-gray-500 hover:underline no-underline" 21 21 id="{{ .CommentId }}"> 22 - {{ .Created | timeFmt }} 22 + {{ template "repo/fragments/time" .Created }} 23 23 </a> 24 24 25 25 <button
+3 -3
appview/pages/templates/repo/issues/fragments/issueComment.html
··· 11 11 class="text-gray-500 dark:text-gray-400 hover:text-gray-500 dark:hover:text-gray-400 hover:underline no-underline" 12 12 id="{{ .CommentId }}"> 13 13 {{ if .Deleted }} 14 - deleted {{ .Deleted | timeFmt }} 14 + deleted {{ template "repo/fragments/time" .Deleted }} 15 15 {{ else if .Edited }} 16 - edited {{ .Edited | timeFmt }} 16 + edited {{ template "repo/fragments/time" .Edited }} 17 17 {{ else }} 18 - {{ .Created | timeFmt }} 18 + {{ template "repo/fragments/time" .Created }} 19 19 {{ end }} 20 20 </a> 21 21
+1 -3
appview/pages/templates/repo/issues/issue.html
··· 35 35 {{ $owner := didOrHandle .Issue.OwnerDid .IssueOwnerHandle }} 36 36 {{ template "user/fragments/picHandle" $owner }} 37 37 <span class="select-none before:content-['\00B7']"></span> 38 - <time title="{{ .Issue.Created | longTimeFmt }}"> 39 - {{ .Issue.Created | timeFmt }} 40 - </time> 38 + {{ template "repo/fragments/time" .Issue.Created }} 41 39 </span> 42 40 </div> 43 41
+1 -3
appview/pages/templates/repo/issues/issues.html
··· 70 70 </span> 71 71 72 72 <span class="before:content-['·']"> 73 - <time> 74 - {{ .Created | timeFmt }} 75 - </time> 73 + {{ template "repo/fragments/time" .Created }} 76 74 </span> 77 75 78 76 <span class="before:content-['·']">
+2 -2
appview/pages/templates/repo/log.html
··· 87 87 {{ template "repo/pipelines/fragments/pipelineSymbolLong" (dict "Pipeline" $pipeline "RepoInfo" $.RepoInfo) }} 88 88 {{ end }} 89 89 </td> 90 - <td class=" py-3 align-top text-gray-500 dark:text-gray-400">{{ timeFmt $commit.Committer.When }}</td> 90 + <td class=" py-3 align-top text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" $commit.Committer.When }}</td> 91 91 </tr> 92 92 {{ end }} 93 93 </tbody> ··· 163 163 </a> 164 164 </span> 165 165 <div class="inline-block px-1 select-none after:content-['·']"></div> 166 - <span>{{ shortTimeFmt $commit.Committer.When }}</span> 166 + <span>{{ template "repo/fragments/shortTime" $commit.Committer.When }}</span> 167 167 168 168 <!-- ci status --> 169 169 {{ $pipeline := index $.Pipelines .Hash.String }}
+1 -3
appview/pages/templates/repo/pipelines/pipelines.html
··· 74 74 </div> 75 75 76 76 <div class="text-sm md:text-base col-span-1 text-right"> 77 - <time title="{{ .Created | longTimeFmt }}"> 78 - {{ .Created | shortTimeFmt }} ago 79 - </time> 77 + {{ template "repo/fragments/shortTimeAgo" .Created }} 80 78 </div> 81 79 82 80 {{ $t := .TimeTaken }}
+1 -1
appview/pages/templates/repo/pulls/fragments/pullHeader.html
··· 31 31 {{ $owner := index $.DidHandleMap .Pull.OwnerDid }} 32 32 {{ template "user/fragments/picHandle" $owner }} 33 33 <span class="select-none before:content-['\00B7']"></span> 34 - <time>{{ .Pull.Created | timeFmt }}</time> 34 + {{ template "repo/fragments/time" .Pull.Created }} 35 35 36 36 <span class="select-none before:content-['\00B7']"></span> 37 37 <span>
+2 -4
appview/pages/templates/repo/pulls/pulls.html
··· 79 79 {{ template "user/fragments/picHandle" $owner }} 80 80 </span> 81 81 82 - <span> 83 - <time> 84 - {{ .Created | timeFmt }} 85 - </time> 82 + <span class="before:content-['·']"> 83 + {{ template "repo/fragments/time" .Created }} 86 84 </span> 87 85 88 86 <span class="before:content-['·']">
+2 -2
appview/pages/templates/repo/tags.html
··· 35 35 <span>{{ .Tag.Tagger.Name }}</span> 36 36 37 37 <span class="px-1 text-gray-500 dark:text-gray-400 select-none after:content-['·']"></span> 38 - <time>{{ shortTimeFmt .Tag.Tagger.When }}</time> 38 + {{ template "repo/fragments/shortTime" .Tag.Tagger.When }} 39 39 {{ end }} 40 40 </div> 41 41 </div> ··· 54 54 {{ slice .Tag.Target.String 0 8 }} 55 55 </a> 56 56 <span>{{ .Tag.Tagger.Name }}</span> 57 - <time>{{ timeFmt .Tag.Tagger.When }}</time> 57 + {{ template "repo/fragments/time" .Tag.Tagger.When }} 58 58 {{ end }} 59 59 </div> 60 60 </div>
+2 -2
appview/pages/templates/repo/tree.html
··· 63 63 </div> 64 64 </a> 65 65 {{ if .LastCommit}} 66 - <time class="text-xs text-gray-500 dark:text-gray-400">{{ timeFmt .LastCommit.When }}</time> 66 + <div class="text-xs text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" .LastCommit.When }}</div> 67 67 {{ end }} 68 68 </div> 69 69 </div> ··· 80 80 </div> 81 81 </a> 82 82 {{ if .LastCommit}} 83 - <time class="text-xs text-gray-500 dark:text-gray-400">{{ timeFmt .LastCommit.When }}</time> 83 + <div class="text-xs text-gray-500 dark:text-gray-400">{{ template "repo/fragments/time" .LastCommit.When }}</div> 84 84 {{ end }} 85 85 </div> 86 86 </div>
+2 -2
appview/pages/templates/settings.html
··· 39 39 {{ i "key" "w-3 h-3 dark:text-gray-300" }} 40 40 <p class="font-bold dark:text-white">{{ .Name }}</p> 41 41 </div> 42 - <p class="text-sm text-gray-500 dark:text-gray-400">added {{ .Created | timeFmt }}</p> 42 + <p class="text-sm text-gray-500 dark:text-gray-400">added {{ template "repo/fragments/time" .Created }}</p> 43 43 <div class="overflow-x-auto whitespace-nowrap flex-1 max-w-full"> 44 44 <code class="text-sm text-gray-500 dark:text-gray-400">{{ .Key }}</code> 45 45 </div> ··· 112 112 {{ end }} 113 113 </div> 114 114 </div> 115 - <p class="text-sm text-gray-500 dark:text-gray-400">added {{ .CreatedAt | timeFmt }}</p> 115 + <p class="text-sm text-gray-500 dark:text-gray-400">added {{ template "repo/fragments/time" .CreatedAt }}</p> 116 116 </div> 117 117 <div class="flex gap-2 items-center"> 118 118 {{ if not .Verified }}
+2 -2
appview/pages/templates/spindles/fragments/spindleListing.html
··· 11 11 {{ i "hard-drive" "w-4 h-4" }} 12 12 {{ .Instance }} 13 13 <span class="text-gray-500"> 14 - {{ .Created | shortTimeFmt }} ago 14 + {{ template "repo/fragments/shortTimeAgo" .Created }} 15 15 </span> 16 16 </a> 17 17 {{ else }} ··· 19 19 {{ i "hard-drive" "w-4 h-4" }} 20 20 {{ .Instance }} 21 21 <span class="text-gray-500"> 22 - {{ .Created | shortTimeFmt }} ago 22 + {{ template "repo/fragments/shortTimeAgo" .Created }} 23 23 </span> 24 24 </div> 25 25 {{ end }}
+6 -6
appview/pages/templates/timeline.html
··· 84 84 >{{ .Repo.Name }}</a 85 85 > 86 86 {{ end }} 87 - <time 87 + <span 88 88 class="text-gray-700 dark:text-gray-400 text-xs" 89 - >{{ .Repo.Created | timeFmt }}</time 89 + >{{ template "repo/fragments/time" .Repo.Created }}</span 90 90 > 91 91 </p> 92 92 </div> ··· 98 98 {{ template "user/fragments/picHandle" $userHandle }} 99 99 followed 100 100 {{ template "user/fragments/picHandle" $subjectHandle }} 101 - <time 101 + <span 102 102 class="text-gray-700 dark:text-gray-400 text-xs" 103 - >{{ .Follow.FollowedAt | timeFmt }}</time 103 + >{{ template "repo/fragments/time" .Follow.FollowedAt }}</span 104 104 > 105 105 </p> 106 106 </div> ··· 116 116 class="no-underline hover:underline" 117 117 >{{ $repoOwnerHandle | truncateAt30 }}/{{ .Star.Repo.Name }}</a 118 118 > 119 - <time 119 + <span 120 120 class="text-gray-700 dark:text-gray-400 text-xs" 121 - >{{ .Star.Created | timeFmt }}</time 121 + >{{ template "repo/fragments/time" .Star.Created }}</spa 122 122 > 123 123 </p> 124 124 </div>
+5 -9
appview/pages/templates/repo/pipelines/fragments/tooltip.html
··· 10 10 {{ $lastStatus := $all.Latest }} 11 11 {{ $kind := $lastStatus.Status.String }} 12 12 13 - {{ $t := .TimeTaken }} 14 - {{ $time := "" }} 15 - {{ if $t }} 16 - {{ $time = durationFmt $t }} 17 - {{ else }} 18 - {{ $time = printf "%s ago" (shortTimeFmt $pipeline.Created) }} 19 - {{ end }} 20 - 21 13 <div id="left" class="flex items-center gap-2 flex-shrink-0"> 22 14 {{ template "repo/pipelines/fragments/workflowSymbol" $all }} 23 15 {{ $name }} 24 16 </div> 25 17 <div id="right" class="flex items-center gap-2 flex-shrink-0"> 26 18 <span class="font-bold">{{ $kind }}</span> 27 - <time>{{ $time }}</time> 19 + {{ if .TimeTaken }} 20 + {{ template "repo/fragments/duration" .TimeTaken }} 21 + {{ else }} 22 + {{ template "repo/fragments/shortTimeAgo" $pipeline.Created }} 23 + {{ end }} 28 24 </div> 29 25 </div> 30 26 </a>
+5 -10
appview/pages/templates/repo/pipelines/workflow.html
··· 32 32 {{ $lastStatus := $all.Latest }} 33 33 {{ $kind := $lastStatus.Status.String }} 34 34 35 - {{ $t := .TimeTaken }} 36 - {{ $time := "" }} 37 - 38 - {{ if $t }} 39 - {{ $time = durationFmt $t }} 40 - {{ else }} 41 - {{ $time = printf "%s ago" (shortTimeFmt $lastStatus.Created) }} 42 - {{ end }} 43 - 44 35 <div id="left" class="flex items-center gap-2 flex-shrink-0"> 45 36 {{ template "repo/pipelines/fragments/workflowSymbol" $all }} 46 37 {{ $name }} 47 38 </div> 48 39 <div id="right" class="flex items-center gap-2 flex-shrink-0"> 49 40 <span class="font-bold">{{ $kind }}</span> 50 - <time>{{ $time }}</time> 41 + {{ if .TimeTaken }} 42 + {{ template "repo/fragments/duration" .TimeTaken }} 43 + {{ else }} 44 + {{ template "repo/fragments/shortTimeAgo" $lastStatus.Created }} 45 + {{ end }} 51 46 </div> 52 47 </div> 53 48 </a>