Skip to content

Commit 2b866c1

Browse files
authored
Merge pull request #6559 from IgniteUI/simeonoff/contrast-css-vars
feat(theme): generate css variables for contrast colors of a palette
2 parents 839f8f2 + 52c984e commit 2b866c1

File tree

1 file changed

+13
-3
lines changed
  • projects/igniteui-angular/src/lib/core/styles/base/utilities

1 file changed

+13
-3
lines changed

projects/igniteui-angular/src/lib/core/styles/base/utilities/_mixins.scss

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -170,15 +170,20 @@
170170
/// Generates CSS variables for a given palette.
171171
/// @access private
172172
/// @param {Map} $palette - The igx palette to use to generate css variables for.
173+
/// @param {Map} $contrast [false] - Specifies if contrast colors should be generated for each color in the palette.
173174
///
174175
/// @example scss Generate css variables for the `$default-palette`.
175176
/// @include css-vars-from-palette($default-palette);
176177
///
177-
@mixin css-vars-from-palette($palette) {
178+
@mixin css-vars-from-palette($palette, $contrast: false) {
178179
@each $palette-name, $sub-palette in $palette {
179180
@each $variant, $color in $sub-palette {
181+
@if($contrast) {
182+
$color: text-contrast($color);
183+
}
184+
180185
@if type-of($color) != 'map' {
181-
--igx-#{$palette-name}-#{$variant}: #{$color};
186+
--igx-#{$palette-name}-#{$variant}#{if($contrast, -contrast, null)}: #{$color};
182187
}
183188
}
184189
}
@@ -187,16 +192,21 @@
187192
/// Generates CSS variables for a given palette.
188193
/// @access public
189194
/// @param {Map} $palette - The igx palette to use to generate css variables for.
195+
/// @param {Map} $contrast [false] - Specifies if the mixin outputs contrast colors for each color in the palette.
190196
///
191197
/// @example scss Generate css variables for the `$default-palette`.
192198
/// @include css-vars-from-palette($default-palette);
193199
///
194200
/// @requires {mixin} css-vars-from-palette
195-
@mixin igx-palette-vars($palette) {
201+
@mixin igx-palette-vars($palette, $contrast: false) {
196202
$scope: if(is-root(), ':root', '&');
197203

198204
#{$scope} {
199205
@include css-vars-from-palette($palette);
206+
207+
@if($contrast) {
208+
@include css-vars-from-palette($palette, $contrast: true);
209+
}
200210
}
201211
}
202212

0 commit comments

Comments
 (0)