@ihk-gfi/lux-components-theme 19.2.0 → 21.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 (122) hide show
  1. package/README.md +123 -174
  2. package/package.json +17 -10
  3. package/prebuilt-themes/luxtheme-authentic-min.css +1 -1
  4. package/prebuilt-themes/luxtheme-authentic-min.css.map +1 -1
  5. package/prebuilt-themes/luxtheme-authentic.css +9469 -11429
  6. package/prebuilt-themes/luxtheme-authentic.css.map +1 -1
  7. package/prebuilt-themes/luxtheme-green-min.css +1 -1
  8. package/prebuilt-themes/luxtheme-green-min.css.map +1 -1
  9. package/prebuilt-themes/luxtheme-green.css +9411 -11645
  10. package/prebuilt-themes/luxtheme-green.css.map +1 -1
  11. package/src/base-templates/common/_luxbreakpoints.scss +96 -0
  12. package/src/{base → base-templates/common}/_luxelevations.scss +1 -1
  13. package/src/base-templates/common/_luxfocus.scss +84 -0
  14. package/src/{base → base-templates/common}/_luxlayout.scss +0 -1
  15. package/src/base-templates/common/_luxstyles.scss +510 -0
  16. package/src/base-templates/components/_luxAccordion.scss +137 -0
  17. package/src/base-templates/components/_luxAppContent.scss +4 -0
  18. package/src/{base → base-templates}/components/_luxAppFooter.scss +2 -6
  19. package/src/{base → base-templates}/components/_luxAppHeader.scss +66 -76
  20. package/src/base-templates/components/_luxAppHeaderAc.scss +147 -0
  21. package/src/base-templates/components/_luxAppHeaderAcSessionTimer.scss +95 -0
  22. package/src/base-templates/components/_luxAutocomplete.scss +24 -0
  23. package/src/base-templates/components/_luxBadge.scss +40 -0
  24. package/src/base-templates/components/_luxBadgeNotification.scss +53 -0
  25. package/src/{base → base-templates}/components/_luxBreadcrumb.scss +5 -8
  26. package/src/base-templates/components/_luxButton.scss +107 -0
  27. package/src/base-templates/components/_luxButtonFlat.scss +53 -0
  28. package/src/base-templates/components/_luxButtonRaised.scss +80 -0
  29. package/src/base-templates/components/_luxButtonRounded.scss +83 -0
  30. package/src/base-templates/components/_luxButtonRoundedStroked.scss +76 -0
  31. package/src/base-templates/components/_luxButtonSpinner.scss +90 -0
  32. package/src/base-templates/components/_luxButtonStroked.scss +45 -0
  33. package/src/base-templates/components/_luxCard.scss +133 -0
  34. package/src/base-templates/components/_luxCheckbox.scss +11 -0
  35. package/src/{base → base-templates}/components/_luxCheckboxContainerAc.scss +6 -4
  36. package/src/base-templates/components/_luxChips.scss +123 -0
  37. package/src/base-templates/components/_luxCore.scss +26 -0
  38. package/src/base-templates/components/_luxDatepicker.scss +65 -0
  39. package/src/base-templates/components/_luxDatetimepicker.scss +17 -0
  40. package/src/{base → base-templates}/components/_luxDialog.scss +22 -16
  41. package/src/base-templates/components/_luxDivider.scss +10 -0
  42. package/src/{base → base-templates}/components/_luxErrorPage.scss +0 -4
  43. package/src/base-templates/components/_luxFileList.scss +55 -0
  44. package/src/{base → base-templates}/components/_luxFilePreview.scss +1 -4
  45. package/src/base-templates/components/_luxFileProgress.scss +13 -0
  46. package/src/base-templates/components/_luxFileUpload.scss +271 -0
  47. package/src/base-templates/components/_luxFileinput.scss +27 -0
  48. package/src/{base → base-templates}/components/_luxFilter.scss +31 -5
  49. package/src/base-templates/components/_luxFormControlWrapper.scss +276 -0
  50. package/src/base-templates/components/_luxHtml.scss +8 -0
  51. package/src/base-templates/components/_luxIcon.scss +53 -0
  52. package/src/base-templates/components/_luxInput.scss +30 -0
  53. package/src/{base → base-templates}/components/_luxLinkPlain.scss +12 -13
  54. package/src/{base → base-templates}/components/_luxList.scss +5 -8
  55. package/src/base-templates/components/_luxLookupAutocomplete.scss +6 -0
  56. package/src/base-templates/components/_luxLookupCombobox.scss +30 -0
  57. package/src/{base → base-templates}/components/_luxMasterDetailAc.scss +17 -34
  58. package/src/base-templates/components/_luxMenu.scss +270 -0
  59. package/src/base-templates/components/_luxMessagebox.scss +119 -0
  60. package/src/base-templates/components/_luxPopup.scss +54 -0
  61. package/src/base-templates/components/_luxProgressBar.scss +103 -0
  62. package/src/base-templates/components/_luxProgressSpinner.scss +94 -0
  63. package/src/base-templates/components/_luxRadioButton.scss +32 -0
  64. package/src/base-templates/components/_luxSelect.scss +42 -0
  65. package/src/base-templates/components/_luxSideNav.scss +93 -0
  66. package/src/base-templates/components/_luxSlider.scss +17 -0
  67. package/src/base-templates/components/_luxSnackbar.scss +41 -0
  68. package/src/{base → base-templates}/components/_luxStepper.scss +33 -129
  69. package/src/base-templates/components/_luxStepperLarge.scss +435 -0
  70. package/src/{base → base-templates}/components/_luxTable.scss +29 -63
  71. package/src/{base → base-templates}/components/_luxTabs.scss +32 -67
  72. package/src/base-templates/components/_luxTextarea.scss +16 -0
  73. package/src/base-templates/components/_luxTextbox.scss +83 -0
  74. package/src/{base → base-templates}/components/_luxTile.scss +12 -17
  75. package/src/base-templates/components/_luxTileAc.scss +71 -0
  76. package/src/base-templates/components/_luxToggle.scss +19 -0
  77. package/src/base-templates/components/_luxToolTip.scss +8 -0
  78. package/src/{base → base-templates}/components/_luxTourHint.scss +11 -7
  79. package/src/theme-authentic/_mat3Theme.scss +135 -0
  80. package/src/theme-authentic/_palettes.scss +183 -0
  81. package/src/theme-authentic/_variables.scss +486 -0
  82. package/src/theme-authentic/_variablesPreferContrast.scss +76 -0
  83. package/src/theme-authentic/lux-authentic.scss +69 -0
  84. package/src/theme-green/_mat3Theme.scss +134 -0
  85. package/src/theme-green/_palettes.scss +182 -0
  86. package/src/theme-green/_variables.scss +487 -0
  87. package/src/theme-green/_variablesPreferContrast.scss +76 -0
  88. package/src/theme-green/lux-green.scss +68 -0
  89. package/src/authentic/_custom.scss +0 -609
  90. package/src/authentic/_custombutton.scss +0 -143
  91. package/src/authentic/_luxcommon.scss +0 -138
  92. package/src/authentic/_luxpalette.scss +0 -230
  93. package/src/authentic/luxtheme.scss +0 -113
  94. package/src/base/_luxbreakpoints.scss +0 -94
  95. package/src/base/_luxcommon.scss +0 -104
  96. package/src/base/_luxcomponents.scss +0 -843
  97. package/src/base/_luxfocus.scss +0 -429
  98. package/src/base/_luxpalette.scss +0 -10
  99. package/src/base/_luxstyles.scss +0 -723
  100. package/src/base/_luxtheme.scss +0 -23
  101. package/src/base/components/_luxAppHeaderAc.scss +0 -214
  102. package/src/base/components/_luxBadge.scss +0 -62
  103. package/src/base/components/_luxButton.scss +0 -283
  104. package/src/base/components/_luxCard.scss +0 -179
  105. package/src/base/components/_luxFormControlWrapper.scss +0 -205
  106. package/src/base/components/_luxFormControlsAuthentic.scss +0 -709
  107. package/src/base/components/_luxIcon.scss +0 -41
  108. package/src/base/components/_luxMenu.scss +0 -314
  109. package/src/base/components/_luxMessagebox.scss +0 -156
  110. package/src/base/components/_luxProgressBar.scss +0 -5
  111. package/src/base/components/_luxProgressSpinner.scss +0 -13
  112. package/src/base/components/_luxSnackbar.scss +0 -77
  113. package/src/base/components/_luxTextbox.scss +0 -91
  114. package/src/base/components/_luxTileAc.scss +0 -87
  115. package/src/base/components/_luxToolTip.scss +0 -5
  116. package/src/green/_custom.scss +0 -1125
  117. package/src/green/_luxcommon.scss +0 -117
  118. package/src/green/_luxpalette.scss +0 -231
  119. package/src/green/luxtheme.scss +0 -117
  120. package/src/public/global.scss +0 -113
  121. /package/src/{base → base-templates/common}/_luxSvgIcons.scss +0 -0
  122. /package/src/{base → base-templates/common}/_luxfonts.scss +0 -0
@@ -1,179 +0,0 @@
1
- @use "../luxcommon";
2
- @use "../luxpalette";
3
- @use "../luxfocus";
4
- @use "../luxelevations";
5
- @use "sass:map";
6
-
7
- .mat-mdc-card-outlined {
8
- --mdc-outlined-card-container-shape: #{luxcommon.$app-border-radius};
9
- }
10
-
11
- lux-card {
12
- // Falls die lux-card in einem lux-grid verwendet wird und alle Cards einer Reihe dieselbe Höhe erhalten sollen
13
- // müssen mat-card und mat-card-content entsprechend angepasst werden.
14
- // Diese Anforderung stammt aus dem Verhalten der ehemaligen Lux-Layout-Card-Row.
15
- &.lux-flex {
16
- mat-card,
17
- mat-card-content {
18
- flex: 1 1 auto;
19
- }
20
- }
21
-
22
- // Hier wird das Padding der LUX-Card gesetzt.
23
- mat-card {
24
- padding: 16px;
25
-
26
- .mat-mdc-card-content {
27
- padding: 0;
28
-
29
- &:first-child {
30
- padding: 0;
31
- }
32
-
33
- .lux-card-content {
34
- padding: 0;
35
-
36
- &.lux-card-with-content-and-header {
37
- padding-top: 16px;
38
- }
39
- }
40
- }
41
- }
42
-
43
- // Umstylen der Mat-Card
44
- .mat-mdc-card.lux-card {
45
- border: 1px solid luxcommon.$app-border-color;
46
- border-radius: luxcommon.$app-border-radius;
47
- background-color: #fff;
48
- display: flex;
49
- box-sizing: border-box;
50
-
51
- &:not([class*="mat-elevation-z"]) {
52
- @include luxelevations.lux-elevation-z0;
53
- }
54
-
55
- .mat-mdc-card-content {
56
- font-size: 1rem;
57
- }
58
- }
59
-
60
- .lux-card-content-container {
61
- overflow-x: hidden;
62
- padding: luxcommon.$form-control-buffer;
63
- font-family: luxcommon.$app-font-family;
64
- display: flex;
65
- flex: 1 1 100%;
66
- flex-direction: column;
67
-
68
- > * {
69
- margin-bottom: 0;
70
- }
71
- }
72
-
73
- .lux-card-header {
74
- padding: 0;
75
- display: grid;
76
- grid-template-columns: auto 1fr auto;
77
-
78
- h1,
79
- h2,
80
- h3,
81
- h4,
82
- h5,
83
- h6 {
84
- font-size: 1.5rem;
85
- font-weight: 500;
86
- color: luxcommon.$dark-primary-text;
87
- }
88
-
89
- .lux-card-icon-container,
90
- .lux-card-info-container lux-card-info {
91
- color: map.get(luxpalette.$lux-palette_primary, 500);
92
- lux-icon {
93
- mat-icon {
94
- padding: 0 !important;
95
- height: 29px;
96
- width: 29px;
97
- }
98
- }
99
- }
100
- .lux-card-icon-container {
101
- margin-right: 10px;
102
- }
103
- .lux-card-info-container {
104
- margin-left: 10px;
105
- grid-column-start: 3;
106
-
107
- &.lux-title.lux-subtitle {
108
- grid-row: 1 / span 2;
109
- }
110
-
111
- &.lux-title:not(.lux-subtitle) {
112
- grid-row: 1;
113
- }
114
-
115
- &.lux-subtitle:not(.lux-title) {
116
- grid-row: 2;
117
- }
118
- }
119
-
120
- .lux-card-title,
121
- .lux-card-subtitle {
122
- grid-column-start: 2;
123
- margin: 0px;
124
- padding: 0px;
125
- }
126
- .lux-card-subtitle {
127
- font-size: 1rem;
128
- color: luxcommon.$dark-secondary-text;
129
- font-weight: normal;
130
- font-family: luxcommon.$app-font-family;
131
- }
132
- }
133
-
134
- .lux-card-content-expanded {
135
- background: luxcommon.$app-data-bg;
136
- }
137
-
138
- mat-card-actions {
139
- &.mat-mdc-card-actions {
140
- justify-content: flex-end;
141
- min-height: 36px;
142
- padding-left: 0;
143
- padding-right: 0;
144
- }
145
-
146
- &.lux-card-actions {
147
- margin-right: 0;
148
- margin-left: 0;
149
- }
150
- }
151
-
152
- /*
153
- Setze den Margin (links und rechts) auf 1px, damit sich die LUX-CARDS, welche sich innerhalb eines Tabs befinden,
154
- korrekt an der Y-Achse (Kartentitel, Tab und Inhalt) ausrichten. 1px damit der Schatten bzw. die Begrenzung links
155
- sichtbar bleibt. Bei 0px würde der Schatten bzw. die Begrenzung links fehlen.
156
- */
157
- .lux-tab-content .lux-card {
158
- margin-right: 1px;
159
- margin-left: 1px;
160
- }
161
-
162
- // HOVER / FOCUS
163
-
164
- mat-card {
165
- &[class~="lux-cursor"]:hover {
166
- background-image: luxcommon.$app-gradient-reverse;
167
- background-color: #ffffff;
168
- border-color: luxcommon.$dark-primary-text;
169
- .lux-card-content-expanded {
170
- background-image: luxcommon.$app-gradient-reverse;
171
- background-color: #ffffff;
172
- border-color: luxcommon.$dark-primary-text;
173
- }
174
- }
175
- &[class~="lux-cursor"]:focus-visible {
176
- @include luxfocus.focus-dark-mixin-inline;
177
- }
178
- }
179
- }
@@ -1,205 +0,0 @@
1
- @use "sass:map";
2
- @use "../luxfocus";
3
- @use "../luxstyles";
4
- @use "../luxcommon";
5
- @use "../luxpalette";
6
-
7
- @mixin crop {
8
- overflow: hidden;
9
- white-space: nowrap;
10
- text-overflow: ellipsis;
11
- }
12
-
13
- @mixin form-label {
14
- min-height: 1.2em;
15
- font-size: 0.75em;
16
- line-height: 1.2em;
17
- color: luxcommon.$dark-secondary-text;
18
- }
19
-
20
- lux-form-control-wrapper {
21
- width: 100%;
22
-
23
- .lux-form-control-wrapper {
24
- display: flex;
25
- box-sizing: border-box;
26
- flex-direction: column;
27
- font-size: luxcommon.$form-control-font-size;
28
- color: luxcommon.$dark-primary-text;
29
-
30
- .lux-form-control-label-authentic {
31
- @include form-label;
32
- color: map.get(luxpalette.$lux-palette_primary, 500);
33
- margin: 0 calc(0.5em + 1px) 0.25em calc(0.5em + 1px);
34
- > * {
35
- @include crop;
36
- }
37
- &.lux-label-long-format {
38
- > * {
39
- white-space: normal;
40
- text-overflow: unset;
41
- word-wrap: break-word;
42
- }
43
- }
44
- }
45
-
46
- .lux-form-control-container-authentic {
47
- flex: 1 1 auto;
48
- box-sizing: border-box;
49
- padding: 0.75em 0.5em;
50
- font-size: luxcommon.$form-control-font-size;
51
- color: luxcommon.$dark-primary-text;
52
- background-color: #fff;
53
- line-height: 1.5em;
54
- border: 1px solid luxcommon.$form-border-color;
55
- border-radius: 4px;
56
- &.lux-no-input-row {
57
- // lux-toggel-ac, lux-checkbox-ac, lux-slider-ac, lux-radio-ac werden auf der Baseline ausgerichtet
58
- // haben aber nicht den Rahmen, den die Input-Elemente haben
59
- background-color: transparent;
60
- border: none;
61
- padding: 0.75em 0em;
62
- }
63
- }
64
-
65
- .lux-form-control-misc-authentic {
66
- display: flex;
67
- place-content: flex-start space-between;
68
- align-items: flex-start;
69
- box-sizing: border-box;
70
- margin: 0.25em calc(0.5em + 1px) 0 calc(0.5em + 1px);
71
- @include form-label;
72
- word-wrap: break-word;
73
-
74
- .lux-form-control-error-container {
75
- display: flex;
76
- box-sizing: border-box;
77
- }
78
- .lux-form-control-character-counter-authentic {
79
- min-width: 40px;
80
- margin-left: 2px;
81
- color: luxcommon.$dark-secondary-text !important;
82
- text-align: end;
83
-
84
- &:only-child {
85
- width: 100%;
86
- }
87
- }
88
- }
89
-
90
- // zusätzlicher Container für Elemente, die einen input-prefix/input-suffix haben
91
- // aktuell: lux-autocomplete-ac und lux-input-ac
92
- .lux-input-row-authentic {
93
- display: flex;
94
- flex-direction: row;
95
- box-sizing: border-box;
96
- place-content: center flex-start;
97
- align-items: center;
98
- font-size: luxcommon.$form-control-font-size;
99
- min-height: 1.5em;
100
-
101
- .lux-input-prefix-container,
102
- .lux-input-suffix-container {
103
- width: auto;
104
- white-space: nowrap;
105
- display: inline-block;
106
- flex: 1 1 auto;
107
- max-height: 1.5em;
108
- align-items: center;
109
-
110
- lux-input-ac-suffix,
111
- lux-input-ac-prefix {
112
- display: inline-flex;
113
- }
114
- lux-icon {
115
- mat-icon.lux-icon {
116
- box-sizing: border-box;
117
- padding: 0px !important;
118
- }
119
- }
120
- }
121
- }
122
-
123
- &.lux-dense-authentic {
124
- margin: 0;
125
- .lux-form-control-container-authentic {
126
- padding: 0.375em 0.5em;
127
- &.lux-no-input-row {
128
- padding: 0.375em 0em;
129
- }
130
- }
131
- }
132
-
133
- // Definitionen der einzelnen States der Form-Controls
134
- // HOVER
135
- &:hover:not(.lux-form-control-disabled-authentic):not(.lux-focused-authentic):not(.lux-form-control-error-authentic):not(
136
- .lux-form-control-readonly-authentic
137
- ) {
138
- .lux-form-control-container-authentic:not(.lux-no-input-row) {
139
- border-color: luxcommon.$dark-primary-text;
140
- }
141
- }
142
- // FOCUS
143
- &.lux-focused-authentic:not(.lux-form-control-readonly-authentic) {
144
- .lux-form-control-label-authentic > * {
145
- color: map.get(luxpalette.$lux-palette_primary, 400);
146
- }
147
- .lux-form-control-container-authentic:not(.lux-no-input-row) {
148
- border-color: map.get(luxpalette.$lux-palette_primary, 500);
149
- box-shadow: 0 0 0 1px map.get(luxpalette.$lux-palette_primary, 500) inset;
150
- }
151
- }
152
- // ERROR
153
- &.lux-form-control-error-authentic:not(.lux-form-control-disabled-authentic) {
154
- .lux-form-control-container-authentic:not(.lux-no-input-row) {
155
- border-color: map.get(luxpalette.$lux-palette_warn, 500);
156
- box-shadow: 0 0 0 1px map.get(luxpalette.$lux-palette_warn, 500) inset;
157
- }
158
- .lux-form-control-misc-authentic {
159
- .lux-alert-icon {
160
- color: map-get(luxpalette.$lux-palette_warn, 900);
161
- mat-icon.mat-icon {
162
- box-sizing: border-box;
163
- }
164
- }
165
- .mat-mdc-form-field-error {
166
- background-color: luxcommon.$form-error-msg-background;
167
- border-radius: 4px;
168
- padding-right: 2px;
169
- color: map-get(luxpalette.$lux-palette_warn, 900) !important;
170
- box-shadow:
171
- -18px 0px 0 0 luxcommon.$form-error-msg-background,
172
- -18px -1px 0 0 luxcommon.$form-error-msg-background,
173
- 0 -1px 0 0 luxcommon.$form-error-msg-background;
174
- }
175
- }
176
- }
177
- // Disabled
178
- &.lux-form-control-disabled-authentic {
179
- .lux-form-control-container-authentic,
180
- .lux-form-control-label-authentic,
181
- .lux-form-control-misc-authentic > * {
182
- color: luxcommon.$dark-disabled-text;
183
- }
184
- }
185
- // READONLY
186
- &.lux-form-control-disabled-authentic {
187
- pointer-events: none;
188
- }
189
- }
190
-
191
- /* Change Autocomplete styles in Chrome*/
192
- input:-webkit-autofill,
193
- input:-webkit-autofill:hover,
194
- input:-webkit-autofill:focus,
195
- textarea:-webkit-autofill,
196
- textarea:-webkit-autofill:hover,
197
- textarea:-webkit-autofill:focus,
198
- select:-webkit-autofill,
199
- select:-webkit-autofill:hover,
200
- select:-webkit-autofill:focus {
201
- box-shadow: 0 0 0px 1000px var(--lux-theme-primary-50) inset;
202
- -webkit-box-shadow: 0 0 0px 1000px var(--lux-theme-primary-50) inset;
203
- transition: background-color 5000s ease-in-out 0s;
204
- }
205
- }