| <!-- |
| @license |
| Copyright (C) 2017 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| <link rel="import" href="/bower_components/polymer/polymer.html"> |
| |
| <link rel="import" href="../../../behaviors/gr-list-view-behavior/gr-list-view-behavior.html"> |
| <link rel="import" href="../../../styles/gr-table-styles.html"> |
| <link rel="import" href="../../../styles/shared-styles.html"> |
| <link rel="import" href="../../shared/gr-dialog/gr-dialog.html"> |
| <link rel="import" href="../../shared/gr-list-view/gr-list-view.html"> |
| <link rel="import" href="../../shared/gr-overlay/gr-overlay.html"> |
| <link rel="import" href="../../shared/gr-rest-api-interface/gr-rest-api-interface.html"> |
| <link rel="import" href="../gr-create-repo-dialog/gr-create-repo-dialog.html"> |
| |
| <dom-module id="gr-repo-list"> |
| <template> |
| <style include="shared-styles"> |
| /* Workaround for empty style block - see https://github.com/Polymer/tools/issues/408 */ |
| </style> |
| <style include="gr-table-styles"> |
| /* Workaround for empty style block - see https://github.com/Polymer/tools/issues/408 */ |
| </style> |
| <style> |
| .genericList tr td:last-of-type { |
| text-align: left; |
| } |
| .genericList tr th:last-of-type { |
| text-align: left; |
| } |
| .readOnly { |
| text-align: center; |
| } |
| .changesLink, .name, .repositoryBrowser, .readOnly { |
| white-space:nowrap; |
| } |
| </style> |
| <gr-list-view |
| create-new=[[_createNewCapability]] |
| filter="[[_filter]]" |
| items-per-page="[[_reposPerPage]]" |
| items="[[_repos]]" |
| loading="[[_loading]]" |
| offset="[[_offset]]" |
| on-create-clicked="_handleCreateClicked" |
| path="[[_path]]"> |
| <table id="list" class="genericList"> |
| <tr class="headerRow"> |
| <th class="name topHeader">Repository Name</th> |
| <th class="repositoryBrowser topHeader">Repository Browser</th> |
| <th class="changesLink topHeader">Changes</th> |
| <th class="topHeader readOnly">Read only</th> |
| <th class="description topHeader">Repository Description</th> |
| </tr> |
| <tr id="loading" class$="loadingMsg [[computeLoadingClass(_loading)]]"> |
| <td>Loading...</td> |
| </tr> |
| <tbody class$="[[computeLoadingClass(_loading)]]"> |
| <template is="dom-repeat" items="[[_shownRepos]]"> |
| <tr class="table"> |
| <td class="name"> |
| <a href$="[[_computeRepoUrl(item.name)]]">[[item.name]]</a> |
| </td> |
| <td class="repositoryBrowser"> |
| <template is="dom-repeat" |
| items="[[_computeWeblink(item)]]" as="link"> |
| <a href$="[[link.url]]" |
| class="webLink" |
| rel="noopener" |
| target="_blank"> |
| [[link.name]] |
| </a> |
| </template> |
| </td> |
| <td class="changesLink"><a href$="[[_computeChangesLink(item.name)]]">view all</a></td> |
| <td class="readOnly">[[_readOnly(item)]]</td> |
| <td class="description">[[item.description]]</td> |
| </tr> |
| </template> |
| </tbody> |
| </table> |
| </gr-list-view> |
| <gr-overlay id="createOverlay" with-backdrop> |
| <gr-dialog |
| id="createDialog" |
| class="confirmDialog" |
| disabled="[[!_hasNewRepoName]]" |
| confirm-label="Create" |
| on-confirm="_handleCreateRepo" |
| on-cancel="_handleCloseCreate"> |
| <div class="header" slot="header"> |
| Create Repository |
| </div> |
| <div class="main" slot="main"> |
| <gr-create-repo-dialog |
| has-new-repo-name="{{_hasNewRepoName}}" |
| params="[[params]]" |
| id="createNewModal"></gr-create-repo-dialog> |
| </div> |
| </gr-dialog> |
| </gr-overlay> |
| <gr-rest-api-interface id="restAPI"></gr-rest-api-interface> |
| </template> |
| <script src="gr-repo-list.js"></script> |
| </dom-module> |