* Rename all files with the following commands:
find . -name *_html.js -exec sh -c \
'dirn=`dirname {}`;bn=`basename {} .js`; git mv {} $dirn/$bn.ts' \;
* Replace in all *_html.ts files
import {html} from '@polymer/polymer/lib/utils/html-tag.js';
with
import {html} from '@polymer/polymer/lib/utils/html-tag';
* Update manually import path in
gr-hovercard-account_html.ts
* Convert manually gr-hovercard-shared-style.js to .ts
Change-Id: I83102311c70740586514b6f32d03328e2a59c3ec
184 lines
5.3 KiB
TypeScript
184 lines
5.3 KiB
TypeScript
/**
|
|
* @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 {
|
|
align-items: center;
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
}
|
|
.invisible {
|
|
display: none;
|
|
}
|
|
gr-button {
|
|
margin-left: var(--spacing-l);
|
|
text-decoration: none;
|
|
}
|
|
gr-dialog {
|
|
width: 50em;
|
|
}
|
|
gr-dialog .main {
|
|
width: 100%;
|
|
}
|
|
gr-dialog .main > iron-input {
|
|
width: 100%;
|
|
}
|
|
input {
|
|
border: 1px solid var(--border-color);
|
|
border-radius: var(--border-radius);
|
|
margin: var(--spacing-m) 0;
|
|
padding: var(--spacing-s);
|
|
width: 100%;
|
|
box-sizing: content-box;
|
|
}
|
|
#fileUploadBrowse {
|
|
margin-left: 0;
|
|
}
|
|
#dragDropArea {
|
|
border: 2px dashed var(--border-color);
|
|
border-radius: var(--border-radius);
|
|
margin-top: var(--spacing-l);
|
|
padding: var(--spacing-xxl) var(--spacing-xxl);
|
|
text-align: center;
|
|
}
|
|
#dragDropArea > p {
|
|
font-weight: var(--font-weight-bold);
|
|
padding: var(--spacing-s);
|
|
}
|
|
@media screen and (max-width: 50em) {
|
|
gr-dialog {
|
|
width: 100vw;
|
|
}
|
|
}
|
|
</style>
|
|
<template is="dom-repeat" items="[[_actions]]" as="action">
|
|
<gr-button
|
|
id$="[[action.id]]"
|
|
class$="[[_computeIsInvisible(action.id, hiddenActions)]]"
|
|
link=""
|
|
on-click="_handleTap"
|
|
>[[action.label]]</gr-button
|
|
>
|
|
</template>
|
|
<gr-overlay id="overlay" with-backdrop="">
|
|
<gr-dialog
|
|
id="openDialog"
|
|
class="invisible dialog"
|
|
disabled$="[[!_isValidPath(_path)]]"
|
|
confirm-label="Confirm"
|
|
confirm-on-enter=""
|
|
on-confirm="_handleOpenConfirm"
|
|
on-cancel="_handleDialogCancel"
|
|
>
|
|
<div class="header" slot="header">
|
|
Add a new file or open an existing file
|
|
</div>
|
|
<div class="main" slot="main">
|
|
<gr-autocomplete
|
|
placeholder="Enter an existing or new full file path."
|
|
query="[[_query]]"
|
|
text="{{_path}}"
|
|
></gr-autocomplete>
|
|
<div id="dragDropArea" on-drop="_handleDragAndDropUpload">
|
|
<p>Drag and drop a file here</p>
|
|
<p>or</p>
|
|
<p>
|
|
<iron-input>
|
|
<input
|
|
is="iron-input"
|
|
id="fileUploadInput"
|
|
type="file"
|
|
on-change="_handleFileUploadChanged"
|
|
hidden
|
|
/>
|
|
</iron-input>
|
|
<label for="fileUploadInput">
|
|
<gr-button id="fileUploadBrowse">Browse</gr-button>
|
|
</label>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</gr-dialog>
|
|
<gr-dialog
|
|
id="deleteDialog"
|
|
class="invisible dialog"
|
|
disabled$="[[!_isValidPath(_path)]]"
|
|
confirm-label="Delete"
|
|
confirm-on-enter=""
|
|
on-confirm="_handleDeleteConfirm"
|
|
on-cancel="_handleDialogCancel"
|
|
>
|
|
<div class="header" slot="header">Delete a file from the repo</div>
|
|
<div class="main" slot="main">
|
|
<gr-autocomplete
|
|
placeholder="Enter an existing full file path."
|
|
query="[[_query]]"
|
|
text="{{_path}}"
|
|
></gr-autocomplete>
|
|
</div>
|
|
</gr-dialog>
|
|
<gr-dialog
|
|
id="renameDialog"
|
|
class="invisible dialog"
|
|
disabled$="[[!_computeRenameDisabled(_path, _newPath)]]"
|
|
confirm-label="Rename"
|
|
confirm-on-enter=""
|
|
on-confirm="_handleRenameConfirm"
|
|
on-cancel="_handleDialogCancel"
|
|
>
|
|
<div class="header" slot="header">Rename a file in the repo</div>
|
|
<div class="main" slot="main">
|
|
<gr-autocomplete
|
|
placeholder="Enter an existing full file path."
|
|
query="[[_query]]"
|
|
text="{{_path}}"
|
|
></gr-autocomplete>
|
|
<iron-input
|
|
class="newPathIronInput"
|
|
bind-value="{{_newPath}}"
|
|
placeholder="Enter the new path."
|
|
>
|
|
<input
|
|
class="newPathInput"
|
|
is="iron-input"
|
|
bind-value="{{_newPath}}"
|
|
placeholder="Enter the new path."
|
|
/>
|
|
</iron-input>
|
|
</div>
|
|
</gr-dialog>
|
|
<gr-dialog
|
|
id="restoreDialog"
|
|
class="invisible dialog"
|
|
confirm-label="Restore"
|
|
confirm-on-enter=""
|
|
on-confirm="_handleRestoreConfirm"
|
|
on-cancel="_handleDialogCancel"
|
|
>
|
|
<div class="header" slot="header">Restore this file?</div>
|
|
<div class="main" slot="main">
|
|
<iron-input disabled="" bind-value="{{_path}}">
|
|
<input is="iron-input" disabled="" bind-value="{{_path}}" />
|
|
</iron-input>
|
|
</div>
|
|
</gr-dialog>
|
|
</gr-overlay>
|
|
<gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
|
|
`;
|