blob: 7aa5ecd9e69201351761e4838f6243f69747dd51 [file] [log] [blame]
/**
* @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.js';
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;
}
#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-button link="" title\$="[[action.title]]" has-tooltip="[[_computeHasTooltip(action.title)]]" position-below="true" data-action-key\$="[[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>
</template>
</section>
<section id="secondaryActions" hidden\$="[[_shouldHideActions(_topLevelActions.*, _loading)]]">
<template is="dom-repeat" items="[[_topLevelSecondaryActions]]" as="action">
<gr-button link="" title\$="[[action.title]]" has-tooltip="[[_computeHasTooltip(action.title)]]" position-below="true" data-action-key\$="[[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>
</template>
</section>
<gr-button hidden\$="[[!_loading]]" disabled="">Loading actions...</gr-button>
<gr-dropdown id="moreActions" link="" tabindex="0" vertical-offset="32" horizontal-align="right" on-tap-item="_handleOveflowItemTap" hidden\$="[[_shouldHideActions(_menuActions.*, _loading)]]" disabled-ids="[[_disabledMenuActions]]" items="[[_menuActions]]">
<iron-icon icon="gr-icons:more-vert"></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="[[_revisionRebaseAction.rebaseOnCurrent]]" 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-revert-submission-dialog id="confirmRevertSubmissionDialog" class="confirmDialog" commit-message="[[commitMessage]]" on-confirm="_handleRevertSubmissionDialogConfirm" on-cancel="_handleConfirmDialogCancel" hidden=""></gr-confirm-revert-submission-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" 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>
<gr-js-api-interface id="jsAPI"></gr-js-api-interface>
<gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
<gr-reporting id="reporting" category="change-actions"></gr-reporting>
`;