<!--
Copyright (C) 2017 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.
-->

<link rel="import" href="../../../bower_components/polymer/polymer.html">

<link rel="import" href="../../shared/gr-rest-api-interface/gr-rest-api-interface.html">
<link rel="import" href="../../shared/gr-tooltip-content/gr-tooltip-content.html">
<link rel="import" href="../../../styles/shared-styles.html">

<dom-module id="gr-change-status">
  <template>
    <style include="shared-styles">
      .chip {
        border-radius: 4px;
        background-color: var(--chip-background-color);
        color: #fff;
        font-family: var(--font-family);
        font-size: 13px;
        padding: .1em .5em;
        white-space: nowrap;
      }
      :host(.merged) .chip {
        background-color: #5b9d52;
      }
      :host(.abandoned) .chip {
        background-color: #afafaf;
      }
      :host(.wip) .chip {
        background-color: #8f756c;
      }
      :host(.private) .chip {
        background-color: #c17ccf;
      }
      :host(.merge-conflict) .chip {
        background-color: #dc5c60;
      }
      :host(.active) .chip {
        background-color: #29b6f6;
      }
      :host(.ready-to-submit) .chip {
        background-color: #e10ca3;
      }
      :host(.custom) .chip {
        background-color: #825cc2;
      }
    </style>
    <gr-tooltip-content
        has-tooltip
        position-below
        title="[[tooltipText]]"
        max-width="40em">
      <div class="chip" aria-label$="Label: [[status]]">
          [[_computeStatusString(status)]]</div>
    </gr-tooltip-content>
  </template>
  <script src="gr-change-status.js"></script>
</dom-module>
