]> source.dussan.org Git - gitea.git/commitdiff
Fix actions frontend bugs (pagination, long name alignment) and small simplify (...
authorHester Gong <hestergong@gmail.com>
Mon, 13 Mar 2023 05:31:06 +0000 (13:31 +0800)
committerGitHub <noreply@github.com>
Mon, 13 Mar 2023 05:31:06 +0000 (13:31 +0800)
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: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
routers/web/repo/actions/actions.go
templates/repo/actions/runs_list.tmpl
web_src/js/components/RepoActionView.vue
web_src/less/helpers.less
web_src/less/shared/issuelist.less

index e5496676a9dd3385c08dec5fb4bb0b04db96ebd3..0e7a95ed073aa83f027d02881f1f6670f3cdc838 100644 (file)
@@ -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)
index ffabe534c8bb475d61798e54e365eb8fa7d6346b..a28b9d71378b583f2e8b2c1e6cb62390bda5f7cd 100644 (file)
@@ -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>
                                                {{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>&nbsp; {{$.locale.Tr "actions.runs.pushed_by"}} {{.TriggerUser.GetDisplayName | Escape}}
-                               </div>
                        </div>
                        <div class="issue-item-right">
                                <div>{{TimeSinceUnix .Updated $.locale}}</div>
index aadc8369b75e6290569c54940515b1c16eea0f59..bf84186c1ae2dc9dd032f011180b1dbecec5e961 100644 (file)
@@ -43,8 +43,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"/>
 
               <ActionRunStatus :status="jobStep.status" class="gt-mr-3"/>
 
index 08589fdaab9ff352197d995da22f9e8e22d36a0c..91ea2268e28c7d6283484e17fa81f141784c3fd2 100644 (file)
@@ -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; }
index 8d4cfc46d491c61be659877e86454394b04852b5..9f69d6bb3a4c5ddffac4a59582d886fb16832158 100644 (file)
     .issue-item-main {
       width: 100%;
     }
+    
+    .action-item-main {
+      width: 80%;
+    }
+
+    .issue-item-right {
+      width: 15%;
+    }
 
     .issue-item-top-row {
       max-width: 100%;
       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 {