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