1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 | @type : 'element';
|
15 | @element : 'loader';
|
16 |
|
17 | @import (multiple) '../../theme.config';
|
18 |
|
19 |
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 | .ui.loader {
|
26 | display: none;
|
27 | position: absolute;
|
28 | top: @loaderTopOffset;
|
29 | left: @loaderLeftOffset;
|
30 | margin: 0;
|
31 | text-align: center;
|
32 | z-index: 1000;
|
33 | transform: translateX(-50%) translateY(-50%);
|
34 | }
|
35 |
|
36 |
|
37 | .ui.loader:before {
|
38 | position: absolute;
|
39 | content: '';
|
40 | top: 0;
|
41 | left: 50%;
|
42 | width: 100%;
|
43 | height: 100%;
|
44 |
|
45 | border-radius: @circularRadius;
|
46 | border: @loaderLineWidth solid @loaderFillColor;
|
47 | }
|
48 |
|
49 |
|
50 | .ui.loader:after {
|
51 | position: absolute;
|
52 | content: '';
|
53 | top: 0;
|
54 | left: 50%;
|
55 | width: 100%;
|
56 | height: 100%;
|
57 |
|
58 | animation: loader @loaderSpeed infinite linear;
|
59 | border: @loaderLineWidth solid @shapeBorderColor;
|
60 | border-radius: @circularRadius;
|
61 |
|
62 | box-shadow: 0 0 0 1px transparent;
|
63 | }
|
64 |
|
65 | & when (@variationLoaderSpeeds) {
|
66 |
|
67 |
|
68 | .ui.fast.loading.loading:after,
|
69 | .ui.fast.loading.loading .input > i.icon:after,
|
70 | .ui.fast.loading.loading > i.icon:after,
|
71 | .ui.fast.loader:after {
|
72 | animation-duration: @loaderSpeedFast;
|
73 | }
|
74 |
|
75 | .ui.slow.loading.loading:after,
|
76 | .ui.slow.loading.loading .input > i.icon:after,
|
77 | .ui.slow.loading.loading > i.icon:after,
|
78 | .ui.slow.loader:after {
|
79 | animation-duration: @loaderSpeedSlow;
|
80 | }
|
81 | }
|
82 |
|
83 |
|
84 | @keyframes loader {
|
85 | 100% {
|
86 | transform: rotate(360deg);
|
87 | }
|
88 | }
|
89 |
|
90 |
|
91 |
|
92 |
|
93 |
|
94 |
|
95 | .ui.dimmer > .loader {
|
96 | display: block;
|
97 | }
|
98 |
|
99 |
|
100 | .ui.dimmer > .ui.loader {
|
101 | color: @invertedLoaderTextColor;
|
102 | }
|
103 | .ui.dimmer > .ui.loader:not(.elastic):before {
|
104 | border-color: @invertedLoaderFillColor;
|
105 | }
|
106 |
|
107 |
|
108 | .ui.inverted.dimmer > .ui.loader {
|
109 | color: @loaderTextColor;
|
110 | }
|
111 | .ui.inverted.dimmer > .ui.loader:not(.elastic):before {
|
112 | border-color: @loaderFillColor;
|
113 | }
|
114 |
|
115 |
|
116 |
|
117 |
|
118 |
|
119 | & when (@variationLoaderText) {
|
120 | |
121 |
|
122 |
|
123 |
|
124 | .ui.ui.ui.ui.text.loader {
|
125 | width: auto;
|
126 | height: auto;
|
127 | text-align: center;
|
128 | font-style: normal;
|
129 | }
|
130 | }
|
131 |
|
132 |
|
133 |
|
134 |
|
135 |
|
136 | & when (@variationLoaderIndeterminate) {
|
137 | .ui.indeterminate.loader:after {
|
138 | animation-direction: @indeterminateDirection;
|
139 | animation-duration: @indeterminateSpeed;
|
140 | }
|
141 | }
|
142 |
|
143 | .ui.loader.active,
|
144 | .ui.loader.visible {
|
145 | display: block;
|
146 | }
|
147 | .ui.loader.disabled,
|
148 | .ui.loader.hidden {
|
149 | display: none;
|
150 | }
|
151 |
|
152 |
|
153 |
|
154 |
|
155 |
|
156 |
|
157 |
|
158 |
|
159 |
|
160 |
|
161 | .ui.loader {
|
162 | width: @medium;
|
163 | height: @medium;
|
164 | font-size: @mediumFontSize;
|
165 | }
|
166 | .ui.loader:before,
|
167 | .ui.loader:after {
|
168 | width: @medium;
|
169 | height: @medium;
|
170 | margin: @mediumOffset;
|
171 | }
|
172 | & when (@variationLoaderText) {
|
173 | .ui.text.loader {
|
174 | min-width: @medium;
|
175 | padding-top: (@medium + @textDistance);
|
176 | }
|
177 | }
|
178 | & when not (@variationLoaderSizes = false) {
|
179 | each(@variationLoaderSizes, {
|
180 | @o: @{value}Offset;
|
181 | @f: @{value}FontSize;
|
182 | @s: @@value;
|
183 | .ui.@{value}.loader {
|
184 | width: @s;
|
185 | height: @s;
|
186 | font-size: @@f;
|
187 | }
|
188 | .ui.@{value}.loader:before,
|
189 | .ui.@{value}.loader:after {
|
190 | width: @s;
|
191 | height: @s;
|
192 | margin: @@o;
|
193 | }
|
194 | & when (@variationLoaderText) {
|
195 | .ui.@{value}.text.loader {
|
196 | min-width: @s;
|
197 | padding-top: (@s + @textDistance);
|
198 | }
|
199 | }
|
200 | })
|
201 | }
|
202 |
|
203 |
|
204 |
|
205 |
|
206 |
|
207 | each(@colors, {
|
208 | @color: replace(@key, '@', '');
|
209 | @c: @colors[@@color][color];
|
210 | @l: @colors[@@color][light];
|
211 |
|
212 | .ui.@{color}.elastic.loader.loader:before,
|
213 | .ui.@{color}.basic.elastic.loading.button:before,
|
214 | .ui.@{color}.basic.elastic.loading.button:after,
|
215 | .ui.@{color}.elastic.loading.loading.loading:not(.segment):before,
|
216 | .ui.@{color}.elastic.loading.loading.loading .input > i.icon:before,
|
217 | .ui.@{color}.elastic.loading.loading.loading.loading > i.icon:before,
|
218 | .ui.@{color}.loading.loading.loading.loading:not(.usual):not(.button):after,
|
219 | .ui.@{color}.loading.loading.loading.loading .input > i.icon:after,
|
220 | .ui.@{color}.loading.loading.loading.loading > i.icon:after,
|
221 | .ui.@{color}.loader.loader.loader:after {
|
222 | color: @c;
|
223 | }
|
224 | .ui.inverted.@{color}.elastic.loader:before,
|
225 | .ui.inverted.@{color}.elastic.loading.loading.loading:not(.segment):before,
|
226 | .ui.inverted.@{color}.elastic.loading.loading.loading .input > i.icon:before,
|
227 | .ui.inverted.@{color}.elastic.loading.loading.loading > i.icon:before,
|
228 | .ui.inverted.@{color}.loading.loading.loading.loading:not(.usual):after,
|
229 | .ui.inverted.@{color}.loading.loading.loading.loading .input > i.icon:after,
|
230 | .ui.inverted.@{color}.loading.loading.loading.loading > i.icon:after,
|
231 | .ui.inverted.@{color}.loader.loader.loader:after {
|
232 | color: @l;
|
233 | }
|
234 | })
|
235 |
|
236 | .ui.elastic.loader.loader:before,
|
237 | .ui.elastic.loading.loading.loading:before,
|
238 | .ui.elastic.loading.loading.loading .input > i.icon:before,
|
239 | .ui.elastic.loading.loading.loading > i.icon:before,
|
240 | .ui.loading.loading.loading.loading:not(.usual):after,
|
241 | .ui.loading.loading.loading.loading .input > i.icon:after,
|
242 | .ui.loading.loading.loading.loading > i.icon:after,
|
243 | .ui.loader.loader.loader:after {
|
244 | border-color: currentColor;
|
245 | }
|
246 | .ui.elastic.loading.loading.loading.loading.button:not(.inverted):not(.basic):before {
|
247 | color: @invertedLoaderLineColor;
|
248 | }
|
249 | .ui.elastic.basic.loading.button:before,
|
250 | .ui.elastic.basic.loading.button:after {
|
251 | color: @loaderLineColor;
|
252 | }
|
253 | .ui.double.loading.loading.loading.loading.button:after {
|
254 | border-bottom-color: currentColor;
|
255 | }
|
256 |
|
257 | & when (@variationLoaderInline) {
|
258 | |
259 |
|
260 |
|
261 |
|
262 | .ui.inline.loader {
|
263 | position: relative;
|
264 | vertical-align: @inlineVerticalAlign;
|
265 | margin: @inlineMargin;
|
266 | left: 0;
|
267 | top: 0;
|
268 | transform: none;
|
269 | }
|
270 |
|
271 | .ui.inline.loader.active,
|
272 | .ui.inline.loader.visible {
|
273 | display: inline-block;
|
274 | }
|
275 |
|
276 |
|
277 | .ui.centered.inline.loader.active,
|
278 | .ui.centered.inline.loader.visible {
|
279 | display: block;
|
280 | margin-left: auto;
|
281 | margin-right: auto;
|
282 | }
|
283 | }
|
284 |
|
285 | .ui.loading.loading.loading.loading.loading.loading:after,
|
286 | .ui.loading.loading.loading.loading.loading.loading .input > i.icon:after,
|
287 | .ui.loading.loading.loading.loading.loading.loading > i.icon:after,
|
288 | .ui.loader.loader.loader.loader.loader:after {
|
289 | border-left-color:transparent;
|
290 | border-right-color:transparent;
|
291 | }
|
292 | .ui.loading.loading.loading.loading.loading.loading.loading:not(.double):after,
|
293 | .ui.loading.loading.loading.loading.loading.loading.loading:not(.double) .input > i.icon:after,
|
294 | .ui.loading.loading.loading.loading.loading.loading.loading:not(.double) > i.icon:after,
|
295 | .ui.loader.loader.loader.loader.loader.loader:not(.double):after {
|
296 | border-bottom-color: transparent;
|
297 | }
|
298 | .ui.loading.loading.loading.loading.loading.loading.segment:after,
|
299 | .ui.loading.loading.loading.loading.loading.loading.form:after {
|
300 | border-left-color:@loaderFillColor;
|
301 | border-right-color:@loaderFillColor;
|
302 | }
|
303 | .ui.loading.loading.loading.loading.loading.loading.segment:not(.double):after,
|
304 | .ui.loading.loading.loading.loading.loading.loading.form:not(.double):after {
|
305 | border-bottom-color: @loaderFillColor;
|
306 | }
|
307 |
|
308 | & when (@variationLoaderElastic) {
|
309 | |
310 |
|
311 |
|
312 |
|
313 | .ui.dimmer > .ui.elastic.loader {
|
314 | color: @invertedLoaderLineColor;
|
315 | }
|
316 | .ui.inverted.dimmer > .ui.elastic.loader {
|
317 | color: @loaderLineColor;
|
318 | }
|
319 | .ui.elastic.loading.loading:not(.form):not(.segment):after,
|
320 | .ui.elastic.loading.loading .input > i.icon:after,
|
321 | .ui.elastic.loading.loading > i.icon:after,
|
322 | .ui.elastic.loader.loader:after {
|
323 | animation: loader 1s infinite cubic-bezier(.27, 1.05, .92, .61);
|
324 | animation-delay: 0.3s;
|
325 | }
|
326 | .ui.elastic.loading.loading.loading:not(.form):not(.segment):before,
|
327 | .ui.elastic.loading.loading.loading .input > i.icon:before,
|
328 | .ui.elastic.loading.loading.loading > i.icon:before,
|
329 | .ui.elastic.loader.loader:before {
|
330 | animation: elastic-loader 1s infinite cubic-bezier(.27, 1.05, .92, .61);
|
331 | -moz-animation: currentcolor-elastic-loader 1s infinite cubic-bezier(.27, 1.05, .92, .61);
|
332 | border-right-color: transparent;
|
333 | }
|
334 | & when (@variationLoaderInline) {
|
335 | .ui.elastic.inline.loader:empty {
|
336 | animation: loader 8s infinite linear;
|
337 | }
|
338 | }
|
339 | & when (@variationLoaderSpeeds) {
|
340 | .ui.slow.elastic.loading.loading:not(.form):not(.segment):after,
|
341 | .ui.slow.elastic.loading.loading .input > i.icon:after,
|
342 | .ui.slow.elastic.loading.loading > i.icon:after,
|
343 | .ui.slow.elastic.loader.loader:after {
|
344 | animation-duration: 1.5s;
|
345 | animation-delay: 0.45s;
|
346 | }
|
347 | .ui.slow.elastic.loading.loading.loading:not(.form):not(.segment):before,
|
348 | .ui.slow.elastic.loading.loading.loading .input > i.icon:before,
|
349 | .ui.slow.elastic.loading.loading.loading > i.icon:before,
|
350 | .ui.slow.elastic.loader.loader:before {
|
351 | animation-duration: 1.5s;
|
352 | }
|
353 | .ui.fast.elastic.loading.loading:not(.form):not(.segment):after,
|
354 | .ui.fast.elastic.loading.loading .input > i.icon:after,
|
355 | .ui.fast.elastic.loading.loading > i.icon:after,
|
356 | .ui.fast.elastic.loader.loader:after {
|
357 | animation-duration: 0.66s;
|
358 | animation-delay: 0.20s;
|
359 | }
|
360 | .ui.fast.elastic.loading.loading.loading:not(.form):not(.segment):before,
|
361 | .ui.fast.elastic.loading.loading.loading .input > i.icon:before,
|
362 | .ui.fast.elastic.loading.loading.loading > i.icon:before,
|
363 | .ui.fast.elastic.loader.loader:before {
|
364 | animation-duration: 0.66s;
|
365 | }
|
366 | }
|
367 | @keyframes elastic-loader {
|
368 | 0%, 1% {
|
369 | border-left-color: transparent;
|
370 | border-bottom-color: transparent
|
371 | }
|
372 | 1.1%, 50% {
|
373 | border-left-color: inherit;
|
374 | }
|
375 | 10%, 35.1%{
|
376 | border-bottom-color: transparent;
|
377 | }
|
378 | 10.1%, 35%{
|
379 | border-bottom-color: inherit;
|
380 | }
|
381 | 50.1%{
|
382 | border-left-color: transparent;
|
383 | }
|
384 | 100% {
|
385 | border-left-color: transparent;
|
386 | border-bottom-color: transparent;
|
387 | transform: rotate(360deg);
|
388 | }
|
389 | }
|
390 |
|
391 | @keyframes currentcolor-elastic-loader {
|
392 | 0%, 1% {
|
393 | border-left-color: transparent;
|
394 | border-bottom-color: transparent
|
395 | }
|
396 | 1.1%, 50% {
|
397 | border-left-color: currentColor;
|
398 | }
|
399 | 10%, 35.1%{
|
400 | border-bottom-color: transparent;
|
401 | }
|
402 | 10.1%, 35%{
|
403 | border-bottom-color: currentColor;
|
404 | }
|
405 | 50.1%{
|
406 | border-left-color: transparent;
|
407 | }
|
408 | 100% {
|
409 | border-left-color: transparent;
|
410 | border-bottom-color: transparent;
|
411 | transform: rotate(360deg);
|
412 | }
|
413 | }
|
414 | }
|
415 |
|
416 | .loadUIOverrides();
|