This change replace all HTML imports with es6-modules. The only exceptions are: * gr-app.html file, which can be deleted only after updating the gerrit/httpd/raw/PolyGerritIndexHtml.soy file. * dark-theme.html which is loaded via importHref. Must be updated manually later in a separate change. This change was produced automatically by ./es6-modules-converter.sh script. No manual changes were made. Change-Id: I0c447dd8c05757741e2c940720652d01d9fb7d67
154 lines
6.0 KiB
JavaScript
154 lines
6.0 KiB
JavaScript
/**
|
|
* @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">
|
|
/* Workaround for empty style block - see https://github.com/Polymer/tools/issues/408 */
|
|
</style>
|
|
<style include="gr-menu-page-styles">
|
|
/* Workaround for empty style block - see https://github.com/Polymer/tools/issues/408 */
|
|
</style>
|
|
<style include="gr-page-nav-styles">
|
|
gr-dropdown-list {
|
|
--trigger-style: {
|
|
text-transform: none;
|
|
}
|
|
}
|
|
.breadcrumbText {
|
|
/* Same as dropdown trigger so chevron spacing is consistent. */
|
|
padding: 5px 4px;
|
|
}
|
|
iron-icon {
|
|
margin: 0 var(--spacing-xs);
|
|
}
|
|
.breadcrumb {
|
|
align-items: center;
|
|
display: flex;
|
|
}
|
|
.mainHeader {
|
|
align-items: baseline;
|
|
border-bottom: 1px solid var(--border-color);
|
|
display: flex;
|
|
}
|
|
.selectText {
|
|
display: none;
|
|
}
|
|
.selectText.show {
|
|
display: inline-block;
|
|
}
|
|
main.breadcrumbs:not(.table) {
|
|
margin-top: var(--spacing-l);
|
|
}
|
|
</style>
|
|
<gr-page-nav class="navStyles">
|
|
<ul class="sectionContent">
|
|
<template id="adminNav" is="dom-repeat" items="[[_filteredLinks]]">
|
|
<li class\$="sectionTitle [[_computeSelectedClass(item.view, params)]]">
|
|
<a class="title" href="[[_computeLinkURL(item)]]" rel="noopener">[[item.name]]</a>
|
|
</li>
|
|
<template is="dom-repeat" items="[[item.children]]" as="child">
|
|
<li class\$="[[_computeSelectedClass(child.view, params)]]">
|
|
<a href\$="[[_computeLinkURL(child)]]" rel="noopener">[[child.name]]</a>
|
|
</li>
|
|
</template>
|
|
<template is="dom-if" if="[[item.subsection]]">
|
|
<!--If a section has a subsection, render that.-->
|
|
<li class\$="[[_computeSelectedClass(item.subsection.view, params)]]">
|
|
<a class="title" href\$="[[_computeLinkURL(item.subsection)]]" rel="noopener">
|
|
[[item.subsection.name]]</a>
|
|
</li>
|
|
<!--Loop through the links in the sub-section.-->
|
|
<template is="dom-repeat" items="[[item.subsection.children]]" as="child">
|
|
<li class\$="subsectionItem [[_computeSelectedClass(child.view, params, child.detailType)]]">
|
|
<a href\$="[[_computeLinkURL(child)]]">[[child.name]]</a>
|
|
</li>
|
|
</template>
|
|
</template>
|
|
</template>
|
|
</ul>
|
|
</gr-page-nav>
|
|
<template is="dom-if" if="[[_subsectionLinks.length]]">
|
|
<section class="mainHeader">
|
|
<span class="breadcrumb">
|
|
<span class="breadcrumbText">[[_breadcrumbParentName]]</span>
|
|
<iron-icon icon="gr-icons:chevron-right"></iron-icon>
|
|
</span>
|
|
<gr-dropdown-list lowercase="" id="pageSelect" value="[[_computeSelectValue(params)]]" items="[[_subsectionLinks]]" on-value-change="_handleSubsectionChange">
|
|
</gr-dropdown-list>
|
|
</section>
|
|
</template>
|
|
<template is="dom-if" if="[[_showRepoList]]" restamp="true">
|
|
<main class="table">
|
|
<gr-repo-list class="table" params="[[params]]"></gr-repo-list>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showGroupList]]" restamp="true">
|
|
<main class="table">
|
|
<gr-admin-group-list class="table" params="[[params]]">
|
|
</gr-admin-group-list>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showPluginList]]" restamp="true">
|
|
<main class="table">
|
|
<gr-plugin-list class="table" params="[[params]]"></gr-plugin-list>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showRepoMain]]" restamp="true">
|
|
<main class="breadcrumbs">
|
|
<gr-repo repo="[[params.repo]]"></gr-repo>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showGroup]]" restamp="true">
|
|
<main class="breadcrumbs">
|
|
<gr-group group-id="[[params.groupId]]" on-name-changed="_updateGroupName"></gr-group>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showGroupMembers]]" restamp="true">
|
|
<main class="breadcrumbs">
|
|
<gr-group-members group-id="[[params.groupId]]"></gr-group-members>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showRepoDetailList]]" restamp="true">
|
|
<main class="table breadcrumbs">
|
|
<gr-repo-detail-list params="[[params]]" class="table"></gr-repo-detail-list>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showGroupAuditLog]]" restamp="true">
|
|
<main class="table breadcrumbs">
|
|
<gr-group-audit-log group-id="[[params.groupId]]" class="table"></gr-group-audit-log>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showRepoCommands]]" restamp="true">
|
|
<main class="breadcrumbs">
|
|
<gr-repo-commands repo="[[params.repo]]"></gr-repo-commands>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showRepoAccess]]" restamp="true">
|
|
<main class="breadcrumbs">
|
|
<gr-repo-access path="[[path]]" repo="[[params.repo]]"></gr-repo-access>
|
|
</main>
|
|
</template>
|
|
<template is="dom-if" if="[[_showRepoDashboards]]" restamp="true">
|
|
<main class="table breadcrumbs">
|
|
<gr-repo-dashboards repo="[[params.repo]]"></gr-repo-dashboards>
|
|
</main>
|
|
</template>
|
|
<gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
|
|
<gr-js-api-interface id="jsAPI"></gr-js-api-interface>
|
|
`;
|