Adds support for creating app repos, viewing app repos and seeing the list of app repos in the Quay UI.
		
			
				
	
	
		
			76 lines
		
	
	
	
		
			3.7 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
	
		
			3.7 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <div class="repo-list-table-element">
 | |
|   <div class="cor-loader" ng-if="isLoading"></div>
 | |
| 
 | |
|   <div class="co-top-bar">
 | |
|     <span class="co-filter-box">
 | |
|      <span class="page-controls" total-count="orderedRepositories.entries.length" current-page="options.page" page-size="reposPerPage" style="vertical-align: top"></span>
 | |
|      <input class="form-control" type="text" ng-model="options.filter" placeholder="Filter Repositories..." style="margin-right: 10px;">
 | |
|     </span>
 | |
|   </div>
 | |
| 
 | |
|   <div ng-if="orderedRepositories.entries.length == 0 && !isLoading && !options.filter">
 | |
|     <div class="empty-primary-msg" ng-if="namespaces.length != 1">You do not have any viewable repositories.</div>
 | |
|     <div class="empty-primary-msg" ng-if="namespaces.length == 1">This namespace doesn't have any viewable repositories.</div>
 | |
|     <div class="empty-secondary-msg">Either no repositories exist yet or you may not have permission to view any. If you have permission, try <a href="/new">creating a new repository</a>.</div>
 | |
|   </div>
 | |
| 
 | |
|   <div ng-if="orderedRepositories.entries.length == 0 && !isLoading && options.filter">
 | |
|     <div class="empty-primary-msg">No matching repositories</div>
 | |
|     <div class="empty-secondary-msg">There are not matching repositories for the entered filter</div>
 | |
|   </div>
 | |
| 
 | |
|   <table class="co-table" ng-if="orderedRepositories.entries.length && !isLoading">
 | |
|    <thead>
 | |
|     <td class="hidden-xs"
 | |
|         ng-class="tablePredicateClass('full_name', options.predicate, options.reverse)">
 | |
|       <a ng-click="orderBy('full_name')">Repository Name</a>
 | |
|     </td>
 | |
|     <td class="hidden-xs"
 | |
|         ng-class="tablePredicateClass('last_modified_datetime', options.predicate, options.reverse)"
 | |
|         style="min-width: 120px;">
 | |
|       <a ng-click="orderBy('last_modified_datetime')">Last Modified</a>
 | |
|     </td>
 | |
|     <td class="hidden-xs"
 | |
|         ng-class="tablePredicateClass('popularity', options.predicate, options.reverse)"
 | |
|         style="min-width: 20px;">
 | |
|       <a ng-click="orderBy('popularity')">Activity</a>
 | |
|     </td>
 | |
|     <td class="hidden-xs"
 | |
|         ng-class="tablePredicateClass('is_starred', options.predicate, options.reverse)"
 | |
|         style="width: 70px"
 | |
|         ng-if="loggedIn && repoKind != 'application'">
 | |
|       <a ng-click="orderBy('is_starred')">Star</a>
 | |
|     </td>
 | |
|    </thead>
 | |
| 
 | |
|    <tbody>
 | |
|      <tr ng-repeat="repository in orderedRepositories.entries | slice:(reposPerPage * options.page):(reposPerPage * (options.page + 1))">
 | |
|        <td class="repo-name-icon">
 | |
|           <span class="avatar" size="24" data="::getAvatarData(repository.namespace)"></span>
 | |
|           <a href="/repository/{{ ::repository.namespace }}/{{ ::repository.name }}" ng-if="repoKind != 'application'">
 | |
|             <span class="namespace">{{ ::repository.namespace }}</span>
 | |
|             <span class="name">{{ ::repository.name }}</span>
 | |
|           </a>
 | |
|           <a href="/application/{{ ::repository.namespace }}/{{ ::repository.name }}" ng-if="repoKind == 'application'">
 | |
|             <span class="namespace">{{ ::repository.namespace }}</span>
 | |
|             <span class="name">{{ ::repository.name }}</span>
 | |
|           </a>
 | |
|         </td>
 | |
|        <td class="last-modified">
 | |
|          <span ng-if="::repository.last_modified">
 | |
|            {{ ::repository.last_modified * 1000 | amCalendar }}
 | |
|          </span>
 | |
|          <span class="empty" ng-if="::!repository.last_modified">(Empty Repository)</span>
 | |
|        </td>
 | |
|        <td class="popularity hidden-xs">
 | |
|          <span class="strength-indicator" value="::repository.popularity" maximum="::maxPopularity"
 | |
|                log-base="10"></span>
 | |
|        </td>
 | |
|        <td ng-show="loggedIn && repoKind != 'application'">
 | |
|         <span class="repo-star" repository="::repository"
 | |
|               star-toggled="starToggled({'repository': repository})"></span>
 | |
|        </td>
 | |
|      </tr>
 | |
|    </tbody>
 | |
|   </table>
 | |
| </div>
 |