|
170 | 170 | /// Generates CSS variables for a given palette. |
171 | 171 | /// @access private |
172 | 172 | /// @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. |
173 | 174 | /// |
174 | 175 | /// @example scss Generate css variables for the `$default-palette`. |
175 | 176 | /// @include css-vars-from-palette($default-palette); |
176 | 177 | /// |
177 | | -@mixin css-vars-from-palette($palette) { |
| 178 | +@mixin css-vars-from-palette($palette, $contrast: false) { |
178 | 179 | @each $palette-name, $sub-palette in $palette { |
179 | 180 | @each $variant, $color in $sub-palette { |
| 181 | + @if($contrast) { |
| 182 | + $color: text-contrast($color); |
| 183 | + } |
| 184 | + |
180 | 185 | @if type-of($color) != 'map' { |
181 | | - --igx-#{$palette-name}-#{$variant}: #{$color}; |
| 186 | + --igx-#{$palette-name}-#{$variant}#{if($contrast, -contrast, null)}: #{$color}; |
182 | 187 | } |
183 | 188 | } |
184 | 189 | } |
|
187 | 192 | /// Generates CSS variables for a given palette. |
188 | 193 | /// @access public |
189 | 194 | /// @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. |
190 | 196 | /// |
191 | 197 | /// @example scss Generate css variables for the `$default-palette`. |
192 | 198 | /// @include css-vars-from-palette($default-palette); |
193 | 199 | /// |
194 | 200 | /// @requires {mixin} css-vars-from-palette |
195 | | -@mixin igx-palette-vars($palette) { |
| 201 | +@mixin igx-palette-vars($palette, $contrast: false) { |
196 | 202 | $scope: if(is-root(), ':root', '&'); |
197 | 203 |
|
198 | 204 | #{$scope} { |
199 | 205 | @include css-vars-from-palette($palette); |
| 206 | + |
| 207 | + @if($contrast) { |
| 208 | + @include css-vars-from-palette($palette, $contrast: true); |
| 209 | + } |
200 | 210 | } |
201 | 211 | } |
202 | 212 |
|
|
0 commit comments