4
4
< meta charset ="utf-8 ">
5
5
< title > Homu queue - {{repo_label}} {% if treeclosed %} [TREE CLOSED] {% endif %}</ title >
6
6
< style >
7
+ @keyframes barber-pole {
8
+ /* This animation is used to make the status indicator next to
9
+ pending pulls look like a barber poll. We do that with a
10
+ diagonal linear gradient. CSS does not allow us to animate a
11
+ gradient, so instead we make the indicator a little taller
12
+ than shown, and then animate the whole thing upward. */
13
+ from {
14
+ transform : translate (0 , 0 );
15
+ }
16
+ to {
17
+ /* The magic number 11.314 is sqrt(8^2 + 8^2), based on how
18
+ far vertically it takes to repeat a 45 degree gradient
19
+ that is 8 pixels long before it repeats. */
20
+ transform : translate (0 , -11.314px );
21
+ }
22
+ }
7
23
* { font-family : sans-serif; }
8
24
h1 { font-size : 20px ; }
9
25
h2 { font-size : 16px ; }
10
26
p { font-size : 15px ; }
11
27
12
28
table { border-collapse : collapse; }
13
- td , th { border : 2 px solid white ; padding : 5px ; font-size : 13px ; }
14
- tr : nth-child (even) { background : # ddd ; }
29
+ td , th { border-bottom : 1 px solid # ddd ; padding : 5px 6 px ; font-size : 13px ; text-align : left; vertical-align : baseline ; }
30
+ tr : nth-child (even) { background : # eee ; }
15
31
32
+ a {
33
+ text-decoration : none;
34
+ }
35
+ a : hover {
36
+ text-decoration : underline;
37
+ }
38
+
39
+ .status {
40
+ position : relative;
41
+ overflow : hidden;
42
+ padding-left : 16px ;
43
+ white-space : nowrap;
44
+ }
45
+ .status : before {
46
+ content : " " ;
47
+ position : absolute;
48
+ display : block;
49
+ left : 6px ;
50
+ width : 6px ;
51
+ top : 0 ;
52
+ bottom : 0 ;
53
+ }
16
54
.treeclosed { color : grey }
17
- .success { background-color : # 80C0F0 ; }
18
- .failure , .error { background-color : # F08080 ; }
19
- .pending { background-color : # F0DE57 ; }
20
- .approved { background-color : # 85DB7B ; }
55
+ .success : before { background-color : # 80C0F0 ; }
56
+ .failure : before , .error ::before { background-color : # F08080 ; }
57
+ .approved : before { background-color : # 85DB7B ; }
58
+ .pending : before {
59
+ /* Give the pending state a little bit of animation to make it
60
+ clear that these items are the ones that are being tested
61
+ right now. */
62
+ bottom : -20px ;
63
+ background-color : # F0DE57 ;
64
+ background-image : repeating-linear-gradient (135deg , # F0DE57 0 , # F0DE57 4px , # FBEE97 4px , # FBEE97 8px , # F0DE57 0 );
65
+ animation : barber-pole 1s linear infinite;
66
+ }
67
+ .number { text-align : right; }
68
+
69
+ /* Make a non-zero priority stand out by making 0 normal and gray,
70
+ and non-zero bold and black. */
71
+ .priority { text-align : right; font-weight : bold; }
72
+ .priority [data-priority = "0" ] { font-weight : normal; color : # 999 ; }
21
73
22
- .yes , .rollup_always { color : green; }
23
- .no , .rollup_never { color : red; }
74
+ .yes , .rollup_always , .no , .rollup_never {
75
+ white-space : nowrap;
76
+ }
77
+ .yes : before , .rollup_always : before , .no : before , .rollup_never : before {
78
+ content : "" ;
79
+ display : inline-block;
80
+ width : 0.4em ;
81
+ height : 0.4em ;
82
+ border-radius : 50% 50% ;
83
+ margin-right : 0.3em ;
84
+ border : 1px solid transparent;
85
+ }
86
+ .yes , .rollup_always { color : # 004200 ; }
87
+ .yes : before , .rollup_always : before {
88
+ background : # 01ce01 ;
89
+ border-color : # 016c01 ;
90
+ }
91
+ .no , .rollup_never { color : # 660000 ; }
92
+ .no : before , .rollup_never : before {
93
+ background : # f97070 ;
94
+ border-color : # ab0a0a ;
95
+ }
24
96
25
97
.sorting_asc : after { content : " ▲" ; }
26
98
.sorting_desc : after { content : " ▼" ; }
@@ -64,7 +136,7 @@ <h1>Homu queue - {% if repo_url %}<a href="{{repo_url}}" target="_blank">{{repo_
64
136
< p >
65
137
{{ total }} total, {{ approved }} approved, {{ rolled_up }} rolled up, {{ failed }} failed
66
138
/
67
- < label > < input type ="checkbox " id ="auto_reload "> Auto reload</ label >
139
+ < label > < input type ="checkbox " id ="auto_reload "> Auto reload</ label >
68
140
/
69
141
< input type ="search " id ="search " placeholder ="Search ">
70
142
< button type ="button " id ="reset "> Reset</ button >
@@ -79,13 +151,13 @@ <h1>Homu queue - {% if repo_url %}<a href="{{repo_url}}" target="_blank">{{repo_
79
151
< th > Repository</ th >
80
152
{% endif %}
81
153
< th > #</ th >
82
- < th > Status</ th >
154
+ < th class =" status " > Status</ th >
83
155
< th > Mergeable</ th >
84
156
< th > Title</ th >
85
157
< th > Head ref</ th >
86
158
< th > Assignee</ th >
87
159
< th > Approved by</ th >
88
- < th > Priority</ th >
160
+ < th class =" priority " > Priority</ th >
89
161
< th > Rollup</ th >
90
162
</ tr >
91
163
</ thead >
@@ -99,7 +171,7 @@ <h1>Homu queue - {% if repo_url %}<a href="{{repo_url}}" target="_blank">{{repo_
99
171
< td > < a href ="{{state.repo_url}} "> {{state.repo_label}}</ a > </ td >
100
172
{% endif %}
101
173
< td > < a href ="{{state.url}} "> {{state.num}}</ a > </ td >
102
- < td class ="{{state.status}} ">
174
+ < td class ="status {{state.status}} ">
103
175
{% if state.status == "pending" or state.status == "failure" or state.status == "success" %}
104
176
< a href ="../results/{{state.repo_label}}/{{state.num}} "> {{state.status}}{{state.status_ext}}</ a >
105
177
{% else %}
@@ -111,7 +183,7 @@ <h1>Homu queue - {% if repo_url %}<a href="{{repo_url}}" target="_blank">{{repo_
111
183
< td > {{state.head_ref}}</ td >
112
184
< td > {{state.assignee}}</ td >
113
185
< td > {{state.approved_by}}</ td >
114
- < td > {{state.priority}}</ td >
186
+ < td class =" priority " data-priority =" {{state.priority}} " > {{state.priority}}</ td >
115
187
< td class ="rollup_{{state.rollup}} "> {{state.rollup}}</ td >
116
188
</ tr >
117
189
{% endfor %}
0 commit comments