Backport #23370 by @HesterG 1 Right now on actions page, the action list will not be aligned if commit message is long. In this PR, the changes are: - The branch tag is moved to bottom row - Width percentage is given to make them aligned - Show "..." if commit is longer than two lines. - Align the status icon with the commit message with baseline Before: <img width="1068" alt="截屏2023-03-08 12 23 22" src="https://user-images.githubusercontent.com/17645053/223628534-6b9472cb-29f5-40a3-9714-c5152553049e.png"> After: <img width="756" alt="截屏2023-03-08 13 34 28" src="https://user-images.githubusercontent.com/17645053/223628571-da94698b-0e0a-43e3-ae82-34d8c780e5ba.png"> 2 Right now the actions list's pagination is not working properly because Param is not passed to pagination template, in this PR Param Strings are passed to the pager Before: <img width="1176" alt="截屏2023-03-08 12 23 50" src="https://user-images.githubusercontent.com/17645053/223629207-8b67ce74-2342-4259-bc81-036e37752716.png"> After: <img width="1343" alt="截屏2023-03-08 13 11 54" src="https://user-images.githubusercontent.com/17645053/223629321-4f538f8a-45dc-4d6f-ae60-2c82680ae3e7.png"> 3 A small simplify in `RepoActionView.vue` . Co-authored-by: Hester Gong <hestergong@gmail.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>tags/v1.19.0
@@ -133,6 +133,8 @@ func List(ctx *context.Context) { | |||
pager := context.NewPagination(int(total), opts.PageSize, opts.Page, 5) | |||
pager.SetDefaultParams(ctx) | |||
pager.AddParamString("workflow", workflow) | |||
pager.AddParamString("state", ctx.FormString("state")) | |||
ctx.Data["Page"] = pager | |||
ctx.HTML(http.StatusOK, tplListActions) |
@@ -1,14 +1,18 @@ | |||
<div class="issue list"> | |||
{{range .Runs}} | |||
<li class="item gt-df gt-py-3"> | |||
<li class="item gt-df gt-py-3 gt-ab"> | |||
<div class="issue-item-left gt-df"> | |||
{{template "repo/actions/status" .Status}} | |||
</div> | |||
<div class="issue-item-main gt-f1 gt-fc gt-df"> | |||
<div class="issue-item-main action-item-main gt-f1 gt-fc gt-df gt-mr-3"> | |||
<div class="issue-item-top-row"> | |||
<a class="index gt-ml-0 gt-mr-2" href="{{if .Link}}{{.Link}}{{else}}{{$.Link}}/{{.Index}}{{end}}"> | |||
<a class="index gt-ml-0 gt-mr-2" title="{{.Title}}" href="{{if .Link}}{{.Link}}{{else}}{{$.Link}}/{{.Index}}{{end}}"> | |||
{{- .Title -}} | |||
</a> | |||
</div> | |||
<div class="desc issue-item-bottom-row gt-df gt-ac gt-fw gt-my-1"> | |||
<b>{{if not $.CurWorkflow}}{{.WorkflowID}} {{end}}#{{.Index}}</b>: {{$.locale.Tr "actions.runs.commit"}} | |||
<a href="{{$.RepoLink}}/commit/{{.CommitSHA}}">{{ShortSha .CommitSHA}}</a>{{$.locale.Tr "actions.runs.pushed_by"}} {{.TriggerUser.GetDisplayName}} | |||
<span class="ui label"> | |||
{{if .RefLink}} | |||
<a href="{{.RefLink}}">{{.PrettyRef}}</a> | |||
@@ -17,10 +21,6 @@ | |||
{{end}} | |||
</span> | |||
</div> | |||
<div class="desc issue-item-bottom-row gt-df gt-ac gt-fw gt-my-1"> | |||
<b>{{if not $.CurWorkflow}}{{.WorkflowID}} {{end}}#{{.Index}}</b>: {{$.locale.Tr "actions.runs.commit"}} | |||
<a href="{{$.RepoLink}}/commit/{{.CommitSHA}}">{{ShortSha .CommitSHA}}</a> {{$.locale.Tr "actions.runs.pushed_by"}} {{.TriggerUser.GetDisplayName | Escape}} | |||
</div> | |||
</div> | |||
<div class="issue-item-right"> | |||
<div>{{TimeSinceUnix .Updated $.locale}}</div> |
@@ -42,8 +42,7 @@ | |||
<div class="job-step-container"> | |||
<div class="job-step-section" v-for="(jobStep, i) in currentJob.steps" :key="i"> | |||
<div class="job-step-summary" @click.stop="toggleStepLogs(i)"> | |||
<SvgIcon name="octicon-chevron-down" class="gt-mr-3" v-show="currentJobStepsStates[i].expanded"/> | |||
<SvgIcon name="octicon-chevron-right" class="gt-mr-3" v-show="!currentJobStepsStates[i].expanded"/> | |||
<SvgIcon :name="currentJobStepsStates[i].expanded ? 'octicon-chevron-down': 'octicon-chevron-right'" class="gt-mr-3"/> | |||
<SvgIcon name="octicon-check-circle-fill" class="green gt-mr-3" v-if="jobStep.status === 'success'"/> | |||
<SvgIcon name="octicon-skip" class="ui text grey gt-mr-3" v-else-if="jobStep.status === 'skipped'"/> |
@@ -3,6 +3,7 @@ | |||
.gt-dif { display: inline-flex !important; } | |||
.gt-dib { display: inline-block !important; } | |||
.gt-ac { align-items: center !important; } | |||
.gt-ab { align-items: baseline !important; } | |||
.gt-tc { text-align: center !important; } | |||
.gt-tl { text-align: left !important; } | |||
.gt-tdn { text-decoration: none !important; } |
@@ -23,6 +23,14 @@ | |||
.issue-item-main { | |||
width: 100%; | |||
} | |||
.action-item-main { | |||
width: 80%; | |||
} | |||
.issue-item-right { | |||
width: 15%; | |||
} | |||
.issue-item-top-row { | |||
max-width: 100%; | |||
@@ -30,6 +38,14 @@ | |||
font-size: 16px; | |||
min-width: 0; | |||
font-weight: 600; | |||
a.index { | |||
max-width: fit-content; | |||
display: -webkit-box; | |||
-webkit-box-orient: vertical; | |||
-webkit-line-clamp: 2; | |||
overflow: hidden; | |||
word-break:break-all; | |||
} | |||
} | |||
.labels-list { |