mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 03:18:24 +00:00 
			
		
		
		
	Add status indicator on main home screen for each repo (#24638)
It will show the calculated commit status state of the latest commit on the default branch for each repository in the dashboard repo list - Closes #15620 # Before  # After  --------- Signed-off-by: Yarden Shoham <git@yardenshoham.com> Co-authored-by: delvh <dev.lh@web.de> Co-authored-by: Giteabot <teabot@gitea.io>
This commit is contained in:
		| @@ -79,6 +79,8 @@ | ||||
|                   <svg-icon name="octicon-archive" :size="16" class-name="gt-ml-2"/> | ||||
|                 </span> | ||||
|               </div> | ||||
|               <!-- the commit status icon logic is taken from templates/repo/commit_status.tmpl --> | ||||
|               <svg-icon v-if="repo.latest_commit_status_state" :name="statusIcon(repo.latest_commit_status_state)" :class-name="'commit-status icon text ' + statusColor(repo.latest_commit_status_state)" :size="16"/> | ||||
|             </a> | ||||
|           </li> | ||||
|         </ul> | ||||
| @@ -154,6 +156,15 @@ import {SvgIcon} from '../svg.js'; | ||||
|  | ||||
| const {appSubUrl, assetUrlPrefix, pageData} = window.config; | ||||
|  | ||||
| const commitStatus = { | ||||
|   pending: {name: 'octicon-dot-fill', color: 'grey'}, | ||||
|   running: {name: 'octicon-dot-fill', color: 'yellow'}, | ||||
|   success: {name: 'octicon-check', color: 'green'}, | ||||
|   error: {name: 'gitea-exclamation', color: 'red'}, | ||||
|   failure: {name: 'octicon-x', color: 'red'}, | ||||
|   warning: {name: 'gitea-exclamation', color: 'yellow'}, | ||||
| }; | ||||
|  | ||||
| const sfc = { | ||||
|   components: {SvgIcon}, | ||||
|   data() { | ||||
| @@ -387,7 +398,7 @@ const sfc = { | ||||
|       } | ||||
|  | ||||
|       if (searchedURL === this.searchURL) { | ||||
|         this.repos = json.data; | ||||
|         this.repos = json.data.map((webSearchRepo) => {return {...webSearchRepo.repository, latest_commit_status_state: webSearchRepo.latest_commit_status.State}}); | ||||
|         const count = response.headers.get('X-Total-Count'); | ||||
|         if (searchedQuery === '' && searchedMode === '' && this.archivedFilter === 'both') { | ||||
|           this.reposTotalCount = count; | ||||
| @@ -412,6 +423,14 @@ const sfc = { | ||||
|         return 'octicon-repo'; | ||||
|       } | ||||
|       return 'octicon-repo'; | ||||
|     }, | ||||
|  | ||||
|     statusIcon(status) { | ||||
|       return commitStatus[status].name; | ||||
|     }, | ||||
|  | ||||
|     statusColor(status) { | ||||
|       return commitStatus[status].color; | ||||
|     } | ||||
|   }, | ||||
| }; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user