Project

General

Profile

Download (14.2 KB) Statistics
| Branch: | Tag: | Revision:
1
// Global variable overrides. Must be declared before importing Valo.
2

    
3
// Defines the plaintext font size, weight and family. Font size affects general component sizing.
4
$v-font-size: 14px; // default in valo is 16px
5
//$v-font-weight: 300;
6
$v-font-family: "Open Sans", sans-serif;
7

    
8
// Defines the border used by all components.
9
//$v-border: 1px solid (v-shade 0.7);
10
//$v-border-radius: 4px;
11

    
12
// Affects the color of some component elements, e.g Button, Panel title, etc
13
//$v-background-color: hsl(210, 0%, 98%);
14
// Affects the color of content areas, e.g  Panel and Window content, TextField input etc
15
//$v-app-background-color: $v-background-color;
16

    
17
// Affects the visual appearance of all component
18
//$v-gradient: v-linear 8%;
19
//$v-bevel-depth: 30%;
20
//$v-shadow-opacity: 5%;
21

    
22
// Defines colors for indicating status (focus, success, failure)
23
//$v-focus-color: valo-focus-color(); // Calculates a suitable color automatically
24
//$v-friendly-color: #2c9720;
25
//$v-error-indicator-color: #ed473b;
26

    
27
// ================== DARK ================ //
28

    
29
// $v-app-loading-text: "Dark Valo";
30
/*
31
*/
32
$v-background-color: #444d50;
33
$v-focus-color: #07a9ca;
34
$v-focus-style: 0 0 3px 2px $v-focus-color;
35
$v-bevel-depth: 40%;
36
$v-gradient: v-linear 12%;
37
$v-border-radius: 10px;
38
$v-font-family: Roboto, sans-serif;
39
$v-font-weight: 400;
40
$v-font-weight--header: 400;
41
$v-bevel: inset 0 1px 2px v-tint, inset 0 0 1px (v-tint 0.1);
42
$v-shadow: 0 0 0 3px rgba(0,0,0,0.32), 0 1px 0 3px rgba(255,255,255,0.14);
43
$v-textfield-bevel: inset 0 2px 2px v-shade;
44
$v-textfield-shadow: $v-shadow;
45
$v-unit-size: 40px;
46
$v-overlay-shadow: 0 0 0 3px (v-shade 8), 0 5px 10px (v-shade 4);
47
$v-component-group-spacing: 6px;
48

    
49
// ========================================== //
50

    
51
// For more information, see: https://vaadin.com/book/-/page/themes.valo.html
52
// Example variants can be copy/pasted from https://vaadin.com/wiki/-/wiki/Main/Valo+Examples
53

    
54
@import "../valo/valo.scss";
55

    
56
@import "valo-fix.scss";
57

    
58
@import "custom-fields.scss";
59

    
60

    
61
// ========================================== //
62

    
63
// import custom font icons TODO rename font
64
@include v-font(IcoMoon, "../../../../../fonts/icomoon");
65

    
66
.IcoMoon {
67
   font-family: IcoMoon;
68
   font-style: normal;
69
   font-weight: normal;
70
   -webkit-font-smoothing: antialiased;
71
   -moz-osx-font-smoothing: grayscale;
72
   display: inline-block;
73
   text-align: center;
74
}
75

    
76
// ========================================== //
77
// Status colors for the redistration
78
// 
79
// change-color cant be used since this is not fully supported by the vaadin sass-compiler
80
// see https://github.com/vaadin/sass-compiler/issues/147
81
$status-reference-color:$v-focus-color;
82
$hue-offset: hue($status-reference-color);
83
$plain-red: adjust-color($status-reference-color, $hue: -1 * $hue-offset);  // red as 0 degree hue
84
$status-rejected-color: adjust-color($plain-red, $hue: 0deg);
85
$status-curation-color: adjust-color($plain-red, $hue: 35deg); 
86
$status-preparation-color: adjust-color($plain-red, $hue: 60deg); 
87
$status-published-color: adjust-color($plain-red, $hue: 105deg); 
88
$status-ready-color: adjust-color($plain-red, $hue: 180deg);
89
// ========================================== //
90

    
91

    
92
@mixin edit-valo {
93
  @include valo;
94

    
95
  // Insert your own theme rules here
96
  
97
  // --- AbstractPageView --- // 
98
  #header {
99
    text-align: center;
100
    margin: round($v-layout-spacing-vertical/2); // corresponds to layout spacing
101
    font-size: $v-font-size--huge; // corresponds to valo style huge (26px)
102
  }
103

    
104
  #subheader {
105
    text-align: center;
106
    margin: round($v-layout-spacing-vertical/2);
107
    font-size: $v-font-size; // valo default font size (16px)
108
  }
109
  // ------------------- // 
110
  
111
  .logo_giant {
112
    font-size: 400%;
113
   }
114
   
115
   .v-button-giant {
116
     font-size: 32px;
117
     .v-icon {
118
       font-size: 64px;
119
       line-height: 50px;
120
     }
121
   }
122
   
123
   .v-button-center-h {
124
    // requires width to be defined 
125
    display: block;
126
    margin: 0 auto;
127
   }
128

    
129
   .v-label .caption {
130
       font-size: $v-font-size--small;
131
   }
132
   
133
   // label with caption and icon horizonatally aligned
134
   // to apply this to a Vaadin Label set 'label-nowrap'
135
   // as style
136

    
137
    .v-caption-label-nowrap, .v-label-label-nowrap {
138
        display: inline;
139
    }
140
    .v-label-label-nowrap {
141
//         margin-left: 8px; // TODO use sass variable here
142
//         vertical-align: baseline;
143
        .v-icon {
144
           display : inline;
145
        }
146
    } 
147

    
148
   .friendly-foreground {
149
        color: $v-friendly-color;
150
    }
151
   
152
   .v-button .button-badge {
153
         @include valo-badge-style($states: inactive, $background-color: lighten($v-background-color, 10%), $active-color: $v-focus-color);
154
    } 
155
   
156
   .dashboard-actions {
157
      margin: 0 10%;
158
    
159
      .dashboard-action-2 {
160
        width: 50%;
161
        .v-label {
162
            white-space: normal;
163
        }
164
      }
165
      .dashboard-action-3 {
166
        width: 33%;
167
        .v-label {
168
            white-space: normal;
169
        }
170
      }
171
      &[width-range~="-650px"] {
172
          .dashboard-action-2, .dashboard-action-3 {
173
              width: 100%;
174
          }
175
      }
176
    }
177
    
178
    // ==== styles in eu.etaxonomy.cdm.vaadin.theme.EditValoTheme ==== // 
179
    
180
    // style for buttons highlighted as being active
181
    .v-button-highlite {
182
        color: $v-focus-color;
183
    }
184
    
185
    .v-panel-padding-left .v-panel-content {
186
        padding-left: round($v-unit-size / 4);
187
    }
188

    
189
    // ===== workflow ==== // 
190
    
191
    #workflow {
192
        .registration-list {
193
                .v-gridlayout-slot {
194
                    border-bottom: valo-border($border: $v-border, $color: $v-background-color, $strength: 1.4);
195
                }
196
            }
197
         .v-gridlayout-registration-list-item {
198
            padding: 0 round($v-unit-size / 4);
199
         }
200
    }
201
    
202
    $workflow-icon-size: 110px;
203
    // can not be set per css as this need to set as property to the component in vaadin
204
    $workflow-timeline-bar-height: 10px; 
205
    // the fator by which the caption should be smaller than the circe
206
    $workflow-caption-shrink: 0.64; 
207

    
208
    $workflow-icon-margin-h: $workflow-icon-size / 5;
209
    $workflow-icon-left: $workflow-icon-margin-h / 2;
210
    $workflow-caption-font-size: $workflow-icon-size * $workflow-caption-shrink;        
211
    
212
    .workflow {
213
        .steps {
214
            z-index: 10;
215
            
216
            .v-csslayout {
217
                width: $workflow-icon-size + 2 * $workflow-icon-margin-h;
218
                .v-label {
219
                    display: block;
220
                    text-align: center;
221
                }
222
            }
223
         }
224
         .timeline {
225
            display: block;
226
            position: relative;
227
            top: ($workflow-icon-size / 2) + $workflow-timeline-bar-height / 2;
228
            padding: 0 $workflow-icon-size / 2;
229
            .timeline-bar {
230
                z-index: 0;
231
                background-color: $v-font-color;
232
            }
233
        }
234
    }
235

    
236
    .workflow-item {
237
        .v-button {
238
            margin: 0 $workflow-icon-margin-h;
239
            font-size: $workflow-icon-size;
240
            height: $workflow-icon-size;
241
            width: $workflow-icon-size;
242
            line-height: $workflow-icon-size;
243
        
244
            .v-icon, .v-button-caption {
245
                position: absolute;
246
                left: $workflow-icon-left;
247
                top: 0px;
248
            }
249
            .v-button-caption {
250
                font-family: monospace;
251
                left: (($workflow-icon-size - $workflow-caption-font-size) / 2) + $workflow-icon-left; // 30px;
252
                top: -2px;
253
                color: $v-background-color;
254
                font-size: $workflow-caption-font-size; // 70px;
255
            }
256
        }
257
    }
258
    
259
   
260
   // --------------------------------------------------- //
261

    
262
    #workingset {
263
            padding: round($v-unit-size / 2);
264
            .registration-list, .registration-list-item {
265
                margin-top: round($v-unit-size / 2);
266
            }
267
        
268
            .v-panel-content {
269
                padding: 0 round($v-unit-size/3);
270
            }
271
            .registration-list .item-footer {
272
                border-bottom: valo-border($border: $v-border, $color: $v-background-color, $strength: 1.4);
273
            }
274
    }
275

    
276
    // --------------------------------------------------- //
277
    .v-caption-submitter {
278
            margin-right: round($v-unit-size / 8);
279
    }
280
        
281
    .registration-list-item {
282
        border-bottom: valo-border($border: $v-border, $color: $v-background-color, $strength: 0.7);
283
        padding-top: 4px; // avoid button group to overlap with border
284
        .v-label-registration-state {
285
            margin-right: round($v-unit-size / 4);
286
        }            
287
        
288
    }
289

    
290
   .registration-workflow-item {
291
       border: valo-border($border: $v-border, $color: $v-background-color, $strength: 0.7);
292
    }
293

    
294
    // tab element being part of a process ----------- //
295
    // use $v-unit-size instead of $v-font-size * 3?
296
    .workflow-step-wrap {
297
        padding-right: 10px;
298
        height: $v-font-size * 3;
299
        background-color: scale-color(lighten($v-app-background-color, 20%), $saturation: -20%);
300
        @include box-shadow(inset 0 0 5px $v-app-background-color);
301
    }
302
    .workflow-step {
303
        line-height: $v-font-size * 3;
304
    }
305
    .v-caption-workflow-step {
306
        vertical-align: top;
307
        padding: 0;
308
         .v-icon {
309
            line-height: $v-font-size * 3;
310
            font-size: $v-font-size * 3.5;
311
            padding-right: 10px;
312
            color: $v-background-color;
313
        }
314
    }
315

    
316
    .workflow-tabsheet {
317
        
318
        table.v-tabsheet-tabs, .v-tabsheet-tabs tr, .v-tabsheet-tabs tbody {
319
          width: 100%; 
320
        }
321
        
322
        .v-tabsheet-tabitemcell {
323
              width: 25%;
324
        }
325

    
326
        .v-tabsheet-tabitem {
327
            
328
            // background-color: scale-color(lighten($v-app-background-color, 20%), $saturation: -20%);
329
            // @include valo-gradient($color: $v-background-color, $gradient: $v-gradient, $fallback: null, $direction: to right);
330
            // @include box-shadow(inset 0 0 5px $v-app-background-color);
331
            // background-color: $v-font-color
332
            
333
            // border: valo-border($border: 2px solid, $color: $v-font-color, $strength: 1);
334
            
335
            background-color: scale-color(lighten($v-app-background-color, 20%), $saturation: -20%);
336
            @include box-shadow(inset 0 0 5px $v-app-background-color);
337
            border: valo-border($border: 2px solid, $color: $v-app-background-color, $strength: 1);
338
            border-color: $v-app-background-color;
339
            .v-caption {
340
                // line-height: $v-unit-size;
341
                margin: 0;
342
                padding: 0;
343
                padding-right: $v-unit-size / 2;
344
                border: 0px none;
345
            }
346
            .v-icon {
347
                line-height: $v-unit-size;
348
                font-size: $v-unit-size * 1.8;
349
                vertical-align: middle;
350
                // padding-right: $v-unit-size / 2;
351
                
352
                //color: $v-font-color;
353
                
354
                color: $v-app-background-color;
355
            }
356
        }
357
    }
358

    
359
    // =============================================== //
360
    .registration-status {
361
        display: block;
362
    }
363
    
364
   // status colors --------------------------------- //
365
    .registration-status-REJECTED {
366
        color: $status-rejected-color;
367
    }
368
    .registration-status-CURATION {
369
        color: $status-curation-color;
370
    }
371
    .registration-status-PREPARATION {
372
        color: $status-preparation-color;
373
    }
374
    .registration-status-PUBLISHED {
375
        color: $status-published-color;
376
    }
377
    .registration-status-READY {
378
        color: $status-ready-color;
379
    }
380

    
381
    .bg-status-REJECTED {
382
        background-color: $status-rejected-color;
383
    }
384
    .bg-status-CURATION {
385
        background-color: $status-curation-color;
386
    }
387
    .bg-status-PREPARATION {
388
        background-color: $status-preparation-color;
389
    }
390
    .bg-status-PUBLISHED {
391
        background-color: $status-published-color;
392
    }
393
    .bg-status-READY {
394
        background-color: $status-ready-color;
395
    }
396
    // ----------------------------------------------- //
397
    
398
    #registration-list {
399
        /* --- for the css layout --- */
400
        overflow: auto;
401
        height: 100%;
402
        padding-left: round($v-unit-size/3);
403
        padding-right: round($v-unit-size/3);
404
        
405
        border: valo-border($border: $v-border, $color: $v-background-color, $strength: 1.4);
406
        border-radius: $v-border-radius - first-number($v-border) $v-border-radius - first-number($v-border) 0 0;
407
        /* ----------------------------------------------- */
408
        
409
        // for grid rows
410
        .status-REJECTED {
411
            color: $status-rejected-color;
412
            td.registrationType, td.status {
413
                color: $status-rejected-color;
414
            }
415
        }
416
        .status-CURATION {
417
            color: $status-curation-color;
418
            td.registrationType, td.status {
419
                color: $status-curation-color;
420
            }
421
        }
422
        .status-PREPARATION {
423
            color: $status-preparation-color;
424
            td.registrationType, td.status {
425
                color: $status-preparation-color;
426
            }
427
        }
428
        .status-PUBLISHED {
429
            color: $status-published-color;
430
            td.registrationType, td.status {
431
                color: $status-published-color;
432
            }
433
        }
434
        .status-READY {
435
            color: $status-ready-color;
436
            td.registrationType, td.status {
437
                color: $status-ready-color;
438
            }
439
        }
440

    
441
    }
442
    
443
    // ---------------- custom components ----------------------- //
444
    
445
    .edit-button-group {
446
        margin-top: round($v-unit-size/10);
447
        .v-button {
448
            padding: 0 round($v-unit-size/4);
449
            height: round(2 * $v-unit-size/3 )
450
            // margin: 0 round($v-unit-size/4);
451
        }
452
        .v-label {
453
            display: inline;
454
            white-space: normal;
455
        }
456
    }
457
    
458
    // ---------- popup editor windows ---------------------------------//
459
    .v-window-top-toolbar {
460
        margin-bottom: round($v-unit-size/4);
461
        .v-component-group {
462
            float: right;
463
        }
464
    }
465

    
466
    // ---------- ---------- //
467

    
468
    .v-slot-message-item {
469
        .date-time {
470
            font-weight: lighter;
471
        }
472
        .user-name {
473
            font-weight: bold;
474
        }
475
    }
476
}
(3-3/5)