/**
 * @license
 * Copyright (C) 2021 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.
 */

export const htmlTemplate = Polymer.html`
<style include="gr-form-styles"></style>
<style>
    .u-green {
        color: #388E3C;
    }
    .u-red {
        color: #D32F2F;
    }
</style>
<div id="gr-verify-status">
    <span class="u-green">Passed: [[verifyStatus.summary.passed]]</span>,
    <span class="u-red">Failed: [[verifyStatus.summary.failed]]</span>,
    <span class="u-black">Not done: [[verifyStatus.summary.notdone]]</span>
</div>
<div class="separatedSection style-scope gr-change-metadata"
    style="margin-top: 0; padding: 0">
  <table class="test_result_table">
    <tbody>
        <template is="dom-repeat" items="{{verifyStatus.results}}">
        <tr>
            <td class="cell verifiedstatus"><a href$="[[item.url]]">[[item.name]]</a></td>
            <td class="cell verifiedstatus verifiedstatus_value">[[item.value]]</td>
        </tr>
        </template>
    </tbody>
  </table>
</div>`;
