| /** |
| * @license |
| * Copyright (C) 2020 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. |
| */ |
| import {html} from '@polymer/polymer/lib/utils/html-tag'; |
| |
| export const htmlTemplate = html` |
| <style include="shared-styles"> |
| :host { |
| display: flex; |
| font-family: var(--font-family); |
| } |
| #actionLoadingMessage, |
| #mainContent, |
| section { |
| display: flex; |
| } |
| #actionLoadingMessage, |
| gr-button, |
| gr-dropdown { |
| /* px because don't have the same font size */ |
| margin-left: 8px; |
| } |
| gr-button { |
| display: block; |
| } |
| #actionLoadingMessage { |
| align-items: center; |
| color: var(--deemphasized-text-color); |
| } |
| #confirmSubmitDialog .changeSubject { |
| margin: var(--spacing-l); |
| text-align: center; |
| } |
| iron-icon { |
| color: inherit; |
| margin-right: var(--spacing-xs); |
| } |
| #moreActions iron-icon { |
| margin: 0; |
| } |
| #moreMessage, |
| .hidden { |
| display: none; |
| } |
| @media screen and (max-width: 50em) { |
| #mainContent { |
| flex-wrap: wrap; |
| } |
| gr-button { |
| --gr-button-padding: var(--spacing-m); |
| white-space: nowrap; |
| } |
| gr-button, |
| gr-dropdown { |
| margin: 0; |
| } |
| #actionLoadingMessage { |
| margin: var(--spacing-m); |
| text-align: center; |
| } |
| #moreMessage { |
| display: inline; |
| } |
| } |
| </style> |
| <div id="mainContent"> |
| <span id="actionLoadingMessage" hidden$="[[!_actionLoadingMessage]]"> |
| [[_actionLoadingMessage]]</span |
| > |
| <section |
| id="primaryActions" |
| hidden$="[[_shouldHideActions(_topLevelActions.*, _loading)]]" |
| > |
| <template is="dom-repeat" items="[[_topLevelPrimaryActions]]" as="action"> |
| <gr-tooltip-content |
| title$="[[action.title]]" |
| has-tooltip="[[_computeHasTooltip(action.title)]]" |
| position-below="true" |
| > |
| <gr-button |
| link="" |
| data-action-key$="[[action.__key]]" |
| class$="[[action.__key]]" |
| data-action-type$="[[action.__type]]" |
| data-label$="[[action.label]]" |
| disabled$="[[_calculateDisabled(action, _hasKnownChainState)]]" |
| on-click="_handleActionTap" |
| > |
| <iron-icon |
| class$="[[_computeHasIcon(action)]]" |
| icon$="gr-icons:[[action.icon]]" |
| ></iron-icon> |
| [[action.label]] |
| </gr-button> |
| </gr-tooltip-content> |
| </template> |
| </section> |
| <section |
| id="secondaryActions" |
| hidden$="[[_shouldHideActions(_topLevelActions.*, _loading)]]" |
| > |
| <template |
| is="dom-repeat" |
| items="[[_topLevelSecondaryActions]]" |
| as="action" |
| > |
| <gr-tooltip-content |
| title$="[[action.title]]" |
| has-tooltip="[[_computeHasTooltip(action.title)]]" |
| position-below="true" |
| > |
| <gr-button |
| link="" |
| data-action-key$="[[action.__key]]" |
| class$="[[action.__key]]" |
| data-action-type$="[[action.__type]]" |
| data-label$="[[action.label]]" |
| disabled$="[[_calculateDisabled(action, _hasKnownChainState)]]" |
| on-click="_handleActionTap" |
| > |
| <iron-icon |
| class$="[[_computeHasIcon(action)]]" |
| icon$="gr-icons:[[action.icon]]" |
| ></iron-icon> |
| [[action.label]] |
| </gr-button> |
| </gr-tooltip-content> |
| </template> |
| </section> |
| <gr-button hidden$="[[!_loading]]" disabled="" |
| >Loading actions...</gr-button |
| > |
| <gr-dropdown |
| id="moreActions" |
| link="" |
| vertical-offset="32" |
| horizontal-align="right" |
| on-tap-item="_handleOverflowItemTap" |
| hidden$="[[_shouldHideActions(_menuActions.*, _loading)]]" |
| disabled-ids="[[_disabledMenuActions]]" |
| items="[[_menuActions]]" |
| > |
| <iron-icon icon="gr-icons:more-vert" aria-labelledby="moreMessage"> |
| </iron-icon> |
| <span id="moreMessage">More</span> |
| </gr-dropdown> |
| </div> |
| <gr-overlay id="overlay" with-backdrop=""> |
| <gr-confirm-rebase-dialog |
| id="confirmRebase" |
| class="confirmDialog" |
| change-number="[[change._number]]" |
| on-confirm="_handleRebaseConfirm" |
| on-cancel="_handleConfirmDialogCancel" |
| branch="[[change.branch]]" |
| has-parent="[[hasParent]]" |
| rebase-on-current="[[_computeRebaseOnCurrent(_revisionRebaseAction)]]" |
| hidden="" |
| ></gr-confirm-rebase-dialog> |
| <gr-confirm-cherrypick-dialog |
| id="confirmCherrypick" |
| class="confirmDialog" |
| change-status="[[changeStatus]]" |
| commit-message="[[commitMessage]]" |
| commit-num="[[commitNum]]" |
| on-confirm="_handleCherrypickConfirm" |
| on-cancel="_handleConfirmDialogCancel" |
| project="[[change.project]]" |
| hidden="" |
| ></gr-confirm-cherrypick-dialog> |
| <gr-confirm-cherrypick-conflict-dialog |
| id="confirmCherrypickConflict" |
| class="confirmDialog" |
| on-confirm="_handleCherrypickConflictConfirm" |
| on-cancel="_handleConfirmDialogCancel" |
| hidden="" |
| ></gr-confirm-cherrypick-conflict-dialog> |
| <gr-confirm-move-dialog |
| id="confirmMove" |
| class="confirmDialog" |
| on-confirm="_handleMoveConfirm" |
| on-cancel="_handleConfirmDialogCancel" |
| project="[[change.project]]" |
| hidden="" |
| ></gr-confirm-move-dialog> |
| <gr-confirm-revert-dialog |
| id="confirmRevertDialog" |
| class="confirmDialog" |
| on-confirm="_handleRevertDialogConfirm" |
| on-cancel="_handleConfirmDialogCancel" |
| hidden="" |
| ></gr-confirm-revert-dialog> |
| <gr-confirm-abandon-dialog |
| id="confirmAbandonDialog" |
| class="confirmDialog" |
| on-confirm="_handleAbandonDialogConfirm" |
| on-cancel="_handleConfirmDialogCancel" |
| hidden="" |
| ></gr-confirm-abandon-dialog> |
| <gr-confirm-submit-dialog |
| id="confirmSubmitDialog" |
| class="confirmDialog" |
| change="[[change]]" |
| action="[[_revisionSubmitAction]]" |
| on-cancel="_handleConfirmDialogCancel" |
| on-confirm="_handleSubmitConfirm" |
| comment-threads="[[commentThreads]]" |
| hidden="" |
| ></gr-confirm-submit-dialog> |
| <gr-dialog |
| id="createFollowUpDialog" |
| class="confirmDialog" |
| confirm-label="Create" |
| on-confirm="_handleCreateFollowUpChange" |
| on-cancel="_handleCloseCreateFollowUpChange" |
| > |
| <div class="header" slot="header">Create Follow-Up Change</div> |
| <div class="main" slot="main"> |
| <gr-create-change-dialog |
| id="createFollowUpChange" |
| branch="[[change.branch]]" |
| base-change="[[change.id]]" |
| repo-name="[[change.project]]" |
| private-by-default="[[privateByDefault]]" |
| ></gr-create-change-dialog> |
| </div> |
| </gr-dialog> |
| <gr-dialog |
| id="confirmDeleteDialog" |
| class="confirmDialog" |
| confirm-label="Delete" |
| confirm-on-enter="" |
| on-cancel="_handleConfirmDialogCancel" |
| on-confirm="_handleDeleteConfirm" |
| > |
| <div class="header" slot="header">Delete Change</div> |
| <div class="main" slot="main"> |
| Do you really want to delete the change? |
| </div> |
| </gr-dialog> |
| <gr-dialog |
| id="confirmDeleteEditDialog" |
| class="confirmDialog" |
| confirm-label="Delete" |
| confirm-on-enter="" |
| on-cancel="_handleConfirmDialogCancel" |
| on-confirm="_handleDeleteEditConfirm" |
| > |
| <div class="header" slot="header">Delete Change Edit</div> |
| <div class="main" slot="main">Do you really want to delete the edit?</div> |
| </gr-dialog> |
| </gr-overlay> |
| `; |