Merge "Migrate Api modules from tag_summary table to change_tag"
[lhc/web/wiklou.git] / resources / src / mediawiki.rcfilters / styles / mw.rcfilters.ui.ChangesListWrapperWidget.less
1 @import 'mediawiki.ui/variables';
2 @import 'mw.rcfilters.mixins';
3 @import 'mw.rcfilters.variables';
4
5 @keyframes fadeBlue {
6 60% {
7 border-top-color: @colorProgressive;
8 }
9
10 100% {
11 border-top-color: @colorGray12;
12 }
13 }
14
15 .mw-rcfilters-ui-changesListWrapperWidget {
16 position: relative;
17
18 &-newChanges {
19 min-height: 34px;
20 margin: 8px 0 0 0;
21 text-align: center;
22 }
23
24 &-previousChangesIndicator {
25 margin: 10px 0;
26 border-top: 2px solid @colorGray12;
27 animation: 1s ease fadeBlue;
28 }
29
30 &-results {
31 width: 35em;
32 margin: 5em auto;
33
34 &-noresult,
35 &-conflict {
36 margin-bottom: 0.5em;
37 font-weight: bold;
38 text-align: center;
39 }
40 }
41
42 // Rule needs to be specific
43 // We want the expand button to appear outside the color
44 // to match the way the general highlight background appears
45 &-enhanced-grey td:not( :nth-child( -n+2 ) ) {
46 background-color: @light-gray;
47 }
48
49 &-highlighted {
50 ul {
51 list-style: none;
52
53 li {
54 list-style: none;
55 }
56 }
57 }
58
59 .mw-changeslist-legend {
60 background-color: @background-color-base;
61 position: relative; // We want to keep the legend accessible when results are overlaid
62 z-index: 1; // Keep opacity-animated highlights from appearing on top of the legend
63 border: 1px solid @colorGray12;
64 }
65
66 .mw-changeslist-overlay {
67 position: absolute;
68 display: none;
69 width: 100%;
70 height: 100%;
71 }
72
73 &--overlaid > .mw-changeslist-overlay {
74 display: block;
75 }
76
77 // Correction for Enhanced RC
78 // This is outside the scope of the 'highlights' wrapper
79 table.mw-enhanced-rc {
80 td:last-child {
81 width: 100%;
82 }
83 }
84 }
85
86 .mw-rcfilters-ui-highlights {
87 display: none;
88 padding: 0 @margin-circle 0 0;
89 // The width is 5 circles times their diameter + individual margin
90 // and then plus the general margin
91 width: ~'calc( ( @{size-circle-result} + @{margin-circle-result} ) * 5 )';
92 // And we want to shift the entire block to the left of the li
93 position: relative;
94 // Negative left margin of width + padding
95 margin-left: ~'calc( ( @{size-circle-result} + @{margin-circle-result} ) * -5 - @{margin-circle} )';
96
97 .mw-rcfilters-ui-changesListWrapperWidget-highlighted & {
98 display: inline-block;
99 }
100
101 // This needs to be very specific, since these are
102 // position rules that should apply to all overrides
103 .mw-rcfilters-ui-changesListWrapperWidget & > div {
104 vertical-align: middle;
105 .mw-rcfilters-circle( @size-circle-result, @size-circle-result, 0 );
106 // This is to make the dots appear at the center of the
107 // text itself; it's a horrendous hack and blame JamesF for it.
108 margin-top: -2px;
109 margin-right: @margin-circle-result;
110 float: right;
111 }
112
113 &-color {
114 &-none {
115 .mw-rcfilters-circle-color( @highlight-none, true );
116 display: inline-block;
117
118 .mw-rcfilters-highlight-color-c1 &,
119 .mw-rcfilters-highlight-color-c2 &,
120 .mw-rcfilters-highlight-color-c3 &,
121 .mw-rcfilters-highlight-color-c4 &,
122 .mw-rcfilters-highlight-color-c5 & {
123 display: none;
124 }
125 }
126 .result-circle( c1 );
127 .result-circle( c2 );
128 .result-circle( c3 );
129 .result-circle( c4 );
130 .result-circle( c5 );
131 }
132 }
133
134 // One color
135 .mw-rcfilters-highlight-color-c1 {
136 .highlight-results( tint( @highlight-c1, 70% ); );
137 }
138
139 .mw-rcfilters-highlight-color-c2 {
140 .highlight-results( tint( @highlight-c2, 70% ); );
141 }
142
143 .mw-rcfilters-highlight-color-c3 {
144 .highlight-results( tint( @highlight-c3, 70% ); );
145 }
146
147 .mw-rcfilters-highlight-color-c4 {
148 .highlight-results( tint( @highlight-c4, 70% ); );
149 }
150
151 .mw-rcfilters-highlight-color-c5 {
152 .highlight-results( tint( @highlight-c5, 70% ); );
153 }
154
155 // Two colors
156 .highlight-color-mix( c1, c2 );
157 // Overriding .highlight-color-mix( c1, c3 ); to produce
158 // a custom color rather than the computed tint
159 // see https://phabricator.wikimedia.org/T161267
160 .mw-rcfilters-highlight-color-c1.mw-rcfilters-highlight-color-c3 {
161 .highlight-results( @light-green );
162 }
163 .highlight-color-mix( c1, c4 );
164 .highlight-color-mix( c1, c5 );
165 .highlight-color-mix( c2, c3 );
166 .highlight-color-mix( c2, c4 );
167 .highlight-color-mix( c2, c5 );
168 .highlight-color-mix( c3, c4 );
169 .highlight-color-mix( c3, c5 );
170 .highlight-color-mix( c4, c5 );
171
172 // Three colors
173 .highlight-color-mix( c1, c2, c3 );
174 .highlight-color-mix( c1, c2, c5 );
175 .highlight-color-mix( c1, c2, c4 );
176 .highlight-color-mix( c1, c3, c4 );
177 .highlight-color-mix( c1, c3, c5 );
178 .highlight-color-mix( c1, c4, c5 );
179 .highlight-color-mix( c2, c3, c4 );
180 .highlight-color-mix( c2, c3, c5 );
181 .highlight-color-mix( c2, c4, c5 );
182 .highlight-color-mix( c3, c4, c5 );
183
184 // Four colors
185 .highlight-color-mix( c1, c2, c3, c4 );
186 .highlight-color-mix( c1, c2, c3, c5 );
187 .highlight-color-mix( c1, c2, c4, c5 );
188 .highlight-color-mix( c1, c3, c4, c5 );
189 .highlight-color-mix( c2, c3, c4, c5 );
190
191 // Five colors
192 .mw-rcfilters-highlight-color-c1.mw-rcfilters-highlight-color-c2.mw-rcfilters-highlight-color-c3.mw-rcfilters-highlight-color-c4.mw-rcfilters-highlight-color-c5 {
193 .highlight-results( tint( mix( @highlight-c1, mix( @highlight-c2, mix( @highlight-c3, average( @highlight-c4, @highlight-c5 ), 20% ), 20% ), 20% ), 15% ) );
194 }