OLD | NEW |
1 <!-- | 1 <!-- |
2 Copyright 2014 The Chromium Authors. All rights reserved. | 2 Copyright 2014 The Chromium Authors. All rights reserved. |
3 Use of this source code is governed by a BSD-style license that can be | 3 Use of this source code is governed by a BSD-style license that can be |
4 found in the LICENSE file. | 4 found in the LICENSE file. |
5 --> | 5 --> |
6 | 6 |
7 <!-- Styled link to a builder composed of the version and architecture. --> | 7 <!-- |
8 <polymer-element name="ct-builder" attributes="builderName"> | 8 Styled link to a builder composed of the version and architecture, or the |
| 9 builder name if the builder is unknown. If an array is passed to |steps|, the |
| 10 link will show the builder name and architecture followed by the steps instead. |
| 11 --> |
| 12 <polymer-element name="ct-builder" attributes="builderName steps"> |
9 <template> | 13 <template> |
10 <style> | 14 <style> |
11 a { | 15 a { |
12 border: 1px solid gray; | 16 border: 1px solid gray; |
13 color: black; | 17 color: black; |
14 display: inline-block; | 18 display: inline-block; |
15 font-size: 0px; | 19 font-size: 0px; |
16 margin-bottom: 2px; | 20 margin-bottom: 2px; |
17 padding: 1px; | 21 padding: 1px; |
18 text-decoration: none; | 22 text-decoration: none; |
19 } | 23 } |
20 | 24 |
21 span { | 25 span { |
22 font-size: 11px; | 26 font-size: 11px; |
23 padding: 0 2px; | 27 padding: 0 2px; |
24 } | 28 } |
25 | 29 |
26 .version { | 30 .version { |
27 background-color: #555; | 31 background-color: #555; |
28 color: white; | 32 color: white; |
| 33 } |
| 34 |
| 35 .version:not(.architecture) { |
29 text-transform: uppercase; | 36 text-transform: uppercase; |
30 } | 37 } |
| 38 |
| 39 .details { |
| 40 padding-left: 3px; |
| 41 } |
31 </style> | 42 </style> |
32 <a href="{{ builderName|builderURL }}"> | 43 <a href="{{ builderName|builderURL }}"> |
33 <template if="{{ configuration }}"> | 44 <template if="{{ configuration }}"> |
34 <span class="version">{{ configuration.version }}</span> | 45 <span class="version">{{ configuration.version }}</span> |
35 <template if="{{ configuration.is64bit }}"> | 46 <template if="{{ configuration.is64bit }}"> |
36 <span class="architecture">64-bit</span> | 47 <template if="{{ stepList }}"> |
| 48 <span class="version architecture">64-bit</span> |
| 49 </template> |
| 50 <template if="{{ !stepList }}"> |
| 51 <span>64-bit</span> |
| 52 </template> |
37 </template> | 53 </template> |
38 </template> | 54 </template> |
39 <template if="{{ !configuration }}"> | 55 <template if="{{ !configuration }}"> |
40 <span class="version">{{ builderName }}</span> | 56 <span class="version">{{ builderName }}</span> |
41 </template> | 57 </template> |
| 58 <template if="{{ stepList }}"> |
| 59 <span class="details">{{ stepList }}</span> |
| 60 </template> |
42 </a> | 61 </a> |
43 </template> | 62 </template> |
44 <script> | 63 <script> |
45 Polymer({ | 64 Polymer({ |
| 65 steps: [], |
| 66 |
46 ready: function() { | 67 ready: function() { |
47 this.configuration = config.builders[this.builderName]; | 68 this.configuration = config.builders[this.builderName]; |
48 }, | 69 }, |
49 | 70 |
| 71 stepsChanged: function() { |
| 72 this.stepList = this.steps.join(', '); |
| 73 }, |
| 74 |
50 builderURL: function() { | 75 builderURL: function() { |
51 return config.waterfallURL + '?builder=' + | 76 return config.waterfallURL + '?builder=' + |
52 encodeURIComponent(this.builderName); | 77 encodeURIComponent(this.builderName); |
53 }, | 78 }, |
54 }); | 79 }); |
55 </script> | 80 </script> |
56 </polymer-element> | 81 </polymer-element> |
OLD | NEW |