@ihk-gfi/lux-components-theme 11.13.0 → 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +15 -0
  2. package/package.json +7 -7
  3. package/prebuilt-themes/luxtheme-authentic-min.css +1 -0
  4. package/prebuilt-themes/luxtheme-authentic-min.css.map +1 -0
  5. package/prebuilt-themes/{luxtheme-orange.css → luxtheme-authentic.css} +6922 -4856
  6. package/prebuilt-themes/luxtheme-authentic.css.map +1 -0
  7. package/prebuilt-themes/luxtheme-blue-min.css +1 -1
  8. package/prebuilt-themes/luxtheme-blue-min.css.map +1 -1
  9. package/prebuilt-themes/luxtheme-blue.css +4624 -3171
  10. package/prebuilt-themes/luxtheme-blue.css.map +1 -1
  11. package/prebuilt-themes/luxtheme-green-min.css +1 -1
  12. package/prebuilt-themes/luxtheme-green-min.css.map +1 -1
  13. package/prebuilt-themes/luxtheme-green.css +4655 -3196
  14. package/prebuilt-themes/luxtheme-green.css.map +1 -1
  15. package/src/authentic/_custom.scss +873 -0
  16. package/src/authentic/_luxcommon.scss +128 -0
  17. package/src/authentic/_luxpalette.scss +106 -0
  18. package/src/authentic/luxtheme.scss +103 -0
  19. package/src/base/_luxcommon.scss +98 -0
  20. package/src/base/_luxcomponents.scss +521 -167
  21. package/src/base/_luxelevations.scss +49 -0
  22. package/src/base/_luxfocus.scss +220 -102
  23. package/src/base/_luxpalette.scss +9 -0
  24. package/src/base/_luxstyles.scss +162 -112
  25. package/src/base/_luxtheme.scss +10 -6
  26. package/src/base/components/_luxAppHeaderAc.scss +140 -0
  27. package/src/base/components/_luxFormControlWrapper.scss +173 -0
  28. package/src/base/components/_luxFormControlsAuthentic.scss +279 -0
  29. package/src/base/components/_luxLinkPlain.scss +56 -0
  30. package/src/base/components/_luxMasterDetailAc.scss +193 -0
  31. package/src/base/components/_luxTileAc.scss +64 -0
  32. package/src/blue/_custom.scss +101 -8
  33. package/src/blue/_luxcommon.scss +19 -2
  34. package/src/blue/_luxpalette.scss +4 -3
  35. package/src/blue/luxtheme.scss +101 -9
  36. package/src/green/_custom.scss +241 -124
  37. package/src/green/_luxcommon.scss +22 -5
  38. package/src/green/_luxpalette.scss +4 -3
  39. package/src/green/luxtheme.scss +103 -12
  40. package/src/public/global.scss +6 -10
  41. package/CHANGELOG.md +0 -84
  42. package/prebuilt-themes/luxtheme-orange-min.css +0 -1
  43. package/prebuilt-themes/luxtheme-orange-min.css.map +0 -1
  44. package/prebuilt-themes/luxtheme-orange.css.map +0 -1
  45. package/src/orange/_custom.scss +0 -66
  46. package/src/orange/_luxcommon.scss +0 -84
  47. package/src/orange/_luxpalette.scss +0 -106
  48. package/src/orange/luxtheme.scss +0 -10
@@ -1,16 +1,29 @@
1
+ @use "sass:color";
2
+ @use "sass:map";
3
+ @use "luxcommon";
4
+ @use "luxpalette";
5
+ @use "../public/global";
6
+
1
7
  /*
2
8
  Dieses Partial-SCSS dient der Verwaltung der Styles für Fokus, Hover und Selected für die LUX-Components und
3
9
  die ihnen zugrunde liegenden Material Components.
4
10
  */
5
11
 
6
12
  // Fokus
7
- $outline-dark: $outline-width $outline-style $outline-color-dark !important;
8
- $outline-bright: $outline-width $outline-style $outline-color-bright !important;
13
+ $outline-dark: luxcommon.$outline-width luxcommon.$outline-style luxcommon.$outline-color-dark !important;
14
+ $outline-bright: luxcommon.$outline-width luxcommon.$outline-style luxcommon.$outline-color-bright !important;
9
15
 
10
16
  @mixin focus-dark-mixin {
11
17
  outline: $outline-dark;
12
18
  }
13
19
 
20
+ @mixin focus-dark-mixin-inline {
21
+ // der Focus um Elemente in Panels wird mit negativen Margin nach in das Element verlegt
22
+ // damit wird er nicht mehr am Rand abgeschnitten oder verdeckt
23
+ outline: $outline-dark;
24
+ outline-offset: -(luxcommon.$outline-width);
25
+ }
26
+
14
27
  @mixin focus-bright-mixin {
15
28
  outline: $outline-bright;
16
29
  }
@@ -22,7 +35,7 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
22
35
  }
23
36
 
24
37
  @mixin lux-selected-mixin {
25
- background-color: $lux-selected-bg-color !important;
38
+ background-color: luxcommon.$lux-selected-bg-color !important;
26
39
  position: relative;
27
40
  border-radius: 4px;
28
41
 
@@ -33,11 +46,24 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
33
46
  top: 0;
34
47
  bottom: 0;
35
48
  position: absolute;
36
- border-left: 4px solid $lux-selected-border-color;
49
+ border-left: 4px solid luxcommon.$lux-selected-border-color;
37
50
  border-radius: 4px 0 0 4px;
38
51
  }
39
52
  }
40
53
 
54
+ @mixin lux-selected-mixin-ac {
55
+ background: luxcommon.$app-gradient;
56
+ background-color: #fff;
57
+ border: 1px solid map.get(luxpalette.$lux-palette-primary, 500);
58
+ box-shadow: 0 0 0 2px var(--lux-theme-primary-500) inset;
59
+ position: relative;
60
+ border-radius: 4px;
61
+ &:after {
62
+ width: 0px;
63
+ border:none;
64
+ }
65
+ }
66
+
41
67
  @mixin lux-selected-bottom-mixin {
42
68
  position: relative;
43
69
 
@@ -48,12 +74,12 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
48
74
  bottom: 0;
49
75
  right: 0;
50
76
  position: absolute;
51
- border-bottom: 4px solid $lux-selected-border-color;
77
+ border-bottom: 4px solid luxcommon.$lux-selected-border-color;
52
78
  }
53
79
  }
54
80
 
55
81
  @mixin lux-hovered-mixin {
56
- background-color: $lux-hover-color !important;
82
+ background-color: luxcommon.$lux-hover-color !important;
57
83
  border-radius: 4px;
58
84
  }
59
85
 
@@ -66,7 +92,7 @@ lux-app-header {
66
92
 
67
93
  &:hover {
68
94
  @include lux-hovered-mixin;
69
- color: $lux-hover-color-for-dark-background !important;
95
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
70
96
  }
71
97
  }
72
98
 
@@ -76,7 +102,7 @@ lux-app-header {
76
102
  }
77
103
 
78
104
  &:hover lux-icon {
79
- color: $lux-hover-color-for-dark-background !important;
105
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
80
106
  }
81
107
  }
82
108
 
@@ -86,18 +112,18 @@ lux-app-header {
86
112
  }
87
113
 
88
114
  &:hover {
89
- color: $lux-hover-color-for-dark-background !important;
115
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
90
116
 
91
117
  &.mat-accent lux-icon {
92
- color: map-get($lux-palette_accent, 500) !important;
118
+ color: map.get(luxpalette.$lux-palette_accent, 500) !important;
93
119
  }
94
120
 
95
121
  &.mat-warn lux-icon {
96
- color: map-get($lux-palette_warn, 500) !important;
122
+ color: map.get(luxpalette.$lux-palette_warn, 500) !important;
97
123
  }
98
124
 
99
125
  &.mat-primary lux-icon {
100
- color: map-get($lux-palette_primary, 500) !important;
126
+ color: map.get(luxpalette.$lux-palette_primary, 500) !important;
101
127
  }
102
128
  }
103
129
  }
@@ -119,7 +145,7 @@ lux-app-header {
119
145
  @include lux-hovered-mixin;
120
146
 
121
147
  & lux-icon, .lux-header-username {
122
- color: $lux-hover-color-for-dark-background !important;
148
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
123
149
  }
124
150
  }
125
151
  }
@@ -148,7 +174,7 @@ lux-side-nav {
148
174
 
149
175
  /** ########## Card ########## **/
150
176
  lux-card mat-card {
151
- &[class~=lux-cursor]:focus {
177
+ &[class~=lux-cursor]:focus-visible {
152
178
  @include focus-dark-mixin;
153
179
  }
154
180
 
@@ -159,25 +185,26 @@ lux-card mat-card {
159
185
 
160
186
  /** ########## List ########## **/
161
187
  lux-list {
162
- border: $outline-width dashed transparent;
188
+ border: luxcommon.$outline-width dashed transparent;
163
189
 
164
- &:focus {
190
+ &:focus-visible {
165
191
  border: $outline-dark;
192
+ border-radius: 4px;
166
193
  outline: none;
167
194
  }
168
195
 
169
196
  lux-list-item {
170
- &:focus {
197
+ &:focus-visible {
171
198
  outline: none;
172
199
 
173
200
  mat-card {
174
- @include focus-dark-mixin;
201
+ @include focus-dark-mixin-inline;
175
202
  }
176
203
  }
177
204
 
178
205
  lux-card {
179
206
  &.lux-list-item-selected {
180
- mat-card {
207
+ mat-card.mat-card.lux-card {
181
208
  @include lux-selected-mixin;
182
209
  }
183
210
  }
@@ -193,11 +220,26 @@ lux-list {
193
220
  }
194
221
  }
195
222
 
223
+ /** ########## Filter-Form ########## **/
224
+ lux-filter-form {
225
+ lux-menu {
226
+ .lux-filter-menu-trigger button:not([disabled]).mat-fab.lux-button-rounded:hover {
227
+ background-color: color.adjust(luxcommon.$lux-hover-color, $lightness: -10%) !important;
228
+ }
229
+ .lux-filter-menu-trigger button:not([disabled]).mat-fab.lux-button-rounded:focus-visible {
230
+ background-color: transparent !important;
231
+ }
232
+ }
233
+ }
234
+
196
235
  /** ########## Chips ########## **/
197
- lux-chips {
198
- & .mat-standard-chip:focus {
236
+ lux-chips, lux-chips-ac {
237
+ & .mat-standard-chip:focus-visible {
199
238
  @include focus-dark-mixin;
200
239
  }
240
+ .mat-chip.mat-standard-chip:after { //mat-overlay für focus deaktivieren
241
+ background-color: unset;
242
+ }
201
243
  }
202
244
 
203
245
  /** ########## Form-Control ########## **/
@@ -205,13 +247,13 @@ lux-form-control {
205
247
  .lux-form-control:not(.lux-form-control-disabled).lux-focused {
206
248
  .lux-form-control-label {
207
249
  > * {
208
- color: $lux-selected-border-color;
250
+ color: luxcommon.$lux-selected-border-color;
209
251
  }
210
252
  }
211
253
 
212
- .cdk-focused .mat-radio-container,
213
- .mat-checkbox-inner-container,
214
- .mat-slide-toggle-thumb {
254
+ .cdk-keyboard-focused .mat-radio-container,
255
+ .cdk-keyboard-focused .mat-checkbox-inner-container,
256
+ .cdk-keyboard-focused .mat-slide-toggle-thumb {
215
257
  position: relative;
216
258
  @include focus-dark-mixin;
217
259
  }
@@ -226,18 +268,40 @@ lux-form-control {
226
268
  right: 0;
227
269
  position: absolute;
228
270
  height: 2px;
229
- border-bottom: 2px solid $lux-selected-border-color;
271
+ border-bottom: 2px solid luxcommon.$lux-selected-border-color;
272
+ }
273
+
274
+ &.lux-form-control-error {
275
+ .lux-form-control-container:after {
276
+ border-bottom: 2px solid luxpalette.$lux-warn-color;
277
+ }
230
278
  }
231
279
  }
232
280
  }
233
281
 
282
+ .lux-form-control-wrapper {
283
+ &.lux-focused-authentic .cdk-keyboard-focused {
284
+ .mat-radio-container,
285
+ .mat-checkbox-inner-container,
286
+ .mat-slide-toggle-thumb {
287
+ position: relative;
288
+ @include focus-dark-mixin;
289
+ }
290
+
291
+ }
292
+ }
234
293
  /** ########## Datepicker ########## **/
235
- lux-datepicker {
294
+ lux-datepicker, lux-datepicker-ac {
236
295
  mat-datepicker-toggle {
237
- button:focus {
296
+ button:focus-visible {
238
297
  @include focus-dark-mixin;
298
+ border-radius: 4px;
239
299
  }
240
300
 
301
+ button:hover {
302
+ @include lux-hovered-mixin();
303
+ border-radius: 4px;
304
+ }
241
305
  .mat-button-focus-overlay {
242
306
  display: none;
243
307
  }
@@ -252,7 +316,7 @@ lux-datepicker {
252
316
  display: none;
253
317
  }
254
318
 
255
- &:focus {
319
+ &:focus-visible {
256
320
  @include focus-dark-mixin;
257
321
  }
258
322
 
@@ -267,7 +331,7 @@ lux-datepicker {
267
331
  &:hover > div {
268
332
  @include lux-hovered-mixin;
269
333
  border-radius: 999px;
270
- color: $dark-primary-text;
334
+ color: luxcommon.$dark-primary-text;
271
335
  }
272
336
 
273
337
  &.mat-calendar-body-active .mat-calendar-body-cell-content {
@@ -278,12 +342,17 @@ lux-datepicker {
278
342
  }
279
343
 
280
344
  /** ########## Datetimepicker ########## **/
281
- lux-datetimepicker {
345
+ lux-datetimepicker, lux-datetimepicker-ac {
282
346
  mat-datepicker-toggle {
283
- button:focus {
347
+ button:focus-visible {
284
348
  @include focus-dark-mixin;
349
+ border-radius: 4px;
285
350
  }
286
351
 
352
+ button:hover {
353
+ @include lux-hovered-mixin();
354
+ border-radius: 4px;
355
+ }
287
356
  .mat-button-focus-overlay {
288
357
  display: none;
289
358
  }
@@ -298,7 +367,7 @@ lux-datetimepicker {
298
367
  display: none;
299
368
  }
300
369
 
301
- &:focus {
370
+ &:focus-visible {
302
371
  @include focus-dark-mixin;
303
372
  }
304
373
 
@@ -313,7 +382,7 @@ lux-datetimepicker {
313
382
  &:hover > div {
314
383
  @include lux-hovered-mixin;
315
384
  border-radius: 999px;
316
- color: $dark-primary-text;
385
+ color: luxcommon.$dark-primary-text;
317
386
  }
318
387
 
319
388
  &.mat-calendar-body-active .mat-calendar-body-cell-content {
@@ -323,6 +392,20 @@ lux-datetimepicker {
323
392
  }
324
393
  }
325
394
 
395
+ /** ########## Lux-Dialog ########## **/
396
+ lux-dialog-structure {
397
+ // x-Button oben rechts im Dialog-Fenster
398
+ .lux-icon-close {
399
+ &:hover {
400
+ @include lux-hovered-mixin;
401
+ cursor: pointer;
402
+ }
403
+ &:focus-visible {
404
+ @include focus-dark-mixin;
405
+ border-radius: 4px;
406
+ }
407
+ }
408
+ }
326
409
  /** ########## Table ########## **/
327
410
  lux-table {
328
411
 
@@ -331,17 +414,17 @@ lux-table {
331
414
  > th {
332
415
  @include lux-hovered-mixin;
333
416
  // Wir nutzen hier die hover-Farbe ohne Alpha-Wert, da bei Sticky-Columns sonst unschöne Überlagerungen entstehen können
334
- background-color: $lux-hover-color !important;
417
+ background-color: luxcommon.$lux-hover-color !important;
335
418
  border-radius: 0;
336
419
  }
337
420
  }
338
421
 
339
- tr:focus, td:focus {
340
- @include focus-dark-mixin;
422
+ tr:focus-visible, td:focus-visible {
423
+ @include focus-dark-mixin-inline;
341
424
  }
342
425
 
343
- .lux-row-selected:focus {
344
- background-color: $lux-hover-color !important;
426
+ .lux-row-selected:focus-visible {
427
+ background-color: luxcommon.$lux-hover-color !important;
345
428
  outline: none;
346
429
  }
347
430
 
@@ -358,42 +441,59 @@ lux-table {
358
441
  // Class, welche das aufgeklappte Panel referenziert
359
442
  .lux-select-panel {
360
443
  mat-option {
361
-
362
- &.mat-selected {
444
+ &.mat-selected.mat-option:not(.mat-option-disabled) {
363
445
  @include lux-selected-mixin;
364
446
  }
365
447
 
366
- &:focus {
367
- @include focus-dark-mixin;
448
+ // Der Focus bei mat-option wird über die Klasse .mat-active gesteuert
449
+ // bisher noch keine Lösung um den mouse-focus auszuschalten
450
+ &.mat-active:not(.cdk-mouse-focused) {
451
+ @include focus-dark-mixin-inline;
452
+ border-radius: 4px;
368
453
  }
369
454
 
370
- &.mat-active {
371
- @include focus-dark-mixin;
455
+ &:hover {
456
+ @include lux-hovered-mixin;
372
457
  }
458
+ }
459
+ }
373
460
 
374
- &:hover {
461
+ .lux-select-panel-ac {
462
+ mat-option {
463
+ &.mat-selected.mat-option:not(.mat-option-disabled) {
464
+ @include lux-selected-mixin-ac;
465
+ }
466
+
467
+ // Der Focus bei mat-option wird über die Klasse .mat-active gesteuert
468
+ // bisher noch keine Lösung um den mouse-focus auszuschalten
469
+ &.mat-active:not(.cdk-mouse-focused) {
470
+ @include focus-dark-mixin-inline;
471
+ border-radius: 4px;
472
+ }
473
+
474
+ &:hover:not(.invalid, .mat-option-disabled) {
375
475
  @include lux-hovered-mixin;
376
476
  }
377
477
  }
378
478
  }
379
479
 
380
480
  /** ########## Button ########## **/
381
- lux-button {
481
+ lux-button:not(.lang-select-trigger-ac, .user-menu-trigger-ac, .lux-action-nav-item-btn, .nav-menu-trigger-ac, .lux-filter-menu-trigger) {
382
482
  button:not([disabled]) {
383
483
  .mat-button-focus-overlay {
384
484
  display: none;
385
485
  }
386
-
387
- &:focus {
486
+
487
+ &:focus-visible{
388
488
  @include focus-dark-mixin;
389
489
  }
390
490
 
391
- &:not(.mat-fab):not(.mat-raised-button) {
491
+ &:not(.mat-fab):not(.mat-raised-button):not(.mat-flat-button), &.mat-stroked-button {
392
492
  &:hover {
393
- background-color: $lux-hover-color;
493
+ background-color: color.adjust(luxcommon.$lux-hover-color, $lightness: -10%);
394
494
 
395
495
  &.mat-accent {
396
- color: map-get($lux-palette_accent, 900);
496
+ color: map.get(luxpalette.$lux-palette_accent, 900);
397
497
  }
398
498
 
399
499
  &.mat-warn {
@@ -405,36 +505,39 @@ lux-button {
405
505
  }
406
506
 
407
507
  &.mat-fab:hover,
408
- &.mat-raised-button:hover {
409
- background-color: darken($lux-hover-color, 10) !important; // $lux-hover-color !important;
508
+ &.mat-raised-button:hover,
509
+ &.mat-flat-button:hover {
510
+ background-color: color.adjust(luxcommon.$lux-hover-color, $lightness: -10%) !important; // $lux-hover-color !important;
511
+ //background-color: luxcommon.$lux-hover-color !important; // $lux-hover-color !important;
410
512
 
411
513
  &.mat-accent {
412
- background-color: lighten(map-get($lux-palette_accent, 500), 10) !important;
514
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_accent, 500), $lightness: 10%) !important;
413
515
  }
414
516
 
415
517
  &.mat-warn {
416
- background-color: lighten(map-get($lux-palette_warn, 500), 10) !important;
518
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_warn, 500), $lightness: 10%) !important;
417
519
  }
418
520
 
419
521
  &.mat-primary {
420
- background-color: lighten(map-get($lux-palette_primary, 500), 10) !important;
522
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_primary, 500), $lightness: 10%) !important;
421
523
  }
422
524
  }
423
525
 
424
- &.mat-fab:focus:not(:hover),
425
- &.mat-raised-button:focus:not(:hover) {
526
+ &.mat-fab:focus-visible:not(:hover),
527
+ &.mat-raised-button:focus-visible:not(:hover),
528
+ &.mat-flat-button:focus-visible:not(:hover) {
426
529
  background-color: white !important;
427
530
 
428
531
  &.mat-accent {
429
- background-color: lighten(map-get($lux-palette_accent, 500), 5) !important;
532
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_accent, 500), $lightness: 5%) !important;
430
533
  }
431
534
 
432
535
  &.mat-warn {
433
- background-color: lighten(map-get($lux-palette_warn, 500), 5) !important;
536
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_warn, 500), $lightness: 5%) !important;
434
537
  }
435
538
 
436
539
  &.mat-primary {
437
- background-color: lighten(map-get($lux-palette_primary, 500), 5) !important;
540
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_primary, 500), $lightness: 5%) !important;
438
541
  }
439
542
  }
440
543
  }
@@ -442,18 +545,20 @@ lux-button {
442
545
 
443
546
  /** ########## Autocomplete ########## **/
444
547
  // Class, welche das aufgeklappte Panel referenziert
445
- .lux-autocomplete-panel, .lux-chips-autocomplete-panel {
548
+ .lux-autocomplete-panel, .lux-chips-autocomplete-panel, .lux-autocomplete-panel-ac {
446
549
  mat-option {
447
550
 
448
- &:focus {
449
- @include focus-dark-mixin;
551
+ &:focus-visible {
552
+ @include focus-dark-mixin-inline;
553
+ border-radius: 4px;
450
554
  }
451
555
 
452
556
  &.mat-active {
453
- @include focus-dark-mixin;
557
+ @include focus-dark-mixin-inline;
558
+ border-radius: 4px;
454
559
  }
455
560
 
456
- &:hover {
561
+ &:hover:not(.invalid, .mat-option-disabled) {
457
562
  @include lux-hovered-mixin;
458
563
  }
459
564
  }
@@ -461,11 +566,11 @@ lux-button {
461
566
 
462
567
  /** ########## Tabs ########## **/
463
568
  @mixin tab-label-mixin {
464
- color: map-get($lux-palette_primary, 500) !important;
569
+ color: map.get(luxpalette.$lux-palette_primary, 400) !important;
465
570
  }
466
571
 
467
572
  @mixin tab-ink-bar-mixin {
468
- background-color: $lux-selected-border-color !important;
573
+ background-color: map.get(luxpalette.$lux-palette_primary, 500) !important;
469
574
  height: 4px;
470
575
  border-radius: 4px;
471
576
  }
@@ -477,13 +582,15 @@ lux-tabs {
477
582
  }
478
583
 
479
584
  .mat-tab-label:not(.mat-tab-disabled) {
480
- &:focus {
481
- @include focus-dark-mixin;
585
+ &:focus-visible{
586
+ @include focus-dark-mixin-inline;
587
+ border-radius: 4px;
482
588
  }
483
-
589
+
590
+
484
591
  &:hover:not(.mat-tab-disabled) {
485
592
  @include lux-hovered-mixin;
486
- }
593
+ }
487
594
  }
488
595
 
489
596
  mat-ink-bar.mat-ink-bar {
@@ -498,9 +605,9 @@ mat-card lux-tabs {
498
605
  }
499
606
 
500
607
  .mat-tab-label:not(.mat-tab-disabled) {
501
- &:focus {
502
- @include focus-dark-mixin;
503
-
608
+ &:focus-visible {
609
+ @include focus-dark-mixin-inline;
610
+ border-radius: 4px;
504
611
  }
505
612
 
506
613
  &:hover:not(.mat-tab-disabled) {
@@ -521,8 +628,9 @@ lux-stepper {
521
628
  }
522
629
  }
523
630
 
524
- mat-step-header[tabindex="0"]:focus {
631
+ mat-step-header[tabindex="0"]:focus-visible {
525
632
  @include focus-dark-mixin;
633
+ border-radius: 4px;
526
634
  }
527
635
 
528
636
  lux-stepper-vertical mat-step-header[aria-selected="true"] {
@@ -539,7 +647,7 @@ lux-stepper {
539
647
 
540
648
  /** ########## Html ########## **/
541
649
  lux-html {
542
- & a[href]:focus {
650
+ & a[href]:focus-visible {
543
651
  @include focus-dark-mixin;
544
652
  }
545
653
  }
@@ -547,7 +655,7 @@ lux-html {
547
655
  /** ########## Tile ########## **/
548
656
  lux-tile {
549
657
  mat-card {
550
- &:focus {
658
+ &:focus-visible {
551
659
  @include focus-dark-mixin;
552
660
  }
553
661
 
@@ -560,10 +668,11 @@ lux-tile {
560
668
  /** ########## Panel ########## **/
561
669
  lux-panel {
562
670
  mat-expansion-panel-header:not([aria-disabled='true']) {
563
- &:focus {
564
- background-color: white !important;
565
- @include focus-dark-mixin;
671
+ &:focus-visible {
672
+ //background-color: white !important;
673
+ @include focus-dark-mixin-inline;
566
674
  }
675
+
567
676
 
568
677
  &:hover {
569
678
  @include lux-hovered-mixin;
@@ -573,7 +682,7 @@ lux-panel {
573
682
 
574
683
  /** ########## Master-Detail ########## **/
575
684
  lux-button.lux-master-toggle button:not([disabled]):focus {
576
- &:focus {
685
+ &:focus-visible {
577
686
  @include focus-bright-mixin;
578
687
  }
579
688
 
@@ -588,8 +697,8 @@ lux-master-detail {
588
697
  button.lux-button {
589
698
  // Wir benötigen hier die spezielle CSS-Abfrage um die für die Buttons zu überschreiben
590
699
  // Wir nutzen $lux-hover-color, weil sich die normale lux-focus-color hier nicht genug abhebt
591
- &:not(.mat-fab):not(.mat-raised-button):focus {
592
- background-color: $lux-hover-color !important;
700
+ &:not(.mat-fab):not(.mat-raised-button):focus-visible {
701
+ background-color: luxcommon.$lux-hover-color !important;
593
702
  }
594
703
  }
595
704
  }
@@ -599,12 +708,13 @@ lux-master-detail {
599
708
  /** ########## File-List ########## **/
600
709
  lux-file-list {
601
710
  .lux-file-list {
602
- &:focus {
711
+ &:focus-visible {
603
712
  @include focus-dark-mixin;
713
+ border-radius: 4px;
604
714
  }
605
715
 
606
716
  .lux-file-list-entry {
607
- &:focus {
717
+ &:focus-visible {
608
718
  @include focus-dark-mixin;
609
719
  }
610
720
  }
@@ -612,7 +722,7 @@ lux-file-list {
612
722
  }
613
723
 
614
724
  lux-file-preview-toolbar lux-button button.lux-icon-button {
615
- &:focus {
725
+ &:focus-visible {
616
726
  @include focus-bright-mixin;
617
727
  }
618
728
  }
@@ -622,12 +732,18 @@ lux-file-preview-toolbar lux-button button.lux-icon-button {
622
732
  .lux-menu-panel {
623
733
  .lux-menu-item {
624
734
  &:not([disabled="true"]) {
625
- &:focus {
626
- @include focus-dark-mixin;
735
+ &:focus-visible {
736
+ @include focus-dark-mixin-inline;
737
+ border-radius: 0;
738
+ &:after {
739
+ width: 0px;
740
+ border:none;
741
+ }
627
742
  }
628
743
 
629
744
  &:hover {
630
745
  @include lux-hovered-mixin;
746
+ border-radius: 0px;
631
747
  }
632
748
  }
633
749
  }
@@ -645,8 +761,8 @@ example-root {
645
761
  @include lux-selected-mixin;
646
762
  }
647
763
 
648
- &:focus {
649
- @include focus-dark-mixin;
764
+ &:focus-visible {
765
+ @include focus-dark-mixin-inline;
650
766
  }
651
767
 
652
768
  &:hover {
@@ -661,36 +777,38 @@ lux-message-box {
661
777
 
662
778
  & div.lux-message-box-content {
663
779
 
664
- &:focus {
780
+ &:focus-visible {
665
781
  @include focus-dark-mixin;
666
782
  }
667
783
 
668
784
  & div.lux-message-container.lux-bg-color-white {
669
- & div.lux-message-text p:focus {
785
+ & div.lux-message-text p:focus-visible {
670
786
  @include focus-dark-mixin;
671
787
  }
672
788
 
673
- & button:not([disabled]):focus {
789
+ & button:not([disabled]):focus-visible {
674
790
  @include focus-dark-mixin;
675
791
  }
676
792
 
677
793
  & button:not([disabled]):hover {
678
794
  @include lux-hovered-mixin;
795
+ border-radius: 50%;
679
796
  }
680
797
  }
681
798
 
682
799
  & div.lux-message-container:not(.lux-bg-color-white) {
683
- & div.lux-message-text p:focus {
800
+ & div.lux-message-text p:focus-visible {
684
801
  @include focus-bright-mixin;
685
802
  }
686
803
 
687
- & button:not([disabled]):focus {
804
+ & button:not([disabled]):focus-visible {
688
805
  @include focus-bright-mixin;
689
806
  }
690
807
 
691
808
  & button:not([disabled]):hover {
692
809
  @include lux-hovered-mixin;
693
- color: $lux-hover-color-for-dark-background;
810
+ border-radius: 50%;
811
+ color: luxpalette.$lux-primary-color;
694
812
  }
695
813
  }
696
814
  }
@@ -702,7 +820,7 @@ lux-stepper-large {
702
820
 
703
821
  // Links allgemein
704
822
  a {
705
- &:focus {
823
+ &:focus-visible {
706
824
  outline: none;
707
825
  }
708
826
 
@@ -750,10 +868,10 @@ lux-stepper-large {
750
868
 
751
869
  /** ########## File-Upload ########## **/
752
870
  .lux-file-upload-drop-container {
753
- margin-left: $outline-width;
754
- margin-right: $outline-width;
871
+ margin-left: luxcommon.$outline-width;
872
+ margin-right: luxcommon.$outline-width;
755
873
 
756
- &:focus {
874
+ &:focus-visible {
757
875
  outline: $outline-dark;
758
876
  }
759
877
  }