summaryrefslogtreecommitdiffstats
path: root/polygerrit-ui/app/elements/admin/gr-repo-detail-list/gr-repo-detail-list.html
diff options
context:
space:
mode:
Diffstat (limited to 'polygerrit-ui/app/elements/admin/gr-repo-detail-list/gr-repo-detail-list.html')
-rw-r--r--polygerrit-ui/app/elements/admin/gr-repo-detail-list/gr-repo-detail-list.html215
1 files changed, 215 insertions, 0 deletions
diff --git a/polygerrit-ui/app/elements/admin/gr-repo-detail-list/gr-repo-detail-list.html b/polygerrit-ui/app/elements/admin/gr-repo-detail-list/gr-repo-detail-list.html
new file mode 100644
index 0000000000..fccfa6a0c8
--- /dev/null
+++ b/polygerrit-ui/app/elements/admin/gr-repo-detail-list/gr-repo-detail-list.html
@@ -0,0 +1,215 @@
+<!--
+@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="../../../behaviors/gr-list-view-behavior/gr-list-view-behavior.html">
+<link rel="import" href="../../../behaviors/gr-url-encoding-behavior/gr-url-encoding-behavior.html">
+<link rel="import" href="../../../bower_components/iron-input/iron-input.html">
+<link rel="import" href="../../../bower_components/polymer/polymer.html">
+<link rel="import" href="../../../styles/gr-form-styles.html">
+<link rel="import" href="../../../styles/gr-table-styles.html">
+<link rel="import" href="../../../styles/shared-styles.html">
+<link rel="import" href="../../shared/gr-account-link/gr-account-link.html">
+<link rel="import" href="../../shared/gr-button/gr-button.html">
+<link rel="import" href="../../shared/gr-date-formatter/gr-date-formatter.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-pointer-dialog/gr-create-pointer-dialog.html">
+<link rel="import" href="../gr-confirm-delete-item-dialog/gr-confirm-delete-item-dialog.html">
+
+<dom-module id="gr-repo-detail-list">
+ <template>
+ <style include="gr-form-styles"></style>
+ <style include="gr-table-styles"></style>
+ <style include="shared-styles">
+ .tags td.name {
+ min-width: 25em;
+ }
+ td.name,
+ td.revision,
+ td.message {
+ word-break: break-word;
+ }
+ td.revision.tags {
+ width: 27em;
+ }
+ td.message,
+ td.tagger {
+ max-width: 15em;
+ }
+ .editing .editItem {
+ display: inherit;
+ }
+ .editItem,
+ .editing .editBtn,
+ .canEdit .revisionNoEditing,
+ .editing .revisionWithEditing,
+ .revisionEdit,
+ .hideItem {
+ display: none;
+ }
+ .revisionEdit gr-button {
+ margin-left: .6em;
+ }
+ .editBtn {
+ margin-left: 1em;
+ }
+ .canEdit .revisionEdit{
+ align-items: center;
+ display: flex;
+ line-height: 1;
+ }
+ .deleteButton:not(.show) {
+ display: none;
+ }
+ .tagger.hide {
+ display: none;
+ }
+ </style>
+ <style include="gr-table-styles"></style>
+ <gr-list-view
+ create-new="[[_loggedIn]]"
+ filter="[[_filter]]"
+ items-per-page="[[_itemsPerPage]]"
+ items="[[_items]]"
+ loading="[[_loading]]"
+ offset="[[_offset]]"
+ on-create-clicked="_handleCreateClicked"
+ path="[[_getPath(_repo, detailType)]]">
+ <table id="list" class="genericList gr-form-styles">
+ <tr class="headerRow">
+ <th class="name topHeader">Name</th>
+ <th class="revision topHeader">Revision</th>
+ <th class$="message topHeader [[_hideIfBranch(detailType)]]">
+ Message</th>
+ <th class$="tagger topHeader [[_hideIfBranch(detailType)]]">
+ Tagger</th>
+ <th class="repositoryBrowser topHeader">
+ Repository Browser</th>
+ <th class="delete topHeader"></th>
+ </tr>
+ <tr id="loading" class$="loadingMsg [[computeLoadingClass(_loading)]]">
+ <td>Loading...</td>
+ </tr>
+ <tbody class$="[[computeLoadingClass(_loading)]]">
+ <template is="dom-repeat" items="[[_shownItems]]">
+ <tr class="table">
+ <td class$="[[detailType]] name">[[_stripRefs(item.ref, detailType)]]</td>
+ <td class$="[[detailType]] revision [[_computeCanEditClass(item.ref, detailType, _isOwner)]]">
+ <span class="revisionNoEditing">
+ [[item.revision]]
+ </span>
+ <span class$="revisionEdit [[_computeEditingClass(_isEditing)]]">
+ <span class="revisionWithEditing">
+ [[item.revision]]
+ </span>
+ <gr-button
+ link
+ on-tap="_handleEditRevision"
+ class="editBtn">
+ edit
+ </gr-button>
+ <input
+ is=iron-input
+ bind-value="{{_revisedRef}}"
+ class="editItem">
+ <gr-button
+ link
+ on-tap="_handleCancelRevision"
+ class="cancelBtn editItem">
+ Cancel
+ </gr-button>
+ <gr-button
+ link
+ on-tap="_handleSaveRevision"
+ class="saveBtn editItem"
+ disabled="[[!_revisedRef]]">
+ Save
+ </gr-button>
+ </span>
+ </td>
+ <td class$="message [[_hideIfBranch(detailType)]]">
+ [[_computeMessage(item.message)]]
+ </td>
+ <td class$="tagger [[_hideIfBranch(detailType)]]">
+ <div class$="tagger [[_computeHideTagger(item.tagger)]]">
+ <gr-account-link
+ account="[[item.tagger]]">
+ </gr-account-link>
+ (<gr-date-formatter
+ has-tooltip
+ date-str="[[item.tagger.date]]">
+ </gr-date-formatter>)
+ </div>
+ </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="delete">
+ <gr-button
+ link
+ class$="deleteButton [[_computeHideDeleteClass(_isOwner, item.can_delete)]]"
+ on-tap="_handleDeleteItem">
+ Delete
+ </gr-button>
+ </td>
+ </tr>
+ </template>
+ </tbody>
+ </table>
+ <gr-overlay id="overlay" with-backdrop>
+ <gr-confirm-delete-item-dialog
+ class="confirmDialog"
+ on-confirm="_handleDeleteItemConfirm"
+ on-cancel="_handleConfirmDialogCancel"
+ item="[[_refName]]"
+ item-type="[[detailType]]"></gr-confirm-delete-item-dialog>
+ </gr-overlay>
+ </gr-list-view>
+ <gr-overlay id="createOverlay" with-backdrop>
+ <gr-dialog
+ id="createDialog"
+ disabled="[[!_hasNewItemName]]"
+ confirm-label="Create"
+ on-confirm="_handleCreateItem"
+ on-cancel="_handleCloseCreate">
+ <div class="header" slot="header">
+ Create [[_computeItemName(detailType)]]
+ </div>
+ <div class="main" slot="main">
+ <gr-create-pointer-dialog
+ id="createNewModal"
+ detail-type="[[_computeItemName(detailType)]]"
+ has-new-item-name="{{_hasNewItemName}}"
+ item-detail="[[detailType]]"
+ repo-name="[[_repo]]"></gr-create-pointer-dialog>
+ </div>
+ </gr-dialog>
+ </gr-overlay>
+ <gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
+ </template>
+ <script src="gr-repo-detail-list.js"></script>
+</dom-module>