@ihk-gfi/lux-components-theme 13.0.0 → 14.1.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 (49) 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} +7303 -5035
  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 +4734 -3248
  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 +4920 -3449
  14. package/prebuilt-themes/luxtheme-green.css.map +1 -1
  15. package/src/authentic/_custom.scss +1101 -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/_luxSvgIcons.scss +5 -0
  20. package/src/base/_luxcommon.scss +98 -0
  21. package/src/base/_luxcomponents.scss +422 -190
  22. package/src/base/_luxelevations.scss +8 -10
  23. package/src/base/_luxfocus.scss +276 -107
  24. package/src/base/_luxpalette.scss +9 -0
  25. package/src/base/_luxstyles.scss +132 -116
  26. package/src/base/_luxtheme.scss +10 -6
  27. package/src/base/components/_luxAppHeaderAc.scss +187 -0
  28. package/src/base/components/_luxFormControlWrapper.scss +174 -0
  29. package/src/base/components/_luxFormControlsAuthentic.scss +357 -0
  30. package/src/base/components/_luxLinkPlain.scss +61 -0
  31. package/src/base/components/_luxMasterDetailAc.scss +206 -0
  32. package/src/base/components/_luxTileAc.scss +63 -0
  33. package/src/blue/_custom.scss +103 -1
  34. package/src/blue/_luxcommon.scss +13 -2
  35. package/src/blue/_luxpalette.scss +4 -3
  36. package/src/blue/luxtheme.scss +102 -10
  37. package/src/green/_custom.scss +201 -104
  38. package/src/green/_luxcommon.scss +16 -5
  39. package/src/green/_luxpalette.scss +4 -3
  40. package/src/green/luxtheme.scss +103 -13
  41. package/src/public/global.scss +6 -10
  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/base/_luxicons.scss +0 -2
  46. package/src/orange/_custom.scss +0 -66
  47. package/src/orange/_luxcommon.scss +0 -90
  48. package/src/orange/_luxpalette.scss +0 -106
  49. package/src/orange/luxtheme.scss +0 -10
@@ -1,11 +1,18 @@
1
+ @use "sass:color";
2
+ @use "sass:map";
3
+ @use "luxcommon";
4
+ @use "luxpalette";
5
+ @use "../public/global";
6
+ @use "../base/luxSvgIcons" as luxicons;
7
+
1
8
  /*
2
9
  Dieses Partial-SCSS dient der Verwaltung der Styles für Fokus, Hover und Selected für die LUX-Components und
3
10
  die ihnen zugrunde liegenden Material Components.
4
11
  */
5
12
 
6
13
  // Fokus
7
- $outline-dark: $outline-width $outline-style $outline-color-dark !important;
8
- $outline-bright: $outline-width $outline-style $outline-color-bright !important;
14
+ $outline-dark: luxcommon.$outline-width luxcommon.$outline-style luxcommon.$outline-color-dark !important;
15
+ $outline-bright: luxcommon.$outline-width luxcommon.$outline-style luxcommon.$outline-color-bright !important;
9
16
 
10
17
  @mixin focus-dark-mixin {
11
18
  outline: $outline-dark;
@@ -15,7 +22,7 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
15
22
  // der Focus um Elemente in Panels wird mit negativen Margin nach in das Element verlegt
16
23
  // damit wird er nicht mehr am Rand abgeschnitten oder verdeckt
17
24
  outline: $outline-dark;
18
- outline-offset: -$outline-width;
25
+ outline-offset: -(luxcommon.$outline-width);
19
26
  }
20
27
 
21
28
  @mixin focus-bright-mixin {
@@ -29,7 +36,7 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
29
36
  }
30
37
 
31
38
  @mixin lux-selected-mixin {
32
- background-color: $lux-selected-bg-color !important;
39
+ background-color: luxcommon.$lux-selected-bg-color !important;
33
40
  position: relative;
34
41
  border-radius: 4px;
35
42
 
@@ -40,11 +47,24 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
40
47
  top: 0;
41
48
  bottom: 0;
42
49
  position: absolute;
43
- border-left: 4px solid $lux-selected-border-color;
50
+ border-left: 4px solid luxcommon.$lux-selected-border-color;
44
51
  border-radius: 4px 0 0 4px;
45
52
  }
46
53
  }
47
54
 
55
+ @mixin lux-selected-mixin-ac {
56
+ background: luxcommon.$app-gradient;
57
+ background-color: #fff;
58
+ border: 1px solid map.get(luxpalette.$lux-palette-primary, 500);
59
+ box-shadow: 0 0 0 1px var(--lux-theme-primary-500) inset;
60
+ position: relative;
61
+ border-radius: 4px;
62
+ &:after {
63
+ width: 0px;
64
+ border:none;
65
+ }
66
+ }
67
+
48
68
  @mixin lux-selected-bottom-mixin {
49
69
  position: relative;
50
70
 
@@ -55,12 +75,12 @@ $outline-bright: $outline-width $outline-style $outline-color-bright !important;
55
75
  bottom: 0;
56
76
  right: 0;
57
77
  position: absolute;
58
- border-bottom: 4px solid $lux-selected-border-color;
78
+ border-bottom: 4px solid luxcommon.$lux-selected-border-color;
59
79
  }
60
80
  }
61
81
 
62
82
  @mixin lux-hovered-mixin {
63
- background-color: $lux-hover-color !important;
83
+ background-color: luxcommon.$lux-hover-color !important;
64
84
  border-radius: 4px;
65
85
  }
66
86
 
@@ -73,7 +93,7 @@ lux-app-header {
73
93
 
74
94
  &:hover {
75
95
  @include lux-hovered-mixin;
76
- color: $lux-hover-color-for-dark-background !important;
96
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
77
97
  }
78
98
  }
79
99
 
@@ -83,7 +103,7 @@ lux-app-header {
83
103
  }
84
104
 
85
105
  &:hover lux-icon {
86
- color: $lux-hover-color-for-dark-background !important;
106
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
87
107
  }
88
108
  }
89
109
 
@@ -93,18 +113,18 @@ lux-app-header {
93
113
  }
94
114
 
95
115
  &:hover {
96
- color: $lux-hover-color-for-dark-background !important;
116
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
97
117
 
98
118
  &.mat-accent lux-icon {
99
- color: map-get($lux-palette_accent, 500) !important;
119
+ color: map.get(luxpalette.$lux-palette_accent, 500) !important;
100
120
  }
101
121
 
102
122
  &.mat-warn lux-icon {
103
- color: map-get($lux-palette_warn, 500) !important;
123
+ color: map.get(luxpalette.$lux-palette_warn, 500) !important;
104
124
  }
105
125
 
106
126
  &.mat-primary lux-icon {
107
- color: map-get($lux-palette_primary, 500) !important;
127
+ color: map.get(luxpalette.$lux-palette_primary, 500) !important;
108
128
  }
109
129
  }
110
130
  }
@@ -126,7 +146,7 @@ lux-app-header {
126
146
  @include lux-hovered-mixin;
127
147
 
128
148
  & lux-icon, .lux-header-username {
129
- color: $lux-hover-color-for-dark-background !important;
149
+ color: luxcommon.$lux-hover-color-for-dark-background !important;
130
150
  }
131
151
  }
132
152
  }
@@ -155,8 +175,8 @@ lux-side-nav {
155
175
 
156
176
  /** ########## Card ########## **/
157
177
  lux-card mat-card {
158
- &[class~=lux-cursor]:focus {
159
- @include focus-dark-mixin;
178
+ &[class~=lux-cursor]:focus-visible {
179
+ @include focus-dark-mixin-inline;
160
180
  }
161
181
 
162
182
  &[class~=lux-cursor]:hover {
@@ -166,25 +186,22 @@ lux-card mat-card {
166
186
 
167
187
  /** ########## List ########## **/
168
188
  lux-list {
169
- border: $outline-width dashed transparent;
189
+ border: luxcommon.$outline-width dashed transparent;
170
190
 
171
- &:focus {
191
+ &:focus-visible {
172
192
  border: $outline-dark;
193
+ border-radius: 4px;
173
194
  outline: none;
174
195
  }
175
196
 
176
197
  lux-list-item {
177
- &:focus {
198
+ &:focus-visible {
178
199
  outline: none;
179
-
180
- mat-card {
181
- @include focus-dark-mixin;
182
- }
183
200
  }
184
201
 
185
202
  lux-card {
186
203
  &.lux-list-item-selected {
187
- mat-card {
204
+ mat-card.mat-card.lux-card {
188
205
  @include lux-selected-mixin;
189
206
  }
190
207
  }
@@ -200,9 +217,21 @@ lux-list {
200
217
  }
201
218
  }
202
219
 
220
+ /** ########## Filter-Form ########## **/
221
+ lux-filter-form {
222
+ lux-menu {
223
+ .lux-filter-menu-trigger button:not([disabled]).mat-fab.lux-button-rounded:hover {
224
+ background-color: color.adjust(luxcommon.$lux-hover-color, $lightness: -10%) !important;
225
+ }
226
+ .lux-filter-menu-trigger button:not([disabled]).mat-fab.lux-button-rounded:focus-visible {
227
+ background-color: transparent !important;
228
+ }
229
+ }
230
+ }
231
+
203
232
  /** ########## Chips ########## **/
204
- lux-chips {
205
- & .mat-standard-chip:focus {
233
+ lux-chips, lux-chips-ac {
234
+ & .mat-standard-chip:focus-visible {
206
235
  @include focus-dark-mixin;
207
236
  }
208
237
  .mat-chip.mat-standard-chip:after { //mat-overlay für focus deaktivieren
@@ -215,13 +244,13 @@ lux-form-control {
215
244
  .lux-form-control:not(.lux-form-control-disabled).lux-focused {
216
245
  .lux-form-control-label {
217
246
  > * {
218
- color: $lux-selected-border-color;
247
+ color: luxcommon.$lux-selected-border-color;
219
248
  }
220
249
  }
221
250
 
222
- .cdk-focused .mat-radio-container,
223
- .mat-checkbox-inner-container,
224
- .mat-slide-toggle-thumb {
251
+ .cdk-keyboard-focused .mat-radio-container,
252
+ .cdk-keyboard-focused .mat-checkbox-inner-container,
253
+ .cdk-keyboard-focused .mat-slide-toggle-thumb {
225
254
  position: relative;
226
255
  @include focus-dark-mixin;
227
256
  }
@@ -236,25 +265,63 @@ lux-form-control {
236
265
  right: 0;
237
266
  position: absolute;
238
267
  height: 2px;
239
- border-bottom: 2px solid $lux-selected-border-color;
268
+ border-bottom: 2px solid luxcommon.$lux-selected-border-color;
240
269
  }
241
270
 
242
271
  &.lux-form-control-error {
243
272
  .lux-form-control-container:after {
244
- border-bottom: 2px solid $lux-warn-color;
273
+ border-bottom: 2px solid luxpalette.$lux-warn-color;
245
274
  }
246
275
  }
247
276
  }
248
277
  }
249
278
 
279
+ .lux-form-control-wrapper {
280
+ &.lux-focused-authentic .cdk-keyboard-focused {
281
+ .mat-radio-container,
282
+ .mat-checkbox-inner-container,
283
+ .mat-slide-toggle-thumb {
284
+ position: relative;
285
+ @include focus-dark-mixin;
286
+ }
287
+ }
288
+ }
289
+
290
+ lux-icon.lux-error-icon:focus-visible {
291
+ @include focus-dark-mixin;
292
+ }
293
+
250
294
  /** ########## Datepicker ########## **/
251
295
  lux-datepicker {
252
296
  mat-datepicker-toggle {
253
- button:focus {
297
+ button:focus-visible {
298
+ @include focus-dark-mixin;
299
+ border-radius: 4px;
300
+ }
301
+
302
+ button:hover {
303
+ @include lux-hovered-mixin();
304
+ border-radius: 4px;
305
+ }
306
+ .mat-button-focus-overlay {
307
+ display: none;
308
+ }
309
+ }
310
+ }
311
+ lux-datepicker-ac, lux-datetimepicker-ac {
312
+ mat-datepicker-toggle {
313
+ button:focus-visible {
254
314
  @include focus-dark-mixin;
255
315
  border-radius: 4px;
256
316
  }
257
317
 
318
+ button:hover {
319
+ background-color: #fff;
320
+ border-radius: 4px;
321
+ lux-icon.lux-datepicker-toggle-icon.lux-color-blue {
322
+ color: luxcommon.$lux-hover-color;
323
+ }
324
+ }
258
325
  .mat-button-focus-overlay {
259
326
  display: none;
260
327
  }
@@ -269,7 +336,7 @@ lux-datepicker {
269
336
  display: none;
270
337
  }
271
338
 
272
- &:focus {
339
+ &:focus-visible {
273
340
  @include focus-dark-mixin;
274
341
  }
275
342
 
@@ -284,7 +351,7 @@ lux-datepicker {
284
351
  &:hover > div {
285
352
  @include lux-hovered-mixin;
286
353
  border-radius: 999px;
287
- color: $dark-primary-text;
354
+ color: luxcommon.$dark-primary-text;
288
355
  }
289
356
 
290
357
  &.mat-calendar-body-active .mat-calendar-body-cell-content {
@@ -297,11 +364,15 @@ lux-datepicker {
297
364
  /** ########## Datetimepicker ########## **/
298
365
  lux-datetimepicker {
299
366
  mat-datepicker-toggle {
300
- button:focus {
367
+ button:focus-visible {
301
368
  @include focus-dark-mixin;
302
369
  border-radius: 4px;
303
370
  }
304
371
 
372
+ button:hover {
373
+ @include lux-hovered-mixin();
374
+ border-radius: 4px;
375
+ }
305
376
  .mat-button-focus-overlay {
306
377
  display: none;
307
378
  }
@@ -316,7 +387,7 @@ lux-datetimepicker {
316
387
  display: none;
317
388
  }
318
389
 
319
- &:focus {
390
+ &:focus-visible {
320
391
  @include focus-dark-mixin;
321
392
  }
322
393
 
@@ -331,7 +402,7 @@ lux-datetimepicker {
331
402
  &:hover > div {
332
403
  @include lux-hovered-mixin;
333
404
  border-radius: 999px;
334
- color: $dark-primary-text;
405
+ color: luxcommon.$dark-primary-text;
335
406
  }
336
407
 
337
408
  &.mat-calendar-body-active .mat-calendar-body-cell-content {
@@ -341,6 +412,20 @@ lux-datetimepicker {
341
412
  }
342
413
  }
343
414
 
415
+ /** ########## Lux-Dialog ########## **/
416
+ lux-dialog-structure {
417
+ // x-Button oben rechts im Dialog-Fenster
418
+ .lux-icon-close {
419
+ &:hover {
420
+ @include lux-hovered-mixin;
421
+ cursor: pointer;
422
+ }
423
+ &:focus-visible {
424
+ @include focus-dark-mixin;
425
+ border-radius: 4px;
426
+ }
427
+ }
428
+ }
344
429
  /** ########## Table ########## **/
345
430
  lux-table {
346
431
 
@@ -349,17 +434,17 @@ lux-table {
349
434
  > th {
350
435
  @include lux-hovered-mixin;
351
436
  // 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;
437
+ background-color: luxcommon.$lux-hover-color !important;
353
438
  border-radius: 0;
354
439
  }
355
440
  }
356
441
 
357
- tr:focus, td:focus {
358
- @include focus-dark-mixin;
442
+ tr:focus-visible, td:focus-visible {
443
+ @include focus-dark-mixin-inline;
359
444
  }
360
445
 
361
- .lux-row-selected:focus {
362
- background-color: $lux-hover-color !important;
446
+ .lux-row-selected:focus-visible {
447
+ background-color: luxcommon.$lux-hover-color !important;
363
448
  outline: none;
364
449
  }
365
450
 
@@ -376,44 +461,111 @@ lux-table {
376
461
  // Class, welche das aufgeklappte Panel referenziert
377
462
  .lux-select-panel {
378
463
  mat-option {
379
-
380
- &.mat-selected {
464
+ &.mat-selected.mat-option:not(.mat-option-disabled) {
381
465
  @include lux-selected-mixin;
382
466
  }
383
467
 
384
- &:focus {
468
+ // Der Focus bei mat-option wird über die Klasse .mat-active gesteuert
469
+ // bisher noch keine Lösung um den mouse-focus auszuschalten
470
+ &.mat-active:not(.cdk-mouse-focused) {
385
471
  @include focus-dark-mixin-inline;
386
472
  border-radius: 4px;
387
473
  }
388
474
 
389
- &.mat-active {
475
+ &:hover {
476
+ @include lux-hovered-mixin;
477
+ }
478
+ }
479
+ }
480
+
481
+ /** ########## Select-AC ########## **/
482
+ @mixin lux-option-highlight-mixin {
483
+ background-color: map-get(luxpalette.$lux-palette_primary, 300);
484
+ color: #ffffff;
485
+ .mat-pseudo-checkbox {
486
+ color: #ffffff;
487
+ }
488
+ .mat-pseudo-checkbox-checked {
489
+ background-color: #ffffff;
490
+ }
491
+ .mat-pseudo-checkbox-checked::after {
492
+ border-color: map.get(luxpalette.$lux-palette_primary, 500) !important;
493
+ }
494
+ }
495
+
496
+ .lux-select-panel-ac {
497
+ mat-option {
498
+ &.mat-selected.mat-option:not(.mat-option-disabled) .mat-option-text {
499
+ position: relative;
500
+ &::after {
501
+ content: '';
502
+ position: absolute;
503
+ width: 18px;
504
+ height: 18px;
505
+ top: 14px;
506
+ margin: 0 6px;
507
+ background-color: luxpalette.$lux-primary-color;
508
+ -webkit-mask: url(luxicons.$checkmark);
509
+ -webkit-mask-repeat: no-repeat;
510
+ -webkit-mask-position: center;
511
+ -webkit-mask-size: cover;
512
+ mask: url(luxicons.$checkmark);
513
+ mask-repeat: no-repeat;
514
+ mask-position: center;
515
+ mask-size: cover;
516
+ }
517
+ }
518
+ }
519
+ }
520
+
521
+ .lux-select-panel-ac, .lux-select-panel-ac-multiple, .lux-autocomplete-panel-ac, .lux-chips-ac-autocomplete-panel {
522
+ &.mat-select-panel mat-option,
523
+ &.mat-autocomplete-panel mat-option {
524
+ &.mat-selected.mat-option:not(.mat-option-disabled):not(:hover):not(.mat-active) {
525
+ color: map-get(luxpalette.$lux-palette_primary, 500);
526
+ background-color: #ffffff;
527
+ font-weight: 600;
528
+ }
529
+
530
+ // Der Focus bei mat-option wird über die Klasse .mat-active gesteuert
531
+ &.mat-option.mat-active:not(.cdk-mouse-focused) {
390
532
  @include focus-dark-mixin-inline;
391
- border-radius: 4px;
533
+ @include lux-option-highlight-mixin;
534
+ & .mat-option-text::after {
535
+ background-color: #fff;
536
+ }
392
537
  }
393
538
 
394
- &:hover {
395
- @include lux-hovered-mixin;
539
+ &:hover:not(.invalid, .mat-option-disabled) {
540
+ @include lux-option-highlight-mixin;
541
+ border-radius: 0px !important;
542
+ .mat-pseudo-checkbox {
543
+ color: #ffffff;
544
+ }
545
+ & .mat-option-text::after {
546
+ background-color: #fff;
547
+ }
396
548
  }
397
549
  }
398
550
  }
399
551
 
400
552
  /** ########## Button ########## **/
401
- lux-button {
553
+ 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
554
  button:not([disabled]) {
403
555
  .mat-button-focus-overlay {
404
556
  display: none;
405
557
  }
406
-
407
- &:focus {
558
+
559
+ &:focus-visible{
408
560
  @include focus-dark-mixin;
409
561
  }
410
562
 
411
- &:not(.mat-fab):not(.mat-raised-button) {
563
+ &:not(.mat-fab):not(.mat-raised-button):not(.mat-flat-button), &.mat-stroked-button {
412
564
  &:hover {
413
- background-color: $lux-hover-color;
565
+ background-color: color.adjust(luxcommon.$lux-hover-color, $lightness: -10%);
414
566
 
415
567
  &.mat-accent {
416
- color: map-get($lux-palette_accent, 900);
568
+ color: map.get(luxpalette.$lux-palette_accent, 900);
417
569
  }
418
570
 
419
571
  &.mat-warn {
@@ -425,36 +577,39 @@ lux-button {
425
577
  }
426
578
 
427
579
  &.mat-fab:hover,
428
- &.mat-raised-button:hover {
429
- background-color: darken($lux-hover-color, 10) !important; // $lux-hover-color !important;
580
+ &.mat-raised-button:hover,
581
+ &.mat-flat-button:hover {
582
+ background-color: color.adjust(luxcommon.$lux-hover-color, $lightness: -10%) !important; // $lux-hover-color !important;
583
+ //background-color: luxcommon.$lux-hover-color !important; // $lux-hover-color !important;
430
584
 
431
585
  &.mat-accent {
432
- background-color: lighten(map-get($lux-palette_accent, 500), 10) !important;
586
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_accent, 500), $lightness: 10%) !important;
433
587
  }
434
588
 
435
589
  &.mat-warn {
436
- background-color: lighten(map-get($lux-palette_warn, 500), 10) !important;
590
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_warn, 500), $lightness: 10%) !important;
437
591
  }
438
592
 
439
593
  &.mat-primary {
440
- background-color: lighten(map-get($lux-palette_primary, 500), 10) !important;
594
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_primary, 500), $lightness: 10%) !important;
441
595
  }
442
596
  }
443
597
 
444
- &.mat-fab:focus:not(:hover),
445
- &.mat-raised-button:focus:not(:hover) {
598
+ &.mat-fab:focus-visible:not(:hover),
599
+ &.mat-raised-button:focus-visible:not(:hover),
600
+ &.mat-flat-button:focus-visible:not(:hover) {
446
601
  background-color: white !important;
447
602
 
448
603
  &.mat-accent {
449
- background-color: lighten(map-get($lux-palette_accent, 500), 5) !important;
604
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_accent, 500), $lightness: 5%) !important;
450
605
  }
451
606
 
452
607
  &.mat-warn {
453
- background-color: lighten(map-get($lux-palette_warn, 500), 5) !important;
608
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_warn, 500), $lightness: 5%) !important;
454
609
  }
455
610
 
456
611
  &.mat-primary {
457
- background-color: lighten(map-get($lux-palette_primary, 500), 5) !important;
612
+ background-color: color.adjust(map.get(luxpalette.$lux-palette_primary, 500), $lightness: 5%) !important;
458
613
  }
459
614
  }
460
615
  }
@@ -462,10 +617,10 @@ lux-button {
462
617
 
463
618
  /** ########## Autocomplete ########## **/
464
619
  // Class, welche das aufgeklappte Panel referenziert
465
- .lux-autocomplete-panel, .lux-chips-autocomplete-panel {
620
+ .lux-autocomplete-panel, .lux-chips-autocomplete-panel, .lux-autocomplete-panel-ac {
466
621
  mat-option {
467
622
 
468
- &:focus {
623
+ &:focus-visible {
469
624
  @include focus-dark-mixin-inline;
470
625
  border-radius: 4px;
471
626
  }
@@ -475,7 +630,7 @@ lux-button {
475
630
  border-radius: 4px;
476
631
  }
477
632
 
478
- &:hover {
633
+ &:hover:not(.invalid, .mat-option-disabled) {
479
634
  @include lux-hovered-mixin;
480
635
  }
481
636
  }
@@ -483,11 +638,11 @@ lux-button {
483
638
 
484
639
  /** ########## Tabs ########## **/
485
640
  @mixin tab-label-mixin {
486
- color: map-get($lux-palette_primary, 500) !important;
641
+ color: map.get(luxpalette.$lux-palette_primary, 400) !important;
487
642
  }
488
643
 
489
644
  @mixin tab-ink-bar-mixin {
490
- background-color: $lux-selected-border-color !important;
645
+ background-color: map.get(luxpalette.$lux-palette_primary, 500) !important;
491
646
  height: 4px;
492
647
  border-radius: 4px;
493
648
  }
@@ -499,13 +654,16 @@ lux-tabs {
499
654
  }
500
655
 
501
656
  .mat-tab-label:not(.mat-tab-disabled) {
502
- &:focus {
503
- @include focus-dark-mixin;
657
+ &:focus-visible{
658
+ @include focus-dark-mixin-inline;
659
+ border-radius: 4px;
504
660
  }
505
-
661
+
662
+
506
663
  &:hover:not(.mat-tab-disabled) {
507
- @include lux-hovered-mixin;
508
- }
664
+ background-color: luxcommon.$lux-hover-color;
665
+ border-radius: 4px;
666
+ }
509
667
  }
510
668
 
511
669
  mat-ink-bar.mat-ink-bar {
@@ -520,13 +678,14 @@ mat-card lux-tabs {
520
678
  }
521
679
 
522
680
  .mat-tab-label:not(.mat-tab-disabled) {
523
- &:focus {
524
- @include focus-dark-mixin;
525
-
681
+ &:focus-visible {
682
+ @include focus-dark-mixin-inline;
683
+ border-radius: 4px;
526
684
  }
527
685
 
528
686
  &:hover:not(.mat-tab-disabled) {
529
- @include lux-hovered-mixin;
687
+ background-color: luxcommon.$lux-hover-color;
688
+ border-radius: 4px;
530
689
  }
531
690
  }
532
691
 
@@ -543,8 +702,9 @@ lux-stepper {
543
702
  }
544
703
  }
545
704
 
546
- mat-step-header[tabindex="0"]:focus {
705
+ mat-step-header[tabindex="0"]:focus-visible {
547
706
  @include focus-dark-mixin;
707
+ border-radius: 4px;
548
708
  }
549
709
 
550
710
  lux-stepper-vertical mat-step-header[aria-selected="true"] {
@@ -561,7 +721,7 @@ lux-stepper {
561
721
 
562
722
  /** ########## Html ########## **/
563
723
  lux-html {
564
- & a[href]:focus {
724
+ & a[href]:focus-visible {
565
725
  @include focus-dark-mixin;
566
726
  }
567
727
  }
@@ -569,7 +729,7 @@ lux-html {
569
729
  /** ########## Tile ########## **/
570
730
  lux-tile {
571
731
  mat-card {
572
- &:focus {
732
+ &:focus-visible {
573
733
  @include focus-dark-mixin;
574
734
  }
575
735
 
@@ -582,11 +742,11 @@ lux-tile {
582
742
  /** ########## Panel ########## **/
583
743
  lux-panel {
584
744
  mat-expansion-panel-header:not([aria-disabled='true']) {
585
- &:focus {
586
- background-color: white !important;
587
- @include focus-dark-mixin;
745
+ &:focus-visible {
746
+ //background-color: white !important;
747
+ @include focus-dark-mixin-inline;
588
748
  }
589
-
749
+
590
750
  &:hover {
591
751
  @include lux-hovered-mixin;
592
752
  }
@@ -595,7 +755,7 @@ lux-panel {
595
755
 
596
756
  /** ########## Master-Detail ########## **/
597
757
  lux-button.lux-master-toggle button:not([disabled]):focus {
598
- &:focus {
758
+ &:focus-visible {
599
759
  @include focus-bright-mixin;
600
760
  }
601
761
 
@@ -610,8 +770,8 @@ lux-master-detail {
610
770
  button.lux-button {
611
771
  // Wir benötigen hier die spezielle CSS-Abfrage um die für die Buttons zu überschreiben
612
772
  // 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;
773
+ &:not(.mat-fab):not(.mat-raised-button):focus-visible {
774
+ background-color: luxcommon.$lux-hover-color !important;
615
775
  }
616
776
  }
617
777
  }
@@ -621,12 +781,13 @@ lux-master-detail {
621
781
  /** ########## File-List ########## **/
622
782
  lux-file-list {
623
783
  .lux-file-list {
624
- &:focus {
784
+ &:focus-visible {
625
785
  @include focus-dark-mixin;
786
+ border-radius: 4px;
626
787
  }
627
788
 
628
789
  .lux-file-list-entry {
629
- &:focus {
790
+ &:focus-visible {
630
791
  @include focus-dark-mixin;
631
792
  }
632
793
  }
@@ -634,7 +795,7 @@ lux-file-list {
634
795
  }
635
796
 
636
797
  lux-file-preview-toolbar lux-button button.lux-icon-button {
637
- &:focus {
798
+ &:focus-visible {
638
799
  @include focus-bright-mixin;
639
800
  }
640
801
  }
@@ -644,12 +805,18 @@ lux-file-preview-toolbar lux-button button.lux-icon-button {
644
805
  .lux-menu-panel {
645
806
  .lux-menu-item {
646
807
  &:not([disabled="true"]) {
647
- &:focus {
648
- @include focus-dark-mixin;
808
+ &:focus-visible {
809
+ @include focus-dark-mixin-inline;
810
+ border-radius: 0;
811
+ &:after {
812
+ width: 0px;
813
+ border:none;
814
+ }
649
815
  }
650
816
 
651
817
  &:hover {
652
818
  @include lux-hovered-mixin;
819
+ border-radius: 0px;
653
820
  }
654
821
  }
655
822
  }
@@ -667,8 +834,8 @@ example-root {
667
834
  @include lux-selected-mixin;
668
835
  }
669
836
 
670
- &:focus {
671
- @include focus-dark-mixin;
837
+ &:focus-visible {
838
+ @include focus-dark-mixin-inline;
672
839
  }
673
840
 
674
841
  &:hover {
@@ -683,36 +850,38 @@ lux-message-box {
683
850
 
684
851
  & div.lux-message-box-content {
685
852
 
686
- &:focus {
853
+ &:focus-visible {
687
854
  @include focus-dark-mixin;
688
855
  }
689
856
 
690
857
  & div.lux-message-container.lux-bg-color-white {
691
- & div.lux-message-text p:focus {
858
+ & div.lux-message-text p:focus-visible {
692
859
  @include focus-dark-mixin;
693
860
  }
694
861
 
695
- & button:not([disabled]):focus {
862
+ & button:not([disabled]):focus-visible {
696
863
  @include focus-dark-mixin;
697
864
  }
698
865
 
699
866
  & button:not([disabled]):hover {
700
867
  @include lux-hovered-mixin;
868
+ border-radius: 50%;
701
869
  }
702
870
  }
703
871
 
704
872
  & div.lux-message-container:not(.lux-bg-color-white) {
705
- & div.lux-message-text p:focus {
873
+ & div.lux-message-text p:focus-visible {
706
874
  @include focus-bright-mixin;
707
875
  }
708
876
 
709
- & button:not([disabled]):focus {
877
+ & button:not([disabled]):focus-visible {
710
878
  @include focus-bright-mixin;
711
879
  }
712
880
 
713
881
  & button:not([disabled]):hover {
714
882
  @include lux-hovered-mixin;
715
- color: $lux-hover-color-for-dark-background;
883
+ border-radius: 50%;
884
+ color: luxpalette.$lux-primary-color;
716
885
  }
717
886
  }
718
887
  }
@@ -724,7 +893,7 @@ lux-stepper-large {
724
893
 
725
894
  // Links allgemein
726
895
  a {
727
- &:focus {
896
+ &:focus-visible {
728
897
  outline: none;
729
898
  }
730
899
 
@@ -772,10 +941,10 @@ lux-stepper-large {
772
941
 
773
942
  /** ########## File-Upload ########## **/
774
943
  .lux-file-upload-drop-container {
775
- margin-left: $outline-width;
776
- margin-right: $outline-width;
944
+ margin-left: luxcommon.$outline-width;
945
+ margin-right: luxcommon.$outline-width;
777
946
 
778
- &:focus {
947
+ &:focus-visible {
779
948
  outline: $outline-dark;
780
949
  }
781
950
  }