chore(actions): Add icon for status filter (#38082)

<img width="352" height="391" alt="image"
src="https://github.com/user-attachments/assets/261dd567-49c2-4fc6-a646-5f8641e08192"
/>

---------

Co-authored-by: bircni <bircni@icloud.com>
This commit is contained in:
Lunny Xiao
2026-06-14 12:44:53 -07:00
committed by GitHub
parent 55250407dd
commit a77edc7ba4
3 changed files with 19 additions and 1 deletions

View File

@@ -111,6 +111,7 @@ func (opts FindRunOptions) ToOrders() string {
type StatusInfo struct { type StatusInfo struct {
Status int Status int
StatusName string
DisplayedStatus string DisplayedStatus string
} }
@@ -122,6 +123,7 @@ func GetStatusInfoList(ctx context.Context, lang translation.Locale) []StatusInf
for _, s := range allStatus { for _, s := range allStatus {
statusInfoList = append(statusInfoList, StatusInfo{ statusInfoList = append(statusInfoList, StatusInfo{
Status: int(s), Status: int(s),
StatusName: s.String(),
DisplayedStatus: s.LocaleString(lang), DisplayedStatus: s.LocaleString(lang),
}) })
} }

View File

@@ -7,6 +7,7 @@ import (
"testing" "testing"
"gitea.dev/models/unittest" "gitea.dev/models/unittest"
"gitea.dev/modules/translation"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )
@@ -22,3 +23,15 @@ func TestGetRunWorkflowIDs(t *testing.T) {
assert.NoError(t, err) assert.NoError(t, err)
assert.Empty(t, ids) assert.Empty(t, ids)
} }
func TestGetStatusInfoList(t *testing.T) {
statusInfoList := GetStatusInfoList(t.Context(), translation.MockLocale{})
assert.Equal(t, []StatusInfo{
{Status: int(StatusSuccess), StatusName: StatusSuccess.String(), DisplayedStatus: "actions.status.success"},
{Status: int(StatusFailure), StatusName: StatusFailure.String(), DisplayedStatus: "actions.status.failure"},
{Status: int(StatusWaiting), StatusName: StatusWaiting.String(), DisplayedStatus: "actions.status.waiting"},
{Status: int(StatusRunning), StatusName: StatusRunning.String(), DisplayedStatus: "actions.status.running"},
{Status: int(StatusCancelling), StatusName: StatusCancelling.String(), DisplayedStatus: "actions.status.cancelling"},
}, statusInfoList)
}

View File

@@ -78,7 +78,10 @@
</a> </a>
{{range .StatusInfoList}} {{range .StatusInfoList}}
<a class="item{{if eq .Status $.CurStatus}} selected{{end}}" href="?workflow={{$.CurWorkflow}}&actor={{$.CurActor}}&status={{.Status}}&branch={{$.CurBranch}}"> <a class="item{{if eq .Status $.CurStatus}} selected{{end}}" href="?workflow={{$.CurWorkflow}}&actor={{$.CurActor}}&status={{.Status}}&branch={{$.CurBranch}}">
{{.DisplayedStatus}} <span class="flex-text-inline tw-gap-2">
{{template "repo/icons/action_status" (dict "Status" .StatusName)}}
{{.DisplayedStatus}}
</span>
</a> </a>
{{end}} {{end}}
</div> </div>