@ihk-gfi/lux-components-theme 13.0.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 +9 -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} +6676 -4808
  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 +4517 -3253
  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 +4559 -3310
  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 +374 -188
  21. package/src/base/_luxelevations.scss +8 -10
  22. package/src/base/_luxfocus.scss +196 -100
  23. package/src/base/_luxpalette.scss +9 -0
  24. package/src/base/_luxstyles.scss +139 -116
  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 +103 -1
  33. package/src/blue/_luxcommon.scss +13 -2
  34. package/src/blue/_luxpalette.scss +4 -3
  35. package/src/blue/luxtheme.scss +102 -10
  36. package/src/green/_custom.scss +201 -104
  37. package/src/green/_luxcommon.scss +16 -5
  38. package/src/green/_luxpalette.scss +4 -3
  39. package/src/green/luxtheme.scss +103 -13
  40. package/src/public/global.scss +6 -10
  41. package/prebuilt-themes/luxtheme-orange-min.css +0 -1
  42. package/prebuilt-themes/luxtheme-orange-min.css.map +0 -1
  43. package/prebuilt-themes/luxtheme-orange.css.map +0 -1
  44. package/src/base/_luxicons.scss +0 -2
  45. package/src/orange/_custom.scss +0 -66
  46. package/src/orange/_luxcommon.scss +0 -90
  47. package/src/orange/_luxpalette.scss +0 -106
  48. package/src/orange/luxtheme.scss +0 -10
@@ -1,11 +1,17 @@
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;
@@ -15,7 +21,7 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
15
21
  // der Focus um Elemente in Panels wird mit negativen Margin nach in das Element verlegt
16
22
  // damit wird er nicht mehr am Rand abgeschnitten oder verdeckt
17
23
  outline: $outline-dark;
18
- outline-offset: -$outline-width;
24
+ outline-offset: -(luxcommon.$outline-width);
19
25
  }
20
26
 
21
27
  @mixin focus-bright-mixin {
@@ -29,7 +35,7 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
29
35
  }
30
36
 
31
37
  @mixin lux-selected-mixin {
32
- background-color: $lux-selected-bg-color !important;
38
+ background-color: luxcommon.$lux-selected-bg-color !important;
33
39
  position: relative;
34
40
  border-radius: 4px;
35
41
 
@@ -40,11 +46,24 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
40
46
  top: 0;
41
47
  bottom: 0;
42
48
  position: absolute;
43
- border-left: 4px solid $lux-selected-border-color;
49
+ border-left: 4px solid luxcommon.$lux-selected-border-color;
44
50
  border-radius: 4px 0 0 4px;
45
51
  }
46
52
  }
47
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
+
48
67
  @mixin lux-selected-bottom-mixin {
49
68
  position: relative;
50
69
 
@@ -55,12 +74,12 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
55
74
  bottom: 0;
56
75
  right: 0;
57
76
  position: absolute;
58
- border-bottom: 4px solid $lux-selected-border-color;
77
+ border-bottom: 4px solid luxcommon.$lux-selected-border-color;
59
78
  }
60
79
  }
61
80
 
62
81
  @mixin lux-hovered-mixin {
63
- background-color: $lux-hover-color !important;
82
+ background-color: luxcommon.$lux-hover-color !important;
64
83
  border-radius: 4px;
65
84
  }
66
85
 
@@ -73,7 +92,7 @@ lux-app-header {
73
92
 
74
93
  &:hover {
75
94
  @include lux-hovered-mixin;
76
- color: $lux-hover-color-for-dark-background !important;
95
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
77
96
  }
78
97
  }
79
98
 
@@ -83,7 +102,7 @@ lux-app-header {
83
102
  }
84
103
 
85
104
  &:hover lux-icon {
86
- color: $lux-hover-color-for-dark-background !important;
105
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
87
106
  }
88
107
  }
89
108
 
@@ -93,18 +112,18 @@ lux-app-header {
93
112
  }
94
113
 
95
114
  &:hover {
96
- color: $lux-hover-color-for-dark-background !important;
115
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
97
116
 
98
117
  &.mat-accent lux-icon {
99
- color: map-get($lux-palette_accent, 500) !important;
118
+ color: map.get(luxpalette.$lux-palette_accent, 500) !important;
100
119
  }
101
120
 
102
121
  &.mat-warn lux-icon {
103
- color: map-get($lux-palette_warn, 500) !important;
122
+ color: map.get(luxpalette.$lux-palette_warn, 500) !important;
104
123
  }
105
124
 
106
125
  &.mat-primary lux-icon {
107
- color: map-get($lux-palette_primary, 500) !important;
126
+ color: map.get(luxpalette.$lux-palette_primary, 500) !important;
108
127
  }
109
128
  }
110
129
  }
@@ -126,7 +145,7 @@ lux-app-header {
126
145
  @include lux-hovered-mixin;
127
146
 
128
147
  & lux-icon, .lux-header-username {
129
- color: $lux-hover-color-for-dark-background !important;
148
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
130
149
  }
131
150
  }
132
151
  }
@@ -155,7 +174,7 @@ lux-side-nav {
155
174
 
156
175
  /** ########## Card ########## **/
157
176
  lux-card mat-card {
158
- &[class~=lux-cursor]:focus {
177
+ &[class~=lux-cursor]:focus-visible {
159
178
  @include focus-dark-mixin;
160
179
  }
161
180
 
@@ -166,25 +185,26 @@ lux-card mat-card {
166
185
 
167
186
  /** ########## List ########## **/
168
187
  lux-list {
169
- border: $outline-width dashed transparent;
188
+ border: luxcommon.$outline-width dashed transparent;
170
189
 
171
- &:focus {
190
+ &:focus-visible {
172
191
  border: $outline-dark;
192
+ border-radius: 4px;
173
193
  outline: none;
174
194
  }
175
195
 
176
196
  lux-list-item {
177
- &:focus {
197
+ &:focus-visible {
178
198
  outline: none;
179
199
 
180
200
  mat-card {
181
- @include focus-dark-mixin;
201
+ @include focus-dark-mixin-inline;
182
202
  }
183
203
  }
184
204
 
185
205
  lux-card {
186
206
  &.lux-list-item-selected {
187
- mat-card {
207
+ mat-card.mat-card.lux-card {
188
208
  @include lux-selected-mixin;
189
209
  }
190
210
  }
@@ -200,9 +220,21 @@ lux-list {
200
220
  }
201
221
  }
202
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
+
203
235
  /** ########## Chips ########## **/
204
- lux-chips {
205
- & .mat-standard-chip:focus {
236
+ lux-chips, lux-chips-ac {
237
+ & .mat-standard-chip:focus-visible {
206
238
  @include focus-dark-mixin;
207
239
  }
208
240
  .mat-chip.mat-standard-chip:after { //mat-overlay für focus deaktivieren
@@ -215,13 +247,13 @@ lux-form-control {
215
247
  .lux-form-control:not(.lux-form-control-disabled).lux-focused {
216
248
  .lux-form-control-label {
217
249
  > * {
218
- color: $lux-selected-border-color;
250
+ color: luxcommon.$lux-selected-border-color;
219
251
  }
220
252
  }
221
253
 
222
- .cdk-focused .mat-radio-container,
223
- .mat-checkbox-inner-container,
224
- .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 {
225
257
  position: relative;
226
258
  @include focus-dark-mixin;
227
259
  }
@@ -236,25 +268,40 @@ lux-form-control {
236
268
  right: 0;
237
269
  position: absolute;
238
270
  height: 2px;
239
- border-bottom: 2px solid $lux-selected-border-color;
271
+ border-bottom: 2px solid luxcommon.$lux-selected-border-color;
240
272
  }
241
273
 
242
274
  &.lux-form-control-error {
243
275
  .lux-form-control-container:after {
244
- border-bottom: 2px solid $lux-warn-color;
276
+ border-bottom: 2px solid luxpalette.$lux-warn-color;
245
277
  }
246
278
  }
247
279
  }
248
280
  }
249
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
+ }
250
293
  /** ########## Datepicker ########## **/
251
- lux-datepicker {
294
+ lux-datepicker, lux-datepicker-ac {
252
295
  mat-datepicker-toggle {
253
- button:focus {
296
+ button:focus-visible {
254
297
  @include focus-dark-mixin;
255
298
  border-radius: 4px;
256
299
  }
257
300
 
301
+ button:hover {
302
+ @include lux-hovered-mixin();
303
+ border-radius: 4px;
304
+ }
258
305
  .mat-button-focus-overlay {
259
306
  display: none;
260
307
  }
@@ -269,7 +316,7 @@ lux-datepicker {
269
316
  display: none;
270
317
  }
271
318
 
272
- &:focus {
319
+ &:focus-visible {
273
320
  @include focus-dark-mixin;
274
321
  }
275
322
 
@@ -284,7 +331,7 @@ lux-datepicker {
284
331
  &:hover > div {
285
332
  @include lux-hovered-mixin;
286
333
  border-radius: 999px;
287
- color: $dark-primary-text;
334
+ color: luxcommon.$dark-primary-text;
288
335
  }
289
336
 
290
337
  &.mat-calendar-body-active .mat-calendar-body-cell-content {
@@ -295,13 +342,17 @@ lux-datepicker {
295
342
  }
296
343
 
297
344
  /** ########## Datetimepicker ########## **/
298
- lux-datetimepicker {
345
+ lux-datetimepicker, lux-datetimepicker-ac {
299
346
  mat-datepicker-toggle {
300
- button:focus {
347
+ button:focus-visible {
301
348
  @include focus-dark-mixin;
302
349
  border-radius: 4px;
303
350
  }
304
351
 
352
+ button:hover {
353
+ @include lux-hovered-mixin();
354
+ border-radius: 4px;
355
+ }
305
356
  .mat-button-focus-overlay {
306
357
  display: none;
307
358
  }
@@ -316,7 +367,7 @@ lux-datetimepicker {
316
367
  display: none;
317
368
  }
318
369
 
319
- &:focus {
370
+ &:focus-visible {
320
371
  @include focus-dark-mixin;
321
372
  }
322
373
 
@@ -331,7 +382,7 @@ lux-datetimepicker {
331
382
  &:hover > div {
332
383
  @include lux-hovered-mixin;
333
384
  border-radius: 999px;
334
- color: $dark-primary-text;
385
+ color: luxcommon.$dark-primary-text;
335
386
  }
336
387
 
337
388
  &.mat-calendar-body-active .mat-calendar-body-cell-content {
@@ -341,6 +392,20 @@ lux-datetimepicker {
341
392
  }
342
393
  }
343
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
+ }
344
409
  /** ########## Table ########## **/
345
410
  lux-table {
346
411
 
@@ -349,17 +414,17 @@ lux-table {
349
414
  > th {
350
415
  @include lux-hovered-mixin;
351
416
  // Wir nutzen hier die hover-Farbe ohne Alpha-Wert, da bei Sticky-Columns sonst unschöne Überlagerungen entstehen können
352
- background-color: $lux-hover-color !important;
417
+ background-color: luxcommon.$lux-hover-color !important;
353
418
  border-radius: 0;
354
419
  }
355
420
  }
356
421
 
357
- tr:focus, td:focus {
358
- @include focus-dark-mixin;
422
+ tr:focus-visible, td:focus-visible {
423
+ @include focus-dark-mixin-inline;
359
424
  }
360
425
 
361
- .lux-row-selected:focus {
362
- background-color: $lux-hover-color !important;
426
+ .lux-row-selected:focus-visible {
427
+ background-color: luxcommon.$lux-hover-color !important;
363
428
  outline: none;
364
429
  }
365
430
 
@@ -376,44 +441,59 @@ lux-table {
376
441
  // Class, welche das aufgeklappte Panel referenziert
377
442
  .lux-select-panel {
378
443
  mat-option {
379
-
380
- &.mat-selected {
444
+ &.mat-selected.mat-option:not(.mat-option-disabled) {
381
445
  @include lux-selected-mixin;
382
446
  }
383
447
 
384
- &:focus {
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) {
385
451
  @include focus-dark-mixin-inline;
386
452
  border-radius: 4px;
387
453
  }
388
454
 
389
- &.mat-active {
455
+ &:hover {
456
+ @include lux-hovered-mixin;
457
+ }
458
+ }
459
+ }
460
+
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) {
390
470
  @include focus-dark-mixin-inline;
391
471
  border-radius: 4px;
392
472
  }
393
473
 
394
- &:hover {
474
+ &:hover:not(.invalid, .mat-option-disabled) {
395
475
  @include lux-hovered-mixin;
396
476
  }
397
477
  }
398
478
  }
399
479
 
400
480
  /** ########## Button ########## **/
401
- 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) {
402
482
  button:not([disabled]) {
403
483
  .mat-button-focus-overlay {
404
484
  display: none;
405
485
  }
406
-
407
- &:focus {
486
+
487
+ &:focus-visible{
408
488
  @include focus-dark-mixin;
409
489
  }
410
490
 
411
- &:not(.mat-fab):not(.mat-raised-button) {
491
+ &:not(.mat-fab):not(.mat-raised-button):not(.mat-flat-button), &.mat-stroked-button {
412
492
  &:hover {
413
- background-color: $lux-hover-color;
493
+ background-color: color.adjust(luxcommon.$lux-hover-color, $lightness: -10%);
414
494
 
415
495
  &.mat-accent {
416
- color: map-get($lux-palette_accent, 900);
496
+ color: map.get(luxpalette.$lux-palette_accent, 900);
417
497
  }
418
498
 
419
499
  &.mat-warn {
@@ -425,36 +505,39 @@ lux-button {
425
505
  }
426
506
 
427
507
  &.mat-fab:hover,
428
- &.mat-raised-button:hover {
429
- 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;
430
512
 
431
513
  &.mat-accent {
432
- 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;
433
515
  }
434
516
 
435
517
  &.mat-warn {
436
- 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;
437
519
  }
438
520
 
439
521
  &.mat-primary {
440
- 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;
441
523
  }
442
524
  }
443
525
 
444
- &.mat-fab:focus:not(:hover),
445
- &.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) {
446
529
  background-color: white !important;
447
530
 
448
531
  &.mat-accent {
449
- 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;
450
533
  }
451
534
 
452
535
  &.mat-warn {
453
- 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;
454
537
  }
455
538
 
456
539
  &.mat-primary {
457
- 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;
458
541
  }
459
542
  }
460
543
  }
@@ -462,10 +545,10 @@ lux-button {
462
545
 
463
546
  /** ########## Autocomplete ########## **/
464
547
  // Class, welche das aufgeklappte Panel referenziert
465
- .lux-autocomplete-panel, .lux-chips-autocomplete-panel {
548
+ .lux-autocomplete-panel, .lux-chips-autocomplete-panel, .lux-autocomplete-panel-ac {
466
549
  mat-option {
467
550
 
468
- &:focus {
551
+ &:focus-visible {
469
552
  @include focus-dark-mixin-inline;
470
553
  border-radius: 4px;
471
554
  }
@@ -475,7 +558,7 @@ lux-button {
475
558
  border-radius: 4px;
476
559
  }
477
560
 
478
- &:hover {
561
+ &:hover:not(.invalid, .mat-option-disabled) {
479
562
  @include lux-hovered-mixin;
480
563
  }
481
564
  }
@@ -483,11 +566,11 @@ lux-button {
483
566
 
484
567
  /** ########## Tabs ########## **/
485
568
  @mixin tab-label-mixin {
486
- color: map-get($lux-palette_primary, 500) !important;
569
+ color: map.get(luxpalette.$lux-palette_primary, 400) !important;
487
570
  }
488
571
 
489
572
  @mixin tab-ink-bar-mixin {
490
- background-color: $lux-selected-border-color !important;
573
+ background-color: map.get(luxpalette.$lux-palette_primary, 500) !important;
491
574
  height: 4px;
492
575
  border-radius: 4px;
493
576
  }
@@ -499,13 +582,15 @@ lux-tabs {
499
582
  }
500
583
 
501
584
  .mat-tab-label:not(.mat-tab-disabled) {
502
- &:focus {
503
- @include focus-dark-mixin;
585
+ &:focus-visible{
586
+ @include focus-dark-mixin-inline;
587
+ border-radius: 4px;
504
588
  }
505
-
589
+
590
+
506
591
  &:hover:not(.mat-tab-disabled) {
507
592
  @include lux-hovered-mixin;
508
- }
593
+ }
509
594
  }
510
595
 
511
596
  mat-ink-bar.mat-ink-bar {
@@ -520,9 +605,9 @@ mat-card lux-tabs {
520
605
  }
521
606
 
522
607
  .mat-tab-label:not(.mat-tab-disabled) {
523
- &:focus {
524
- @include focus-dark-mixin;
525
-
608
+ &:focus-visible {
609
+ @include focus-dark-mixin-inline;
610
+ border-radius: 4px;
526
611
  }
527
612
 
528
613
  &:hover:not(.mat-tab-disabled) {
@@ -543,8 +628,9 @@ lux-stepper {
543
628
  }
544
629
  }
545
630
 
546
- mat-step-header[tabindex="0"]:focus {
631
+ mat-step-header[tabindex="0"]:focus-visible {
547
632
  @include focus-dark-mixin;
633
+ border-radius: 4px;
548
634
  }
549
635
 
550
636
  lux-stepper-vertical mat-step-header[aria-selected="true"] {
@@ -561,7 +647,7 @@ lux-stepper {
561
647
 
562
648
  /** ########## Html ########## **/
563
649
  lux-html {
564
- & a[href]:focus {
650
+ & a[href]:focus-visible {
565
651
  @include focus-dark-mixin;
566
652
  }
567
653
  }
@@ -569,7 +655,7 @@ lux-html {
569
655
  /** ########## Tile ########## **/
570
656
  lux-tile {
571
657
  mat-card {
572
- &:focus {
658
+ &:focus-visible {
573
659
  @include focus-dark-mixin;
574
660
  }
575
661
 
@@ -582,10 +668,11 @@ lux-tile {
582
668
  /** ########## Panel ########## **/
583
669
  lux-panel {
584
670
  mat-expansion-panel-header:not([aria-disabled='true']) {
585
- &:focus {
586
- background-color: white !important;
587
- @include focus-dark-mixin;
671
+ &:focus-visible {
672
+ //background-color: white !important;
673
+ @include focus-dark-mixin-inline;
588
674
  }
675
+
589
676
 
590
677
  &:hover {
591
678
  @include lux-hovered-mixin;
@@ -595,7 +682,7 @@ lux-panel {
595
682
 
596
683
  /** ########## Master-Detail ########## **/
597
684
  lux-button.lux-master-toggle button:not([disabled]):focus {
598
- &:focus {
685
+ &:focus-visible {
599
686
  @include focus-bright-mixin;
600
687
  }
601
688
 
@@ -610,8 +697,8 @@ lux-master-detail {
610
697
  button.lux-button {
611
698
  // Wir benötigen hier die spezielle CSS-Abfrage um die für die Buttons zu überschreiben
612
699
  // Wir nutzen $lux-hover-color, weil sich die normale lux-focus-color hier nicht genug abhebt
613
- &:not(.mat-fab):not(.mat-raised-button):focus {
614
- background-color: $lux-hover-color !important;
700
+ &:not(.mat-fab):not(.mat-raised-button):focus-visible {
701
+ background-color: luxcommon.$lux-hover-color !important;
615
702
  }
616
703
  }
617
704
  }
@@ -621,12 +708,13 @@ lux-master-detail {
621
708
  /** ########## File-List ########## **/
622
709
  lux-file-list {
623
710
  .lux-file-list {
624
- &:focus {
711
+ &:focus-visible {
625
712
  @include focus-dark-mixin;
713
+ border-radius: 4px;
626
714
  }
627
715
 
628
716
  .lux-file-list-entry {
629
- &:focus {
717
+ &:focus-visible {
630
718
  @include focus-dark-mixin;
631
719
  }
632
720
  }
@@ -634,7 +722,7 @@ lux-file-list {
634
722
  }
635
723
 
636
724
  lux-file-preview-toolbar lux-button button.lux-icon-button {
637
- &:focus {
725
+ &:focus-visible {
638
726
  @include focus-bright-mixin;
639
727
  }
640
728
  }
@@ -644,12 +732,18 @@ lux-file-preview-toolbar lux-button button.lux-icon-button {
644
732
  .lux-menu-panel {
645
733
  .lux-menu-item {
646
734
  &:not([disabled="true"]) {
647
- &:focus {
648
- @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
+ }
649
742
  }
650
743
 
651
744
  &:hover {
652
745
  @include lux-hovered-mixin;
746
+ border-radius: 0px;
653
747
  }
654
748
  }
655
749
  }
@@ -667,8 +761,8 @@ example-root {
667
761
  @include lux-selected-mixin;
668
762
  }
669
763
 
670
- &:focus {
671
- @include focus-dark-mixin;
764
+ &:focus-visible {
765
+ @include focus-dark-mixin-inline;
672
766
  }
673
767
 
674
768
  &:hover {
@@ -683,36 +777,38 @@ lux-message-box {
683
777
 
684
778
  & div.lux-message-box-content {
685
779
 
686
- &:focus {
780
+ &:focus-visible {
687
781
  @include focus-dark-mixin;
688
782
  }
689
783
 
690
784
  & div.lux-message-container.lux-bg-color-white {
691
- & div.lux-message-text p:focus {
785
+ & div.lux-message-text p:focus-visible {
692
786
  @include focus-dark-mixin;
693
787
  }
694
788
 
695
- & button:not([disabled]):focus {
789
+ & button:not([disabled]):focus-visible {
696
790
  @include focus-dark-mixin;
697
791
  }
698
792
 
699
793
  & button:not([disabled]):hover {
700
794
  @include lux-hovered-mixin;
795
+ border-radius: 50%;
701
796
  }
702
797
  }
703
798
 
704
799
  & div.lux-message-container:not(.lux-bg-color-white) {
705
- & div.lux-message-text p:focus {
800
+ & div.lux-message-text p:focus-visible {
706
801
  @include focus-bright-mixin;
707
802
  }
708
803
 
709
- & button:not([disabled]):focus {
804
+ & button:not([disabled]):focus-visible {
710
805
  @include focus-bright-mixin;
711
806
  }
712
807
 
713
808
  & button:not([disabled]):hover {
714
809
  @include lux-hovered-mixin;
715
- color: $lux-hover-color-for-dark-background;
810
+ border-radius: 50%;
811
+ color: luxpalette.$lux-primary-color;
716
812
  }
717
813
  }
718
814
  }
@@ -724,7 +820,7 @@ lux-stepper-large {
724
820
 
725
821
  // Links allgemein
726
822
  a {
727
- &:focus {
823
+ &:focus-visible {
728
824
  outline: none;
729
825
  }
730
826
 
@@ -772,10 +868,10 @@ lux-stepper-large {
772
868
 
773
869
  /** ########## File-Upload ########## **/
774
870
  .lux-file-upload-drop-container {
775
- margin-left: $outline-width;
776
- margin-right: $outline-width;
871
+ margin-left: luxcommon.$outline-width;
872
+ margin-right: luxcommon.$outline-width;
777
873
 
778
- &:focus {
874
+ &:focus-visible {
779
875
  outline: $outline-dark;
780
876
  }
781
877
  }