Skip to content

Commit af1e172

Browse files
committed
fix: make material overrides work independently of theme selector
1 parent a5b388f commit af1e172

File tree

2 files changed

+47
-95
lines changed

2 files changed

+47
-95
lines changed

projects/material-css-vars/src/lib/_mat-lib-overwrites.scss

Lines changed: 44 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -29,25 +29,19 @@
2929
.mat-mdc-fab,
3030
.mat-mdc-mini-fab {
3131
&.mat-primary {
32-
@include public-util.mat-css-light-dark-theme-global() {
33-
--mdc-fab-container-color: #{$primary};
34-
--mdc-fab-icon-color: #{$primary-contrast};
35-
--mat-mdc-fab-color: #{$primary-contrast};
36-
}
32+
--mdc-fab-container-color: #{$primary};
33+
--mdc-fab-icon-color: #{$primary-contrast};
34+
--mat-mdc-fab-color: #{$primary-contrast};
3735
}
3836
&.mat-accent {
39-
@include public-util.mat-css-light-dark-theme-global() {
40-
--mdc-fab-container-color: #{$accent};
41-
--mdc-fab-icon-color: #{$accent-contrast};
42-
--mat-mdc-fab-color: #{$accent-contrast};
43-
}
37+
--mdc-fab-container-color: #{$accent};
38+
--mdc-fab-icon-color: #{$accent-contrast};
39+
--mat-mdc-fab-color: #{$accent-contrast};
4440
}
4541
&.mat-warn {
46-
@include public-util.mat-css-light-dark-theme-global() {
47-
--mdc-fab-container-color: #{$warn};
48-
--mdc-fab-icon-color: #{$warn-contrast};
49-
--mat-mdc-fab-color: #{$warn-contrast};
50-
}
42+
--mdc-fab-container-color: #{$warn};
43+
--mdc-fab-icon-color: #{$warn-contrast};
44+
--mat-mdc-fab-color: #{$warn-contrast};
5145
}
5246
}
5347
}
@@ -64,41 +58,29 @@
6458
.mat-mdc-outlined-button,
6559
.mat-mdc-icon-button {
6660
&.mat-primary {
67-
@include public-util.mat-css-light-dark-theme-global() {
68-
--mat-mdc-button-ripple-color: #{public-util.mat-css-color(500, 0.1, "primary")};
69-
}
61+
--mat-mdc-button-ripple-color: #{public-util.mat-css-color(500, 0.1, "primary")};
7062
}
7163
&.mat-accent {
72-
@include public-util.mat-css-light-dark-theme-global() {
73-
--mat-mdc-button-ripple-color: #{public-util.mat-css-color(500, 0.1, "accent")};
74-
}
64+
--mat-mdc-button-ripple-color: #{public-util.mat-css-color(500, 0.1, "accent")};
7565
}
7666
&.mat-warn {
77-
@include public-util.mat-css-light-dark-theme-global() {
78-
--mat-mdc-button-ripple-color: #{public-util.mat-css-color(500, 0.1, "warn")};
79-
}
67+
--mat-mdc-button-ripple-color: #{public-util.mat-css-color(500, 0.1, "warn")};
8068
}
8169
}
8270
.mat-mdc-unelevated-button:not(:disabled),
8371
.mat-mdc-unelevated-button,
8472
.mat-mdc-raised-button {
8573
&.mat-primary {
86-
@include public-util.mat-css-light-dark-theme-global() {
87-
--mdc-filled-button-label-text-color: #{$color-primary};
88-
--mdc-protected-button-label-text-color: #{$color-primary};
89-
}
74+
--mdc-filled-button-label-text-color: #{$color-primary};
75+
--mdc-protected-button-label-text-color: #{$color-primary};
9076
}
9177
&.mat-accent {
92-
@include public-util.mat-css-light-dark-theme-global() {
93-
--mdc-filled-button-label-text-color: #{$color-accent};
94-
--mdc-protected-button-label-text-color: #{$color-accent};
95-
}
78+
--mdc-filled-button-label-text-color: #{$color-accent};
79+
--mdc-protected-button-label-text-color: #{$color-accent};
9680
}
9781
&.mat-warn {
98-
@include public-util.mat-css-light-dark-theme-global() {
99-
--mdc-filled-button-label-text-color: #{$color-warn};
100-
--mdc-protected-button-label-text-color: #{$color-warn};
101-
}
82+
--mdc-filled-button-label-text-color: #{$color-warn};
83+
--mdc-protected-button-label-text-color: #{$color-warn};
10284
}
10385
}
10486
}
@@ -110,23 +92,17 @@
11092
.mat-mdc-form-field {
11193
&.mat-primary {
11294
.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
113-
@include public-util.mat-css-light-dark-theme-global() {
114-
color: public-util.mat-css-color-primary(500, 0.87);
115-
}
95+
color: public-util.mat-css-color-primary(500, 0.87);
11696
}
11797
}
11898
&.mat-accent {
11999
.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
120-
@include public-util.mat-css-light-dark-theme-global() {
121-
color: public-util.mat-css-color-accent(500, 0.87);
122-
}
100+
color: public-util.mat-css-color-accent(500, 0.87);
123101
}
124102
}
125103
&.mat-warn {
126104
.mdc-text-field--focused:not(.mdc-text-field--disabled) .mdc-floating-label {
127-
@include public-util.mat-css-light-dark-theme-global() {
128-
color: public-util.mat-css-color-warn(500, 0.87);
129-
}
105+
color: public-util.mat-css-color-warn(500, 0.87);
130106
}
131107
}
132108
}
@@ -152,26 +128,20 @@
152128
}
153129
}
154130
&.mat-primary {
155-
@include public-util.mat-css-light-dark-theme-global() {
156-
--mdc-switch-selected-icon-color: #{$color-primary};
157-
--mdc-switch-disabled-selected-icon-color: #{$color-primary};
158-
--mdc-switch-disabled-unselected-icon-color: #{$color-primary};
159-
}
131+
--mdc-switch-selected-icon-color: #{$color-primary};
132+
--mdc-switch-disabled-selected-icon-color: #{$color-primary};
133+
--mdc-switch-disabled-unselected-icon-color: #{$color-primary};
160134
}
161135
&.mat-accent {
162-
@include public-util.mat-css-light-dark-theme-global() {
163-
--mdc-switch-selected-icon-color: #{$color-accent};
164-
--mdc-switch-disabled-selected-icon-color: #{$color-accent};
165-
--mdc-switch-disabled-unselected-icon-color: #{$color-accent};
166-
}
136+
--mdc-switch-selected-icon-color: #{$color-accent};
137+
--mdc-switch-disabled-selected-icon-color: #{$color-accent};
138+
--mdc-switch-disabled-unselected-icon-color: #{$color-accent};
167139
}
168140
&.mat-warn {
169-
@include public-util.mat-css-light-dark-theme-global() {
170-
--mdc-switch-selected-icon-color: #{$color-warn};
171-
--mdc-switch-disabled-selected-icon-color: #{$color-warn};
172-
--mdc-switch-disabled-unselected-icon-color: #{$color-warn};
173-
--mdc-switch-unselected-icon-color: #{$color-warn};
174-
}
141+
--mdc-switch-selected-icon-color: #{$color-warn};
142+
--mdc-switch-disabled-selected-icon-color: #{$color-warn};
143+
--mdc-switch-disabled-unselected-icon-color: #{$color-warn};
144+
--mdc-switch-unselected-icon-color: #{$color-warn};
175145
}
176146
}
177147
}
@@ -186,19 +156,13 @@
186156

187157
.mat-mdc-checkbox {
188158
&.mat-primary {
189-
@include public-util.mat-css-light-dark-theme-global() {
190-
--mdc-checkbox-selected-checkmark-color: #{$color-primary};
191-
}
159+
--mdc-checkbox-selected-checkmark-color: #{$color-primary};
192160
}
193161
&.mat-accent {
194-
@include public-util.mat-css-light-dark-theme-global() {
195-
--mdc-checkbox-selected-checkmark-color: #{$color-accent};
196-
}
162+
--mdc-checkbox-selected-checkmark-color: #{$color-accent};
197163
}
198164
&.mat-warn {
199-
@include public-util.mat-css-light-dark-theme-global() {
200-
--mdc-checkbox-selected-checkmark-color: #{$color-warn};
201-
}
165+
--mdc-checkbox-selected-checkmark-color: #{$color-warn};
202166
}
203167
}
204168
}
@@ -222,9 +186,7 @@
222186

223187
@mixin _mat-date-picker-color-overwrites($palette) {
224188
.mat-calendar-body-in-range::before {
225-
@include public-util.mat-css-light-dark-theme-global() {
226-
background: public-util.mat-css-color(500, 0.2, $palette);
227-
}
189+
background: public-util.mat-css-color(500, 0.2, $palette);
228190
}
229191
.mat-calendar-body-cell:not(.mat-calendar-body-disabled).mat-calendar-body-active > .mat-calendar-body-today {
230192
color: public-util.mat-css-color(500, null, $palette, true);
@@ -241,19 +203,13 @@
241203
@mixin _mat-mdc-progress-bar-overwrites {
242204
.mat-mdc-progress-bar {
243205
&.mat-primary .mdc-linear-progress__buffer-bar {
244-
@include public-util.mat-css-light-dark-theme-global() {
245-
background-color: public-util.mat-css-color(500, 0.25, "primary");
246-
}
206+
background-color: public-util.mat-css-color(500, 0.25, "primary");
247207
}
248208
&.mat-accent .mdc-linear-progress__buffer-bar {
249-
@include public-util.mat-css-light-dark-theme-global() {
250-
background-color: public-util.mat-css-color(500, 0.25, "accent");
251-
}
209+
background-color: public-util.mat-css-color(500, 0.25, "accent");
252210
}
253211
&.mat-warn .mdc-linear-progress__buffer-bar {
254-
@include public-util.mat-css-light-dark-theme-global() {
255-
background-color: public-util.mat-css-color(500, 0.25, "warn");
256-
}
212+
background-color: public-util.mat-css-color(500, 0.25, "warn");
257213
}
258214
}
259215
}
@@ -264,22 +220,16 @@
264220
@mixin _mat-mdc-slider-overwrites() {
265221
.mat-mdc-slider {
266222
&.mat-primary {
267-
@include public-util.mat-css-light-dark-theme-global() {
268-
--mat-mdc-slider-hover-ripple-color: #{public-util.mat-css-color(500, 0.05, "primary")};
269-
--mat-mdc-slider-focus-ripple-color: #{public-util.mat-css-color(500, 0.2, "primary")};
270-
}
223+
--mat-mdc-slider-hover-ripple-color: #{public-util.mat-css-color(500, 0.05, "primary")};
224+
--mat-mdc-slider-focus-ripple-color: #{public-util.mat-css-color(500, 0.2, "primary")};
271225
}
272226
&.mat-accent {
273-
@include public-util.mat-css-light-dark-theme-global() {
274-
--mat-mdc-slider-hover-ripple-color: #{public-util.mat-css-color(500, 0.05, "accent")};
275-
--mat-mdc-slider-focus-ripple-color: #{public-util.mat-css-color(500, 0.2, "accent")};
276-
}
227+
--mat-mdc-slider-hover-ripple-color: #{public-util.mat-css-color(500, 0.05, "accent")};
228+
--mat-mdc-slider-focus-ripple-color: #{public-util.mat-css-color(500, 0.2, "accent")};
277229
}
278230
&.mat-warn {
279-
@include public-util.mat-css-light-dark-theme-global() {
280-
--mat-mdc-slider-hover-ripple-color: #{public-util.mat-css-color(500, 0.05, "warn")};
281-
--mat-mdc-slider-focus-ripple-color: #{public-util.mat-css-color(500, 0.2, "warn")};
282-
}
231+
--mat-mdc-slider-hover-ripple-color: #{public-util.mat-css-color(500, 0.05, "warn")};
232+
--mat-mdc-slider-focus-ripple-color: #{public-util.mat-css-color(500, 0.2, "warn")};
283233
}
284234
}
285235
}

projects/material-css-vars/src/lib/material-css-vars.service.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,9 @@ export class MaterialCssVarsService {
5555
};
5656
this.isAutoContrast = this.cfg.isAutoContrast;
5757

58-
this.setDarkTheme(this.cfg.isDarkTheme ?? false);
58+
if (this.cfg.isDarkTheme) {
59+
this.setDarkTheme(this.cfg.isDarkTheme);
60+
}
5961
if (this.cfg.primary) {
6062
this.setPrimaryColor(this.cfg.primary);
6163
}

0 commit comments

Comments
 (0)