| 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 --><html><head><link href="../model/ct-builder-status.html" rel="import"> |
| 6 | 6 |
| 7 <link href="../model/ct-builder-status.html" rel="import"> | 7 <dom-module id="ct-builder-status"> |
| 8 | 8 <style> |
| 9 <polymer-element name="ct-builder-status"> | |
| 10 <template> | |
| 11 <style> | |
| 12 li > a { display: inline-block; width: 40ex; } | 9 li > a { display: inline-block; width: 40ex; } |
| 13 li > span { display: inline-block; width: 20ex;} | 10 li > span { display: inline-block; width: 20ex;} |
| 14 .groups { | 11 .groups { |
| 15 margin: 0; | 12 margin: 0; |
| 16 padding: 0; | 13 padding: 0; |
| 17 list-style: none; | 14 list-style: none; |
| 18 } | 15 } |
| 19 .groups > li { | 16 .groups > li { |
| 20 margin-bottom: 5px; | 17 margin-bottom: 5px; |
| 21 padding: 5px; | 18 padding: 5px; |
| 22 border-top: 1px solid lightgrey; | 19 border-top: 1px solid lightgrey; |
| 23 } | 20 } |
| 24 h2 { | 21 h2 { |
| 25 font-size: 100%; | 22 font-size: 100%; |
| 26 padding: 0 5px; | 23 padding: 0 5px; |
| 27 margin: 0; | 24 margin: 0; |
| 28 } | 25 } |
| 29 p { | 26 p { |
| 30 padding: 0 5px; | 27 padding: 0 5px; |
| 31 margin: 0; | 28 margin: 0; |
| 32 } | 29 } |
| 33 </style> | 30 </style> |
| 31 <template> |
| 34 | 32 |
| 35 <template if="{{ errorMessage }}"> | 33 <template is="dom-if" if="{{ errorMessage }}"> |
| 36 <h2>Failed to load and/or parse data.</h2> | 34 <h2>Failed to load and/or parse data.</h2> |
| 37 <p>{{ errorMessage }}</p> | 35 <p>{{ errorMessage }}</p> |
| 38 </template> | 36 </template> |
| 39 | 37 |
| 40 <template if="{{ groups.length && !errorMessage }}"> | 38 <template is="dom-if" if="{{computeIf(errorMessage, groups)}}"> |
| 41 <ul class="groups"> | 39 <ul class="groups"> |
| 42 <template repeat="{{ group in groups }}"> | 40 <template is="dom-repeat" items="{{groups}}" as="group"> |
| 43 <li> | 41 <li> |
| 44 <h2>{{ group.name }}</h2> | 42 <h2>{{ group.name }}</h2> |
| 45 <ul class="builds"> | 43 <ul class="builds"> |
| 46 <template repeat="{{ builder in group.builders }}"> | 44 <template is="dom-repeat" items="{{group.builders}}" as="builder"> |
| 47 <li> | 45 <li> |
| 48 <a href="{{builder.uri}}">{{ builder.name }}</a> | 46 <a href$="{{builder.uri}}">{{ builder.name }}</a> |
| 49 <template repeat="{{ repository in builder.repositories }}"> | 47 <template is="dom-repeat" items="{{builder.repositories}}" as=
"repository"> |
| 50 <span> | 48 <span> |
| 51 {{ repository.name }}: | 49 <span>{{ repository.name }}</span>: |
| 52 <template if="{{ repository.uri }}"> | 50 <template is="dom-if" if="{{ repository.uri }}"> |
| 53 <a href="{{repository.uri}}">{{ repository.revision }}</
a> | 51 <a href$="{{repository.uri}}">{{ repository.revision }}<
/a> |
| 54 </template> | 52 </template> |
| 55 <template if="{{ !repository.uri }}"> | 53 <template is="dom-if" if="{{ !repository.uri }}"> |
| 56 {{ repository.revision }} | 54 <span>{{ repository.revision }}</span> |
| 57 </template> | 55 </template> |
| 58 </span> | 56 </span> |
| 59 </template> | 57 </template> |
| 60 </li> | 58 </li> |
| 61 </template> | 59 </template> |
| 62 </ul> | 60 </ul> |
| 63 </li> | 61 </li> |
| 64 </template> | 62 </template> |
| 65 </ul> | 63 </ul> |
| 66 </template> | 64 </template> |
| 67 </template> | 65 </template> |
| 68 | |
| 69 <script> | 66 <script> |
| 70 Polymer('ct-builder-status', { | 67 Polymer({ |
| 71 ready: function() { | 68 is: 'ct-builder-status', |
| 69 ready: function () { |
| 72 this.groups = []; | 70 this.groups = []; |
| 73 this.errorMessage = ''; | 71 this.errorMessage = ''; |
| 72 }, |
| 73 computeIf: function (errorMessage, groups) { |
| 74 return groups.length && !errorMessage; |
| 74 } | 75 } |
| 75 }); | 76 }); |
| 76 </script> | 77 </script> |
| 77 </polymer-element> | 78 </dom-module> |
| OLD | NEW |