blob: e9a8424ba7844892bde6343693ee2c517ff3ef89 [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: block;
width: 30em;
}
:host([disabled]) {
opacity: 0.5;
pointer-events: none;
}
label {
cursor: pointer;
}
.message {
font-style: italic;
}
.parentRevisionContainer label,
.parentRevisionContainer input[type='text'] {
display: block;
width: 100%;
}
.parentRevisionContainer label {
margin-bottom: var(--spacing-xs);
}
.rebaseOption {
margin: var(--spacing-m) 0;
}
</style>
<gr-dialog
id="confirmDialog"
confirm-label="Rebase"
on-confirm="_handleConfirmTap"
on-cancel="_handleCancelTap"
>
<div class="header" slot="header">Confirm rebase</div>
<div class="main" slot="main">
<div
id="rebaseOnParent"
class="rebaseOption"
hidden$="[[!_displayParentOption(rebaseOnCurrent, hasParent)]]"
>
<input
id="rebaseOnParentInput"
name="rebaseOptions"
type="radio"
on-click="_handleRebaseOnParent"
/>
<label id="rebaseOnParentLabel" for="rebaseOnParentInput">
Rebase on parent change
</label>
</div>
<div
id="parentUpToDateMsg"
class="message"
hidden$="[[!_displayParentUpToDateMsg(rebaseOnCurrent, hasParent)]]"
>
This change is up to date with its parent.
</div>
<div
id="rebaseOnTip"
class="rebaseOption"
hidden$="[[!_displayTipOption(rebaseOnCurrent, hasParent)]]"
>
<input
id="rebaseOnTipInput"
name="rebaseOptions"
type="radio"
disabled$="[[!_displayTipOption(rebaseOnCurrent, hasParent)]]"
on-click="_handleRebaseOnTip"
/>
<label id="rebaseOnTipLabel" for="rebaseOnTipInput">
Rebase on top of the [[branch]] branch<span hidden$="[[!hasParent]]">
(breaks relation chain)
</span>
</label>
</div>
<div
id="tipUpToDateMsg"
class="message"
hidden$="[[_displayTipOption(rebaseOnCurrent, hasParent)]]"
>
Change is up to date with the target branch already ([[branch]])
</div>
<div id="rebaseOnOther" class="rebaseOption">
<input
id="rebaseOnOtherInput"
name="rebaseOptions"
type="radio"
on-click="_handleRebaseOnOther"
/>
<label id="rebaseOnOtherLabel" for="rebaseOnOtherInput">
Rebase on a specific change, ref, or commit
<span hidden$="[[!hasParent]]">
(breaks relation chain)
</span>
</label>
</div>
<div class="parentRevisionContainer">
<gr-autocomplete
id="parentInput"
query="[[_query]]"
no-debounce=""
text="{{_text}}"
on-click="_handleEnterChangeNumberClick"
allow-non-suggested-values=""
placeholder="Change number, ref, or commit hash"
>
</gr-autocomplete>
</div>
</div>
</gr-dialog>
<gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
`;